You could try:
ArrayList<String []> myService(...) {
....
ArrrayList<String []> myList = new ArrayList<String []>();
.....
return myList;
}
instead if I understand you correctly. The point is this: you have to
tell the GWT compiler what type of object is contained in the List you
are returning from the RPC service method. The compiler can determine
this from the signiture of RPC methods, in my example ArrayList<String
[]> myService(...). So in this case the compiler knows that an array
of String is expected and it will include String in the RPC "while
list" and prepare client side serialization/deserialization javascript
code for it.
If you have actually done this already then examine the the <md5-
hash>.gwt.rpc files in your compiled output. These will contain a list
of the classes that are allowed through the RPC services (the "white
list"). String should be missing from yours (otherwise you would not
get this exception). If this is the case then something is wrong with
your compilation process and you could try deleting all the compiled
output, recompile, and see if that fixes it. If not it's difficult to
say what the exact problem is. You might not be compiling what you
think you are compiling for example (wrong paths)
If in doubt post your RPC service interface and implementation code.
regards
gregor
On Dec 15, 5:48 am, prat <[email protected]> wrote:
> Hello gregor,
>
> Thanks alot for ur relay. but i dint understand the solution
> completly.
> am trying to return arraylist with "string array" objects in it . and
> i have implemented "IsSerializable" on client side but even thn its
> not working.
>
> On Dec 15, 12:10 am, gregor <[email protected]> wrote:
>
> > The problem is:
>
> > Caused by: com.google.gwt.user.client.rpc.SerializationException: Type
> > '[Ljava.lang.String;' was not included in the set of types which can
> > be serialized by this SerializationPolicy or its Class object could
> > not be loaded. For security purposes, this type will not be
> > serialized.
>
> > which probably indicates there is nothing in any of your RPC service
> > interface declarations that mentions String specifically, so it is not
> > included in the RPC "white list". Are you declaring the ArrayList like
> > this:
>
> > ArrayList<String> myService(...) {
> > ....
> > ArrrayList<String> myList = new ArrayList<String>();
> > .....
> > return myList;
>
> > }
>
> > If not then this will probably make the problem go away.
>
> > On Dec 14, 6:16 pm, prat <[email protected]> wrote:> Helllo,
>
> > > Am trying to return arraylist object fron server to client via RPC but
> > > am getting following error :
>
> > > [WARN] StandardContext[]Exception while dispatching incoming RPC call
> > > com.google.gwt.user.client.rpc.SerializationException:
> > > java.lang.reflect.InvocationTargetException
> > > at
> > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.serializeWithCustomSerializer
> > > (ServerSerializationStreamWriter.java:696)
> > > at
> > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.serializeImpl
> > > (ServerSerializationStreamWriter.java:659)
> > > at
> > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.serialize
> > > (ServerSerializationStreamWriter.java:593)
> > > at
> > > com.google.gwt.user.client.rpc.impl.AbstractSerializationStreamWriter.writeObject
> > > (AbstractSerializationStreamWriter.java:129)
> > > at
> > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter
> > > $ValueWriter$8.write(ServerSerializationStreamWriter.java:146)
> > > at
> > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.serializeValue
> > > (ServerSerializationStreamWriter.java:530)
> > > at com.google.gwt.user.server.rpc.RPC.encodeResponse(RPC.java:573)
> > > at com.google.gwt.user.server.rpc.RPC.encodeResponseForSuccess
> > > (RPC.java:441)
> > > at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse
> > > (RPC.java:529)
> > > at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall
> > > (RemoteServiceServlet.java:164)
> > > at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost
> > > (RemoteServiceServlet.java:86)
> > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
> > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> > > at com.google.gwt.dev.shell.GWTShellServlet.service
> > > (GWTShellServlet.java:289)
> > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> > > at
> > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
> > > (ApplicationFilterChain.java:237)
> > > at org.apache.catalina.core.ApplicationFilterChain.doFilter
> > > (ApplicationFilterChain.java:157)
> > > at org.apache.catalina.core.StandardWrapperValve.invoke
> > > (StandardWrapperValve.java:214)
> > > at org.apache.catalina.core.StandardValveContext.invokeNext
> > > (StandardValveContext.java:104)
> > > at org.apache.catalina.core.StandardPipeline.invoke
> > > (StandardPipeline.java:520)
> > > at org.apache.catalina.core.StandardContextValve.invokeInternal
> > > (StandardContextValve.java:198)
> > > at org.apache.catalina.core.StandardContextValve.invoke
> > > (StandardContextValve.java:152)
> > > at org.apache.catalina.core.StandardValveContext.invokeNext
> > > (StandardValveContext.java:104)
> > > at org.apache.catalina.core.StandardPipeline.invoke
> > > (StandardPipeline.java:520)
> > > at org.apache.catalina.core.StandardHostValve.invoke
> > > (StandardHostValve.java:137)
> > > at org.apache.catalina.core.StandardValveContext.invokeNext
> > > (StandardValveContext.java:104)
> > > at org.apache.catalina.valves.ErrorReportValve.invoke
> > > (ErrorReportValve.java:118)
> > > at org.apache.catalina.core.StandardValveContext.invokeNext
> > > (StandardValveContext.java:102)
> > > at org.apache.catalina.core.StandardPipeline.invoke
> > > (StandardPipeline.java:520)
> > > at org.apache.catalina.core.StandardEngineValve.invoke
> > > (StandardEngineValve.java:109)
> > > at org.apache.catalina.core.StandardValveContext.invokeNext
> > > (StandardValveContext.java:104)
> > > at org.apache.catalina.core.StandardPipeline.invoke
> > > (StandardPipeline.java:520)
> > > at
> > > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:
> > > 929)
> > > at
> > > org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:
> > > 160)
> > > at org.apache.coyote.http11.Http11Processor.process
> > > (Http11Processor.java:799)
> > > at org.apache.coyote.http11.Http11Protocol
> > > $Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
> > > at org.apache.tomcat.util.net.TcpWorkerThread.runIt
> > > (PoolTcpEndpoint.java:577)
> > > at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
> > > (ThreadPool.java:683)
> > > at java.lang.Thread.run(Unknown Source)
> > > Caused by: java.lang.reflect.InvocationTargetException: null
> > > 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.user.server.rpc.impl.ServerSerializationStreamWriter.serializeWithCustomSerializer
> > > (ServerSerializationStreamWriter.java:678)
> > > at
> > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.serializeImpl
> > > (ServerSerializationStreamWriter.java:659)
> > > at
> > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.serialize
> > > (ServerSerializationStreamWriter.java:593)
> > > at
> > > com.google.gwt.user.client.rpc.impl.AbstractSerializationStreamWriter.writeObject
> > > (AbstractSerializationStreamWriter.java:129)
> > > at
> > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter
> > > $ValueWriter$8.write(ServerSerializationStreamWriter.java:146)
> > > at
> > > com.google.gwt.user.server.rpc.impl.ServerSerializationStreamWriter.serializeValue
> > > (ServerSerializationStreamWriter.java:530)
> > > at com.google.gwt.user.server.rpc.RPC.encodeResponse(RPC.java:573)
> > > at com.google.gwt.user.server.rpc.RPC.encodeResponseForSuccess
> > > (RPC.java:441)
> > > at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse
> > > (RPC.java:529)
> > > at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall
> > > (RemoteServiceServlet.java:164)
> > > at com.google.gwt.user.server.rpc.RemoteServiceServlet.doPost
> > > (RemoteServiceServlet.java:86)
> > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
> > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> > > at com.google.gwt.dev.shell.GWTShellServlet.service
> > > (GWTShellServlet.java:289)
> > > at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> > > at
> > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
> > > (ApplicationFilterChain.java:237)
> > > at org.apache.catalina.core.ApplicationFilterChain.doFilter
> > > (ApplicationFilterChain.java:157)
> > > at org.apache.catalina.core.StandardWrapperValve.invoke
> > > (StandardWrapperValve.java:214)
> > > at org.apache.catalina.core.StandardValveContext.invokeNext
> > > (StandardValveContext.java:104)
> > > at org.apache.catalina.core.StandardPipeline.invoke
> > > (StandardPipeline.java:520)
> > > at org.apache.catalina.core.StandardContextValve.invokeInternal
> > > (StandardContextValve.java:198)
> > > at org.apache.catalina.core.StandardContextValve.invoke
> > > (StandardContextValve.java:152)
> > > at org.apache.catalina.core.StandardValveContext.invokeNext
> > > (StandardValveContext.java:104)
> > > at org.apache.catalina.core.StandardPipeline.invoke
> > > (StandardPipeline.java:520)
> > > at org.apache.catalina.core.StandardHostValve.invoke
> > > (StandardHostValve.java:137)
> > > at org.apache.catalina.core.StandardValveContext.invokeNext
> > > (StandardValveContext.java:104)
> > > at org.apache.catalina.valves.ErrorReportValve.invoke
> > > (ErrorReportValve.java:118)
> > > at org.apache.catalina.core.StandardValveContext.invokeNext
> > > (StandardValveContext.java:102)
> > > at org.apache.catalina.core.StandardPipeline.invoke
> > > (StandardPipeline.java:520)
> > > at org.apache.catalina.core.StandardEngineValve.invoke
> > > (StandardEngineValve.java:109)
> > > at org.apache.catalina.core.StandardValveContext.invokeNext
> > > (StandardValveContext.java:104)
> > > at org.apache.catalina.core.StandardPipeline.invoke
> > > (StandardPipeline.java:520)
> > > at
> > > org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:
> > > 929)
> > >
>
> ...
>
> read more »
--~--~---------~--~----~------------~-------~--~----~
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
-~----------~----~----~----~------~----~------~--~---