blobstore处理文件的上传请求后,会重定向到给定的URL,在本例中为“/ upload”。如果我在web.xml中配置UploadServlet url,如下所示:
<servlet>
<servlet-name>uploadServlet</servlet-name>
<servlet-class>com.....servlet.UploadServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>uploadServlet</servlet-name>
<url-pattern>/upload</url-pattern>
</servlet-mapping>
有效。如果我使用Guice连接servlet:
serve("/upload").with(UploadServlet.class);
我收到错误:
Problem accessing /upload. Reason:NOT_FOUND
似乎com.google.inject.servlet.ServletModule不处理重定向。有办法解决这个问题吗?
答案 0 :(得分:0)
我今天一直在努力解决同样的问题。这解决了我的问题,可能是相关的:
https://groups.google.com/forum/#!topic/google-appengine-java/oqfvEmZGrdw
在开发模式下,blobstore服务使用 RequestDispatcher.forward()而不是HTTP请求:
<filter-mapping>
<filter-name>guiceFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
<filter-mapping>
<filter-name>guiceFilter</filter-name>
<url-pattern>/*</url-pattern>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
当然,对你来说可能为时已晚,但对其他人而言可能有所帮助: - )