在GWT-RPC中将ArrayList作为参数发送

时间:2009-12-18 01:57:02

标签: gwt arraylist rpc gwt-rpc

我尝试将一个ArrayList发送到GWT中的RPC服务但仍然失败。 这是我的代码片段

                greetingService.addNewQuestion(questionnaireKey, questionText, qcList, new AsyncCallback<Boolean>(){
                @Override
                public void onFailure(Throwable caught) {
                    Window.alert("Something went wrong!\n"+caught.getMessage());

                }
                @Override
                public void onSuccess(Boolean result) {
                    Window.alert("Question Added!");
                }

            });

QuestionChoice是一个没有方法的简单对象,qcList是QuestionChoice的一个ArrayList

public class QuestionChoice implements IsSerializable{
/**
 * 
 */
private static final long serialVersionUID = 5668640935838672293L;
public String text;
public boolean isCorrect;

public QuestionChoice(){

}
public QuestionChoice(String text, boolean isCorrect){
    this.text = text;
    this.isCorrect = isCorrect;
}

}

有没有人尝试在GWT-RPC中发送ArrayList作为参数? 如果您这样做,请尝试在此处发布您的示例代码。 谢谢。

2 个答案:

答案 0 :(得分:3)

是的,可以在GWT-RPC调用中发送ArrayList作为参数。在开发GWT-RPC代码时,很多时候在调用GWT-RPC中的请求时可能会遇到错误,这是由于GWT-RPC服务的更改可能与客户端编译的GWT-RPC不对应定义。要解决此问题,您必须在服务器端类或GWT-RPC服务定义(即GreetingService,GreetingServiceAsync和GreetingServiceImpl)中更改代码时重新启动开发服务器

答案 1 :(得分:1)

如果您正在使用GWT 1.5和Java 1.6,问题是@Override注释,您实际上并没有覆盖一个方法。摆脱注释,一切都应该好。