GWT Blobstore调用createUploadUrl()时出错

GWT Blobstore调用createUploadUrl()时出错,gwt,blobstore,Gwt,Blobstore,我正在尝试使用GWT为appengine使用Blobstore api。。。 我向你保证!我让它工作了几个月,突然我开始 获取以下错误。。A在从执行以下行之后 侍者 公共类ImageServiceImpl扩展RemoteServiceServlet实现ImageService{ /** * */ private static final long serialVersionUID = 1L; // init the blog store service private Blo

我正在尝试使用GWT为appengine使用Blobstore api。。。 我向你保证!我让它工作了几个月,突然我开始 获取以下错误。。A在从执行以下行之后 侍者

公共类ImageServiceImpl扩展RemoteServiceServlet实现ImageService{

    /**
 * 
 */
private static final long serialVersionUID = 1L;

  // init the blog store service
private BlobstoreService blobService = BlobstoreServiceFactory.getBlobstoreService();
    //private static final Logger log = Logger.getLogger(ImageServiceImpl.class);
    public static final String PATH_TO_DEFAULT_IMAGE = "images/no_photo.jpg";
。 . . . . //为简洁起见省略 }

    @Override
    public String getUpLoadPath() {
        String url = blobService.createUploadUrl("/n5/doimage");
        return url;
    }
}

    @Override
    public String getUpLoadPath() {
        String url = blobService.createUploadUrl("/n5/doimage");
        return url;
    }
正在初始化应用程序引擎服务器 2011年9月19日下午7:28:45 com.google.apphosting.utils.jetty.JettyLogger信息 信息:通过com.google.apphosting.utils.jetty.JettyLogger登录到JettyLogger(null) 2011年9月19日下午7:28:45 com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml 信息:已成功处理C:\development\n5\n5\war\WEB-INF/appengine-WEB.xml 2011年9月19日下午7:28:45 com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml 信息:已成功处理C:\development\n5\n5\war\WEB-INF/WEB.xml 2011年9月19日下午3:28:47 com.google.appengine.tools.development.DevAppServerImpl启动 信息:服务器正在运行 2011年9月19日下午7:34:59 com.google.appengine.tools.development.Apiproxylocal日志 严重:javax.servlet.ServletContext日志:调度传入RPC调用时发生异常 com.google.gwt.user.server.rpc.unexpected异常:服务方法“public abstract java.lang.String com.six.n5.client.Service.ImageService.getUpLoadPath()”引发了意外异常:java.lang.VerifyError:class com.google.appengine.api.blobstore.BlobstoreServicePb$CreateUploadURLRequest覆盖最终方法已初始化。()Z 位于com.google.gwt.user.server.rpc.rpc.encodeResponseForFailure(rpc.java:385) 位于com.google.gwt.user.server.rpc.rpc.invokeAndEncodeResponse(rpc.java:588) 位于com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208) 位于com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248) 位于com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:637) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 位于com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:216) 位于com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:141) 位于com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:93) 在com.google.inject.servlet.filterchaininciation.doFilter上(filterchaininciation.java:63) 位于com.google.inject.servlet.ManagedFilterPipeline.dispatch(ManagedFilterPipeline.java:122) 位于com.google.inject.servlet.GuiceFilter.doFilter(GuiceFilter.java:110) 位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 位于com.google.appengine.tools.development.headerficationfilter.doFilter(headerficationfilter.java:35) 位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 在com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter上(ServeBlobFilter.java:58) 位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 位于com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43) 位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 位于com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:122) 位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 位于com.google.appengine.tools.development.BackendServersFilter.doFilter(BackendServersFilter.java:97) 位于org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157) 位于org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388) 位于org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) 位于org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) 位于org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765) 位于org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418) 位于com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:70) 位于org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) 位于com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:351) 位于org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) 位于org.mortbay.jetty.Server.handle(Server.java:326) 位于org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) 位于org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:938) 位于org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755) 位于org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) 位于org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) 位于org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409) 位于org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) 原因:java.lang.VerifyError:class com.google.appengine.api.blobstore.BlobstoreServicePb$CreateUploadURLRequest重写初始化的最终方法。()Z 位于java.lang.ClassLoader.defineClass1(本机方法) 位于java.lang.ClassLoader.defineClass(未知源) 位于java.security.SecureClassLoader.defineClass(未知源) 位于java.net.URLClassLoader.defineClass(未知源) 位于java.net.URLClassLoader.access$100(未知来源) 位于java.net.URLClassLoader$1.run(未知源) 位于java.net.URLClassLoader$1.run(未知源) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.net.URLClassLoader.findClass(未知源) 位于java.lang.ClassLoader.loadClass(未知源) 在c
uploadForm.addSubmitCompleteHandler(new FormPanel.SubmitCompleteHandler() {
      @Override
      public void onSubmitComplete(SubmitCompleteEvent event) {

        //The submit complete Event Results will contain the unique
        //identifier for the picture's meta-data.  Trim it to remove
        //trailing spaces and line breaks
          System.out.println("uploadForm onSubmitComplete() results are: " + event.getResults());

          Window.alert(event.getResults());
          if(event.getResults() != null)
          {
             // getPicture(event.getResults().trim());
          }
          else
          {
              Window.alert(event.getResults());
          }

      }

    });
//Redirect recursively to this servlet (calls doGet)
        response.sendRedirect("/itemmanager/receive?id=" + item.getKey().getId());
      }

      @Override
      protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException 
      {
          System.out.println("entered do post");
        //Send the meta-data id back to the client in the HttpServletResponse response
        String id = req.getParameter("id");
        System.out.println("entered do post id is: " + id);
        resp.setHeader("Content-Type", "text/html");
        resp.getWriter().println(id);

      }
String url = blobstoreService.createUploadUrl("/project/uploadservice");

// change the computer name to standard localhost ip address, if in dev mode
if(SystemProperty.environment.value() == SystemProperty.Environment.Value.Development)
{
    url = url.replace("Your-PC-Name", "127.0.0.1");
}