Как я могу получить GWT RequestFactory с помощью гаджета? - PullRequest
0 голосов
/ 20 июня 2011

Как я могу получить GWT RequestFactory с помощью гаджета?

Объяснение того, как заставить GWT-RPC работать с гаджетами, объяснено здесь .

Я ищуаналогичное решение для 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.раскодировать (AutoBeanCodex.java:520) по адресу com.google.gwt.requestfactory.server.SimpleRequestProcessor.process (SimpleRequestProcessor.java:121)

1 Ответ

0 голосов
/ 21 июня 2011

Общий подход к отправке полезной нагрузки RequestFactory должен быть таким же, как RPC. Вы можете увидеть полезную нагрузку, полученную сервером, запустив его с флагом JVM -Dgwt.rpc.dumpPayload=true. Я предполагаю, что сервер получает запрос с полезной нагрузкой нулевой длины. Что произойдет, если вы настроите простой тест, включающий GadgetsRequestBuilder отправку запроса POST на ваш сервер? Вы все еще получаете то же поведение с нулевой длиной полезной нагрузки?

...