如何在小工具中使用 GWT RequestFactory?

Posted

技术标签:

【中文标题】如何在小工具中使用 GWT RequestFactory?【英文标题】:How can I get GWT RequestFactory to with in a Gadget? 【发布时间】:2011-06-20 17:10:11 【问题描述】:

解释了如何让 GWT-RPC 与小工具一起使用 here。

我正在为 RequestFactory 寻找类似的解决方案。

我尝试使用 GadgetsRequestBuilder,到目前为止,我已经设法通过以下方式将请求发送到服务器:

requestFactory.initialize(eventBus, new DefaultRequestTransport() 

        @Override
        protected RequestBuilder createRequestBuilder() 
            return new GadgetsRequestBuilder(RequestBuilder.POST,
                    getRequestUrl());
        

        @Override
        public String getRequestUrl() 
            return "http://....com/gadgetRequest";
        

    );

但我最终得到以下错误:

java.lang.StringIndexOutOfBoundsException:字符串索引超出范围:0 在 java.lang.String.charAt(String.java:694) 在 com.google.gwt.autobean.server.impl.JsonSplittable.create(JsonSplittable.java:35) 在 com.google.gwt.autobean.shared.impl.StringQuoter.split(StringQuoter.java:35) 在 com.google.gwt.autobean.shared.AutoBeanCodex.decode(AutoBeanCodex.java:520) 在 com.google.gwt.requestfactory.server.SimpleRequestProcessor.process(SimpleRequestProcessor.java:121)

【问题讨论】:

【参考方案1】:

发送 RequestFactory 负载的一般方法应该与 RPC 相同。您可以通过使用 JVM 标志 -Dgwt.rpc.dumpPayload=true 运行它来查看服务器正在接收的有效负载。我的猜测是服务器正在接收一个长度为零的有效负载的请求。如果你设置了一个简单的测试,涉及到一个GadgetsRequestBuilder 向你的服务器发送一个POST 请求,会发生什么?您仍然获得相同的零长度有效负载行为吗?

【讨论】:

以上是关于如何在小工具中使用 GWT RequestFactory?的主要内容,如果未能解决你的问题,请参考以下文章

GWT 2.4 HTML 5 拖放 APIS - 拖动时更改光标

如何使用 GWT 的编辑器框架?

IE 在 GWT 中错误地显示一些小部件

如何使用 Eclipse 调试旧版 GWT 代码

谷歌网络工具包和 RPC

GWT SimplePager:如何在第一个,最后一个,下一个,上一个等寻呼机按钮上提供工具提示?