1

gwtアプリケーションはgwt2.4rc1の開発モードで正常に動作していますが、tomcat 6にデプロイすると、最初のrequestfactory呼び出しが行われたときに、サーバー側で次の例外が発生します。

java.lang.NullPointerException
    at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:768)
    at com.google.web.bindery.requestfactory.server.ServiceLayerCache.getOrCache(ServiceLayerCache.java:225)
    at com.google.web.bindery.requestfactory.server.ServiceLayerCache.resolveRequestFactory(ServiceLayerCache.java:198)
    at com.google.web.bindery.requestfactory.server.SimpleRequestProcessor.process(SimpleRequestProcessor.java:203)
    at com.google.web.bindery.requestfactory.server.SimpleRequestProcessor.process(SimpleRequestProcessor.java:127)
    at com.google.web.bindery.requestfactory.server.RequestFactoryServlet.doPost(RequestFactoryServlet.java:133)
    at com.sample.ads.server.service.AdsRequestFactoryServlet.doPost(AdsRequestFactoryServlet.java:42)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
    at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
    at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:776)
    at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:705)
    at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:898)
    at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
    at java.lang.Thread.run(Thread.java:662)

クライアント側では、500(内部サーバーエラー)

4

2 に答える 2

3

ワイヤーフォーマットはGWT2.3と2.4の間で変更され、難読化された(したがって大幅に短縮された)タイプ識別子をサポートします。2.3クライアントが2.4サーバーと通信しようとしていて、RC1にバグがあり、その場合は役に立たない方法で失敗します。修正は、更新されたrequestfactoryコードに対してクライアントコードを再コンパイルすることです。

于 2011-08-04T14:20:42.643 に答える
-1

AndroidアプリをGoogleAppEngineで動作させるには、デフォルトで構成されたGWT2.3.0を使用してEclipseでAppEngineに接続されたAndroidプロジェクトを作成する必要があります。

Windows->設定->Google->Web Toolkit(2.4.0rc1ではない)

プロジェクトの作成後にGWTバージョンを2.4.0rc1から2.3.0に変更しようとすると、Androidアプリで常にこのエラーが発生します(Webアプリは機能します)

于 2012-06-16T21:47:37.763 に答える