Serve image from blob store

65 views
Skip to first unread message

Ahmed Shoeib

unread,
Dec 20, 2010, 4:11:48 AM12/20/10
to Google Web Toolkit

hi all,
i want to get image from blobstore using this code

// Serve image from blob store
BlobKey blobKey = new BlobKey(req.getParameter("apikey"));
blobstoreService.serve(blobKey, resp);

and facing this problem

HTTP ERROR 500

Problem accessing /api/news/serve. Reason:

WRITER

Caused by:

java.lang.IllegalStateException: WRITER
at org.mortbay.jetty.Response.getOutputStream(Response.java:594)
at
javax.servlet.ServletResponseWrapper.getOutputStream(ServletResponseWrapper.java:
105)
at
com.google.appengine.api.blobstore.dev.ServeBlobFilter.serveBlob(ServeBlobFilter.java:
169)
at
com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:
62)
at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
at
com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:
43)
at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
at
com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:
122)
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)
at
com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:
70)
at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:
152)
at com.google.appengine.tools.development.JettyContainerService
$ApiProxyHandler.handle(JettyContainerService.java:349)
at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:
152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
542)
at org.mortbay.jetty.HttpConnection
$RequestHandler.headerComplete(HttpConnection.java:923)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:
409)
at org.mortbay.thread.QueuedThreadPool
$PoolThread.run(QueuedThreadPool.java:582)

Matthew Hill

unread,
Dec 20, 2010, 9:25:32 AM12/20/10
to google-we...@googlegroups.com
Try the Google App Engine group:


or the GAE Java group.

Ahmed Shoeib

unread,
Dec 20, 2010, 4:11:16 PM12/20/10
to Google Web Toolkit
ok thanks

Subhrajyoti Moitra

unread,
Dec 21, 2010, 3:37:46 AM12/21/10
to google-we...@googlegroups.com
Hello Ahmed,

http://anansu.blogspot.com/2010/12/upload-serve-and-search-images-using.html

Here's a small write-up and sources to a GWT+GAE+Eclipse project, using BlobStore to store and serve images. This is meant for learning purpose only.
Also this is not the only way you can do it. There are better ways most probably.

Hope this helps.


Thanks,
Subhro.


--
You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group.
To post to this group, send email to google-we...@googlegroups.com.
To unsubscribe from this group, send email to google-web-tool...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.


zixzigma

unread,
Dec 21, 2010, 3:50:41 AM12/21/10
to Google Web Toolkit
I believe you are using an API that is restricted on GAE.
support for File/IO operations are very limited on GAE,
and when using third party libraries such as Apache Commons,
not all of their features is supported.
check GAE WhiteList to see what is supported.

Often you have to look for alternatives.
What might be very easy in JRE, requires some tricks to get it to work
on GAE.

Subhrajyoti Moitra

unread,
Dec 21, 2010, 4:28:06 AM12/21/10
to google-we...@googlegroups.com
yes, u are right. Have to be careful about that on GAE.

For the common-libs, i am only using the file upload apis, which seems to be allowed on GAE.
Also some utils from commons-lang lib, which are compatible.

Thanks,
Subhro.


--
Reply all
Reply to author
Forward
0 new messages