Thanks Toby.

On 9 Dec, 19:23, Toby Reyelts <[email protected]> wrote:
> http://code.google.com/appengine/kb/java.html#fileforms
>
> On Wed, Dec 9, 2009 at 12:44 PM, Henry <[email protected]> wrote:
> > Hi Guys,
>
> > Im trying to store and image with GWT to Google App engine, I'm using
> > the packages:
> >  commons-codec-1.4.jar
> >  commons-fileupload-1.2.1.jar
> >  commons-io-1.4.jar
> > to get the widgets from the formPanel that I'm sending to the server
> > which contain the widgets FileUpload that has my image.
> > When I'm using this packages to recover the image and store it I've
> > the following error:
>
> > java.lang.NoClassDefFoundError: java.rmi.server.UID is a restricted
> > class. Please see the Google App Engine developer's guide for more
> > details.
> >        at
>
> > com.google.apphosting.runtime.security.shared.stub.java.rmi.server.UID.<clinit>
> > (UID.java)
> >        at org.apache.commons.fileupload.disk.DiskFileItem.<clinit>
> > (DiskFileItem.java:103)
> >        at org.apache.commons.fileupload.disk.DiskFileItemFactory.createItem
> > (DiskFileItemFactory.java:196)
> >        at org.apache.commons.fileupload.FileUploadBase.parseRequest
> > (FileUploadBase.java:358)
> >        at
> > org.apache.commons.fileupload.servlet.ServletFileUpload.parseRequest
> > (ServletFileUpload.java:126)
> >        at com.handizo.server.service.FileUploadAnnouncementServlet.doPost
> > (FileUploadAnnouncementServlet.java:37)
> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:713)
> >        at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
> >        at
> > org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
> > 487)
> >        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter
> > (ServletHandler.java:1093)
> >        at com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter
> > (SaveSessionFilter.java:35)
> >        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter
> > (ServletHandler.java:1084)
> >        at
> > com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter
> > (TransactionCleanupFilter.java:43)
> >        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter
> > (ServletHandler.java:1084)
> >        at org.mortbay.jetty.servlet.ServletHandler.handle
> > (ServletHandler.java:360)
> >        at org.mortbay.jetty.security.SecurityHandler.handle
> > (SecurityHandler.java:216)
> >        at org.mortbay.jetty.servlet.SessionHandler.handle
> > (SessionHandler.java:181)
> >        at org.mortbay.jetty.handler.ContextHandler.handle
> > (ContextHandler.java:712)
> >        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
> > 405)
> >        at com.google.apphosting.runtime.jetty.AppVersionHandlerMap.handle
> > (AppVersionHandlerMap.java:238)
> >        at org.mortbay.jetty.handler.HandlerWrapper.handle
> > (HandlerWrapper.java:139)
> >        at org.mortbay.jetty.Server.handle(Server.java:313)
> >        at
> > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
> > 506)
> >        at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete
> > (HttpConnection.java:830)
> >        at
> > com.google.apphosting.runtime.jetty.RpcRequestParser.parseAvailable
> > (RpcRequestParser.java:76)
> >        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
> >        at
>
> > com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest
> > (JettyServletEngineAdapter.java:139)
> >        at com.google.apphosting.runtime.JavaRuntime.handleRequest
> > (JavaRuntime.java:239)
> >        at com.google.apphosting.base.RuntimePb$EvaluationRuntime
> > $6.handleBlockingRequest(RuntimePb.java:5235)
> >        at com.google.apphosting.base.RuntimePb$EvaluationRuntime
> > $6.handleBlockingRequest(RuntimePb.java:5233)
> >        at com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest
> > (BlockingApplicationHandler.java:24)
> >        at com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:
> > 363)
> >        at com.google.net.rpc.impl.Server$2.run(Server.java:838)
> >        at com.google.tracing.LocalTraceSpanRunnable.run
> > (LocalTraceSpanRunnable.java:56)
> >        at com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan
> > (LocalTraceSpanBuilder.java:536)
> >        at com.google.net.rpc.impl.Server.startRpc(Server.java:793)
> >        at com.google.net.rpc.impl.Server.processRequest(Server.java:368)
> >        at com.google.net.rpc.impl.ServerConnection.messageReceived
> > (ServerConnection.java:448)
> >        at com.google.net.rpc.impl.RpcConnection.parseMessages
> > (RpcConnection.java:319)
> >        at com.google.net.rpc.impl.RpcConnection.dataReceived
> > (RpcConnection.java:290)
> >        at com.google.net.async.Connection.handleReadEvent(Connection.java:
> > 466)
> >        at com.google.net.async.EventDispatcher.processNetworkEvents
> > (EventDispatcher.java:759)
> >        at com.google.net.async.EventDispatcher.internalLoop
> > (EventDispatcher.java:205)
> >        at com.google.net.async.EventDispatcher.loop(EventDispatcher.java:
> > 101)
> >        at com.google.net.rpc.RpcService.runUntilServerShutdown
> > (RpcService.java:251)
> >        at com.google.apphosting.runtime.JavaRuntime$RpcRunnable.run
> > (JavaRuntime.java:396)
> >        at java.lang.Thread.run(Unknown Source)
>
> > This " java.rmi.server.UID" class is not in the jre class white list
> > of Google App Engine, this mean that I can't use these packages
> > because they need this class?
> > In that case how I can get the image from the GWT, concretely from a
> > PanelForm without using these classes??
>
> > This is my server code:
>
> >       �...@suppresswarnings("unchecked")
> >        protected void doPost(HttpServletRequest req, HttpServletResponse
> > resp)
> >                        throws ServletException, IOException {
>
> >                // Create a factory for disk-based file items and an upload
> > handler
> >                DiskFileItemFactory factory = new DiskFileItemFactory();
> >                ServletFileUpload upload = new ServletFileUpload(factory);
>
> >                // Parse the request to retrieve the individual items
> >                List<FileItem> items;
> >                try {
> >                        items = upload.parseRequest(req);
> >                } catch (FileUploadException e) {
> >                        throw new ServletException("File upload failed", e);
> >                }
>
> >                // handle the individual items appropriately
> >                for (FileItem fileItem : items) {
>
> >                }
>
> >       }
>
> > Thanks in advance.
>
> > --
>
> > You received this message because you are subscribed to the Google Groups
> > "Google App Engine for Java" group.
> > To post to this group, send email to
> > [email protected].
> > To unsubscribe from this group, send email to
> > [email protected]<google-appengine-java%[email protected]>
> > .
> > For more options, visit this group at
> >http://groups.google.com/group/google-appengine-java?hl=en.

--

You received this message because you are subscribed to the Google Groups 
"Google App Engine for Java" 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-appengine-java?hl=en.


Reply via email to