2012-10-25 145 views
0

中的文件(web.xml)有錯誤我有一個錯誤,我不知道解決它。 的問題是: 當我做東西在我的java類後,我按保存,我去的web.xml文件的保存沒有下面的代碼:我在gwt

<servlet> 
    <servlet-name>SystemServiceServlet</servlet-name> 
    <servlet-class>com.google.api.server.spi.SystemServiceServlet</servlet-class> 
    <init-param> 
     <param-name>services</param-name> 
     <param-value/> 
    </init-param> 
    </servlet> 

    <servlet-mapping> 
    <servlet-name>SystemServiceServlet</servlet-name> 
    <url-pattern>/_ah/spi/*</url-pattern> 
    </servlet-mapping> 

這個代碼,我有意見,並隨後它保存 如果我不作出這樣的話,我出來的下一條消息的錯誤:

25-oct-2012 9:29:01 com.google.apphosting.utils.jetty.JettyLogger warn 
ADVERTENCIA: EXCEPTION 
java.lang.ClassNotFoundException: com.google.api.server.spi.SystemServiceServlet 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:176) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at org.mortbay.util.Loader.loadClass(Loader.java:91) 
    at org.mortbay.util.Loader.loadClass(Loader.java:71) 
    at org.mortbay.jetty.servlet.Holder.doStart(Holder.java:73) 
    at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:242) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:685) 
    at org.mortbay.jetty.servlet.Context.startContext(Context.java:140) 
    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250) 
    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) 
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 
    at org.mortbay.jetty.Server.doStart(Server.java:224) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at com.google.appengine.tools.development.JettyContainerService.startContainer(JettyContainerService.java:191) 
    at com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java:239) 
    at com.google.appengine.tools.development.DevAppServerImpl.restart(DevAppServerImpl.java:265) 
    at com.google.appengine.tools.development.gwt.AppEngineLauncher$AppEngineServletContainer.refresh(AppEngineLauncher.java:51) 
    at com.google.gwt.dev.DevMode.onRestartServer(DevMode.java:349) 
    at com.google.gwt.dev.shell.remoteui.RemoteUI.restartWebServer(RemoteUI.java:166) 
    at com.google.gwt.dev.shell.remoteui.DevModeServiceRequestProcessor.processRestartServer(DevModeServiceRequestProcessor.java:94) 
    at com.google.gwt.dev.shell.remoteui.DevModeServiceRequestProcessor.execute(DevModeServiceRequestProcessor.java:59) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport.processClientRequest(MessageTransport.java:362) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport.processMessage(MessageTransport.java:404) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport.access$400(MessageTransport.java:44) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport$3.run(MessageTransport.java:322) 
    at java.lang.Thread.run(Unknown Source) 
25-oct-2012 9:29:01 com.google.appengine.tools.development.ApiProxyLocalImpl log 
GRAVE: javax.servlet.ServletContext log: unavailable 
javax.servlet.UnavailableException: com.google.api.server.spi.SystemServiceServlet 
    at org.mortbay.jetty.servlet.Holder.doStart(Holder.java:79) 
    at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:242) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:685) 
    at org.mortbay.jetty.servlet.Context.startContext(Context.java:140) 
    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250) 
    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) 
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 
    at org.mortbay.jetty.Server.doStart(Server.java:224) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at com.google.appengine.tools.development.JettyContainerService.startContainer(JettyContainerService.java:191) 
    at com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java:239) 
    at com.google.appengine.tools.development.DevAppServerImpl.restart(DevAppServerImpl.java:265) 
    at com.google.appengine.tools.development.gwt.AppEngineLauncher$AppEngineServletContainer.refresh(AppEngineLauncher.java:51) 
    at com.google.gwt.dev.DevMode.onRestartServer(DevMode.java:349) 
    at com.google.gwt.dev.shell.remoteui.RemoteUI.restartWebServer(RemoteUI.java:166) 
    at com.google.gwt.dev.shell.remoteui.DevModeServiceRequestProcessor.processRestartServer(DevModeServiceRequestProcessor.java:94) 
    at com.google.gwt.dev.shell.remoteui.DevModeServiceRequestProcessor.execute(DevModeServiceRequestProcessor.java:59) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport.processClientRequest(MessageTransport.java:362) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport.processMessage(MessageTransport.java:404) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport.access$400(MessageTransport.java:44) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport$3.run(MessageTransport.java:322) 
    at java.lang.Thread.run(Unknown Source) 

25-oct-2012 9:29:01 com.google.apphosting.utils.jetty.JettyLogger warn 
ADVERTENCIA: failed SystemServiceServlet: java.lang.NullPointerException 
25-oct-2012 9:29:01 com.google.apphosting.utils.jetty.JettyLogger warn 
ADVERTENCIA: Failed startup of context c[email protected]8d5bff{/,C:\Alberto\workspace\uned\RepresentacionAfc\war} 
java.lang.NullPointerException 
    at java.lang.Class.isAssignableFrom(Native Method) 
    at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:256) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:685) 
    at org.mortbay.jetty.servlet.Context.startContext(Context.java:140) 
    at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250) 
    at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517) 
    at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130) 
    at org.mortbay.jetty.Server.doStart(Server.java:224) 
    at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50) 
    at com.google.appengine.tools.development.JettyContainerService.startContainer(JettyContainerService.java:191) 
    at com.google.appengine.tools.development.AbstractContainerService.startup(AbstractContainerService.java:239) 
    at com.google.appengine.tools.development.DevAppServerImpl.restart(DevAppServerImpl.java:265) 
    at com.google.appengine.tools.development.gwt.AppEngineLauncher$AppEngineServletContainer.refresh(AppEngineLauncher.java:51) 
    at com.google.gwt.dev.DevMode.onRestartServer(DevMode.java:349) 
    at com.google.gwt.dev.shell.remoteui.RemoteUI.restartWebServer(RemoteUI.java:166) 
    at com.google.gwt.dev.shell.remoteui.DevModeServiceRequestProcessor.processRestartServer(DevModeServiceRequestProcessor.java:94) 
    at com.google.gwt.dev.shell.remoteui.DevModeServiceRequestProcessor.execute(DevModeServiceRequestProcessor.java:59) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport.processClientRequest(MessageTransport.java:362) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport.processMessage(MessageTransport.java:404) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport.access$400(MessageTransport.java:44) 
    at com.google.gwt.dev.shell.remoteui.MessageTransport$3.run(MessageTransport.java:322) 
    at java.lang.Thread.run(Unknown Source) 

有誰知道原因嗎?

謝謝。

回答

0

您是否已導入* .jar文件,其中實現了「com.google.api.server.spi.SystemServiceServlet」?

0

例外說,你的類:

<servlet-class>com.google.api.server.spi.SystemServiceServlet</servlet-class> 

無法找到。嘗試確保您已經在編譯的和其他運行時導入了相應的.jar文件

0

感謝您的回答。

我一直在尋找,我有所有的* .jar文件導入

從來就實現的方法同步,我需要我的應用程序,這個方法是聲明在web.xml文件

<servlet> 
    <servlet-name>afcService</servlet-name> 
    <servlet-class>com.afc.server.AfcServiceImpl</servlet-class> 
    </servlet> 

    <servlet-mapping> 
    <servlet-name>afcService</servlet-name> 
    <url-pattern>/representacionafc/afcService</url-pattern> 
    </servlet-mapping> 

如果我不把上面的代碼放在那裏,那麼應用程序沒有任何錯誤,但是如果我取消註釋上面的代碼,那麼我有問題。

謝謝

0

我有同樣的問題,我花了一段時間才弄明白。

起初,我承認,我確實需要SystemServiceServlet發送郵件的excample

比我發現,這是沒有谷歌或偏食的問題,因爲它爲我工作的罰款,如果我創建了一個全新的GEA項目在日食精靈。

我認爲這是一個Maven gwt-maven-plugin版本2.5.0-rc1問題,因爲這個插件版本沒有將GAE構建器添加到eclipse的構建器部分。

我遷移到版本2.5.0-rc2關閉在Eclipse中的項目清理所有m2e的東西(.settings,bin文件夾等)。之後,我重新導入了該項目並啓用了GAE,並且每件事都再次發揮作用。

從來沒有那麼奇怪。