Hi, I'm trying to figure out GWT-RPC and having a bit of an issue
(details are below). I will say that I have had success with GWT-RPC
as long as I *was not* using any method parameters or return types
that were objects of my own creation. Is there something special that
needs to be done to register these objects (they are under the
"client" package)? Any help would be greatly appreciated. Thanks!
I have the following service interface (in com.test.ui.client):
@RemoteServiceRelativePath("test")
public interface TestService extends RemoteService {
String test(String someParam);
}
and the following async service interface
public interface TestServiceAsync {
void test(String someParam, AsyncCallback<String> callback);
}
and the following service implementation (in com.test.ui.server):
public class TestServiceImpl extends RemoteServiceServlet implements
TestService {
@Override
public String test(String someParam) {
return someParam + "-" + someParam;
}
}
these all reference the Test class (in com.test.ui.client.model.test):
public class Test implements Serializable {
private String someProperty;
public String getSomeProperty() {
return someProperty;
}
public void setSomeProperty(String someProperty) {
this.someProperty = someProperty;
}
}
My module code looks like this:
public void onModuleLoad() {
Object obj = GWT.create(TestService.class);
System.out.println("The class is: " +
obj.getClass().getName()); //
outputs "The class is: com.test.ui.client.TestService_Proxy"
TestService testService = GWT.create(TestService.class); //
here is
where I receive a ClassCastException
Test test = new Test();
test.setSomeProperty("bar");
String rtn = testService.test("foo");
System.out.println("The value is: " + rtn);
}
The problem I am having is that I am receiving a ClassCastException
with this stack trace:
[ERROR] Unable to load module entry point class
com.test.ui.client.Ib_web (see associated exception for details)
java.lang.ClassCastException: com.test.ui.client.TestService_Proxy
cannot be cast to com.test.ui.client.TestService
at com.test.ui.client.Ib_web.onModuleLoad(Ib_web.java:28)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:326)
at com.google.gwt.dev.shell.BrowserWidget.attachModuleSpace
(BrowserWidget.java:343)
at com.google.gwt.dev.shell.ie.BrowserWidgetIE6.access$300
(BrowserWidgetIE6.java:37)
at com.google.gwt.dev.shell.ie.BrowserWidgetIE6$External.gwtOnLoad
(BrowserWidgetIE6.java:77)
at com.google.gwt.dev.shell.ie.BrowserWidgetIE6$External.invoke
(BrowserWidgetIE6.java:161)
at com.google.gwt.dev.shell.ie.IDispatchImpl.Invoke
(IDispatchImpl.java:294)
at com.google.gwt.dev.shell.ie.IDispatchImpl.method6
(IDispatchImpl.java:194)
at org.eclipse.swt.internal.ole.win32.COMObject.callback6
(COMObject.java:117)
at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1925)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2966)
at com.google.gwt.dev.SwtHostedModeBase.processEvents
(SwtHostedModeBase.java:235)
at com.google.gwt.dev.HostedModeBase.pumpEventLoop
(HostedModeBase.java:558)
at com.google.gwt.dev.HostedModeBase.run(HostedModeBase.java:405)
at com.google.gwt.dev.HostedMode.main(HostedMode.java:232)
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Google Web Toolkit" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/Google-Web-Toolkit?hl=en
-~----------~----~----~----~------~----~------~--~---