Hi,
Some code would be helpful, have you checked the form for errors? you
can use httpfox to see whats going to the servlet.
You can use this line of code to get the blob info, "LOLUPLOAD" being
the name of the FileUpload widget.
private BlobstoreService blobstoreService =
BlobstoreServiceFactory.getBlobstoreService();
...
BlobInfo info = new
BlobInfoFactory().loadBlobInfo(blobstoreService.getUploadedBlobs(req).get("LOLUPLOAD"));
On 17 Maio, 18:37, Viðar Svansson <[email protected]> wrote:
> Am I the only one who is experiencing this problem? This is a critical
> functionality for our app so I would really appreciate a comment on
> this.
>
> Thanks,
> Viðar
>
>
>
> On Fri, May 14, 2010 at 11:08 PM, pjesi <[email protected]> wrote:
> > I created an issue
> > here:http://code.google.com/p/googleappengine/issues/detail?id=3223
>
> > On May 14, 11:02 pm, pjesi <[email protected]> wrote:
> >> For more information, I am using the Upload.java servlet
> >> fromhttp://code.google.com/appengine/docs/java/blobstore/overview.html
>
> >> The server gives my the stacktrace on the URL _ah/upload/blobId (The
> >> form POST URL).
> >> It looks like it is failing to extract the filename. However, the file
> >> saves fine in the datastore.
>
> >> Is there any other way to know the key? For example reading headers or
> >> request parameters? I could bypass getUploadedBlobs if I can access
> >> the key somehow since I only need it to forward to another servlet
> >> (which renders the blob just fine).
>
> >> Thanks,
> >> Viðar
>
> >> On May 14, 8:08 pm, pjesi <[email protected]> wrote:
>
> >> > I can upload just fine into the blobstore. However, the callback
> >> > handler can never access the uploaded file using getUploadedBlobs.
>
> >> > The exception is:
>
> >> > Uncaught exception from servlet
> >> > java.lang.IllegalStateException: Must be called from a blob upload
> >> > callback request.
> >> > at
> >> > com.google.appengine.api.blobstore.BlobstoreServiceImpl.getUploadedBlobs(Bl
> >> > obstoreServiceImpl.java:
> >> > 128)
>
> >> > This seems to be the result of an parse exception:
>
> >> > com.google.apphosting.utils.servlet.ParseBlobUploadFilter doFilter:
> >> > Could not parse multipart message:
> >> > javax.mail.internet.ParseException: Missing ';'
> >> > at
> >> > javax.mail.internet.ParameterList.<init>(ParameterList.java:135)
> >> > at
> >> > javax.mail.internet.ContentDisposition.<init>(ContentDisposition.java:
> >> > 51)
> >> > at
> >> > javax.mail.internet.MimeBodyPart.getFileName(MimeBodyPart.java:
> >> > 303)
> >> > at
> >> > com.google.apphosting.utils.servlet.ParseBlobUploadFilter.doFilter(ParseBlo
> >> > bUploadFilter.java:
> >> > 74)
> >> > at org.mortbay.jetty.servlet.ServletHandler
> >> > $CachedChain.doFilter(ServletHandler.java:1157)
> >> > at
> >> > com.google.apphosting.runtime.jetty.SaveSessionFilter.doFilter(SaveSessionF
> >> > ilter.java:
> >> > 35)
> >> > at org.mortbay.jetty.servlet.ServletHandler
> >> > $CachedChain.doFilter(ServletHandler.java:1157)
> >> > at
> >> > com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(Trans
> >> > actionCleanupFilter.java:
> >> > 43)
> >> > at org.mortbay.jetty.servlet.ServletHandler
> >> > $CachedChain.doFilter(ServletHandler.java:1157)
> >> > at
> >> > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:
> >> > 388)
> >> > at
> >> > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:
> >> > 216)
> >> > at
> >> > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:
> >> > 182)
> >> > at
> >> > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:
> >> > 765)
> >> > at
> >> > org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
> >> > 418)
>
> >> > Note that this works fine on the development server. I am using 1.3.2.
> >> > Any ideas?
>
> >> > Thansk,
> >> > Viðar
>
> >> > --
> >> > 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
> >> > athttp://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
> >> athttp://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
> > athttp://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
> athttp://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.