首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >GWT RPC机制如何使用非void返回类型

GWT RPC机制如何使用非void返回类型
EN

Stack Overflow用户
提问于 2011-08-31 15:13:12
回答 4查看 2K关注 0票数 0

我有一个场景,需要指定Synchrnous函数的返回类型,代码如下:

代码语言:javascript
运行
复制
@RemoteServiceRelativePath("show_box")
public interface ShowBoxCommandService extends RemoteService{

 public ArrayList<String> showBox();

}

该方法在服务器上的实现为:

代码语言:javascript
运行
复制
public ArrayList<String> showBox() {

  ArrayList<String> box = new ArrayList<String>();
  Iterator<Box> boxes = BoxRegistry.getInstance().getBoxes();
  while (boxes.hasNext()) {
     box.add(boxes.next().toString());
  }
  return box;
}

我尝试在客户端以以下格式定义回调变量,以便调用该方法

代码语言:javascript
运行
复制
 AsyncCallback<Void> callback = new AsyncCallback<Void>() {
           public void onFailure(Throwable caught) {
              // TODO: Do something with errors.
              // console was not started properly
           }

           @Override
           public void onSuccess(Void result) {
              // TODO Auto-generated method stub
              // dialog saying that the console is started succesfully

           }
        };

使用aync接口代码更新:

代码语言:javascript
运行
复制
    public interface ShowBoxCommandServiceAsync {

   void showBox(AsyncCallback<ArrayList<String>> callback);

  }

但这会导致异步方法中的方法定义发生变化。

任何想法或线索都会有帮助。

谢谢,Bhavya

附言:如果这是重复的话,很抱歉。

EN

Stack Overflow用户

发布于 2011-08-31 15:18:01

哈?你的方法返回一个ArrayList,而你在你的调用中声明为空?

代码语言:javascript
运行
复制
Change <Void> to <ArrayList<String>>
票数 0
EN
查看全部 4 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7253703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档