Я использую Google GWT и RPC. На стороне клиента находится класс SplitDatenhalter
. Это работает хорошо:
Vector <SplitDatenhalter> vec = new Vector<SplitDatenhalter>();
vec.add(new SplitDatenhalter("a", "b", "c","D"));
vec.add(new SplitDatenhalter("ab", "bc", "dc","Dee"));
Как я могу отправить это на сервер?
Обновление
У меня на стороне клиента класс SplitDatenhalter
. Смотри ниже,
public class SplitDatenhalter implements Serializable{
private static final long serialVersionUID = 1L;
String name ;
String vorname;
String nachname;
String email;
public SplitDatenhalter(String name, String vorname, String Nname, String Email) {
this.name = name;
this.vorname = vorname;
this.nachname = Nname;
this.email = Email;
}
public String getName() {
return name;
}
//others setter and getter Function
На стороне клиента есть MyService
:
public interface MyService extends RemoteService
{
public void myVector(Vector<SplitDatenhalter> vec);
}
Другой интерфейс:
public interface MyServiceAsync {
public void myVector(Vector < SplitDatenhalter > vec,
AsyncCallback < Void > callback);
}
Это сторона сервера:
public void myVector(Vector < SplitDatenhalter > vec)
{
// TODO Auto-generated method stub
System.out.println("vector");
for (int i = 0; i < vec.size(); i++) {
this.name = vec.get(i).getName();
this.name = vec.get(i).getVorname();
this.name = vec.get(i).getNachname();
this.name = vec.get(i).getEmail();
}
}
Эта часть кода со стороны клиента:
Vector<SplitDatenhalter> vect = new Vector<SplitDatenhalter>(); // TODO Auto-generated method stub
MyServiceAsync svc = (MyServiceAsync) GWT.create(MyService.class);
ServiceDefTarget endpoint = (ServiceDefTarget) svc;
// endpoint.setServiceEntryPoint("/myService");
// define a handler for what to do when the service returns a result
@SuppressWarnings("rawtypes")
AsyncCallback callback = new AsyncCallback()
{
@Override
public void onFailure(Throwable caught) {
// TODO Auto-generated method stub
System.out.println("Fehler");
}
//@Override
public void onSuccess(Object result) {
// TODO Auto-generated method stub
System.out.println(result.toString());
}
};
this.vect.add(new SplitDatenhalter(this.name, Vname, Nname, Email)); //this a part from Function
Мне нужна эта часть кода
public static MyServiceAsync getService()
{
MyServiceAsync svc = (MyServiceAsync) GWT.create(MyService.class);
ServiceDefTarget endpoint = (ServiceDefTarget) svc;
endpoint.setServiceEntryPoint("/myService");
return svc;
}
Последняя часть:
@ SuppressWarnings("unchecked")
public void vectorExe()
{
System.out.println("vectorExe befor");
getService().myVector(this.vect, callback);
}
После выполнения этой функции я получаю ошибку от onFailure(Throwable caught)
. Где я ошибся?