質問

戻り値の型(XXXProxy)のドメインマッピングをドメインタイプに解決できなかったため、このメソッドを検証できません。@ SuppressWarnings( "requestfactory")を追加して却下します。

GWT 2.4以降、RequestFactoryインターフェースは、RequestFactoryサーバーコードまたはJVMベースのクライアントで使用する前に検証する必要があります。このドキュメントでは、これらのインターフェイスを検証するためのメカニズムについて説明します。

http://code.google.com/p/によるとgoogle-web-toolkit / wiki / RequestFactoryInterfaceValidation

実行しましたが、ProxyクラスとRequestクラスでエラーが発生しました。 そのように: ジェネラコディセタグプレ

ヘルプ!エンティティクラスでのサービスの実装の使用に合格しました ただし、UsingLocatorとServiceLocatorを渡すことはできません。

マイコード: ジェネラコディセタグプレ

エラー[サーバーでメソッドを使用するためのデバッグ]

com.google.web.bindery.requestfactory.server.RequestFactoryServlet doPost 严重:予期しないエラー java.lang.RuntimeException:Com.geogre.shared.DemoRfLocateRequestFactoryRequestFactoryタイプに対してRequestFactoryValidationToolを実行する必要があります com.google.web.bindery.requestfactory.vm.impl.Deobfuscator $ Builder.load(Deobfuscator.java:59)で com.google.web.bindery.requestfactory.server.ResolverServiceLayer.updateDeobfuscator(ResolverServiceLayer.java:43)で com.google.web.bindery.requestfactory.server.ResolverServiceLayer.resolveRequestFactory(ResolverServiceLayer.java:176)で com.google.web.bindery.requestfactory.server.ServiceLayerDecorator.resolveRequestFactory(ServiceLayerDecorator.java:172)で com.google.web.bindery.requestfactory.server.ServiceLayerDecorator.resolveRequestFactory(ServiceLayerDecorator.java:172)で com.google.web.bindery.requestfactory.server.ServiceLayerDecorator.resolveRequestFactory(ServiceLayerDecorator.java:172)で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブメソッド)で sun.reflect.NativeMethodAccessorImpl.invoke(不明なソース)で sun.reflect.DelegatingMethodAccessorImpl.invoke(不明なソース)で java.lang.reflect.Method.invoke(不明なソース)で com.google.web.bindery.requestfactory.server.ServiceLayerCache.getOrCache(ServiceLayerCache.java:233)で com.google.web.bindery.requestfactory.server.ServiceLayerCache.resolveRequestFactory(ServiceLayerCache.java:198)で com.google.web.bindery.requestfactory.server.SimpleRequestProcessor.process(SimpleRequestProcessor.java:207)で com.google.web.bindery.requestfactory.server.SimpleRequestProcessor.process(SimpleRequestProcessor.java:127)で com.google.web.bindery.requestfactory.server.RequestFactoryServlet.doPost(RequestFactoryServlet.java:133)で javax.servlet.http.HttpServlet.service(HttpServlet.java:637)で javax.servlet.http.HttpServlet.service(HttpServlet.java:717)で org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)で org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)で org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)で org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)で org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:729)で org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)で org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)で org.mortbay.jetty.handler.RequestLogHandler.handle(RequestLogHandler.java:49)で org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)で org.mortbay.jetty.Server.handle(Server.java:324)で org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)で org.mortbay.jetty.HttpConnection $ RequestHandler.content(HttpConn

ection.java:843) org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:647)で org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)で org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)で org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)で org.mortbay.thread.QueuedThreadPool $ PoolThread.run(QueuedThreadPool.java:488)で プラグマ:キャッシュなし キャッシュ制御:キャッシュなし 応答ヘッダー コンテンツタイプ:text / html;charset= iso-8859-1 コンテンツの長さ:1420
役に立ちましたか?

解決

いくつかの方法で、@ ServiceNameアノテーションを誤って使用しているようです。クラスリテラルについて言及する場合は、代わりに@Serviceを使用してください ジェネラコディセタグプレ

@ServiceNameを使用する場合は、完全なパッケージ名が必要です ジェネラコディセタグプレ

同じことが@ProxyForと@ProxyForNameにも当てはまりますが、これらも誤って使用しているようです。

いずれの場合も、RequestContextのサービスがプロキシを指すようにすることはできません。おそらくUserProxyではなくUserを指す必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top