Странное исключение при использовании RequestFactory и Objectify - PullRequest
0 голосов
/ 17 мая 2011

Я посмотрел пример из Google IO gwtgae2011 и все заработало. Я попытался добавить некоторые функции в проект и постоянно получал исключение от сервера (вызывался метод onFailure), а трассировка стека

19:47:36.070 [ERROR] [crowd] Uncaught exception escaped
com.google.web.bindery.event.shared.UmbrellaException: One or more exceptions caught, see full set in UmbrellaException#getCauses
at com.google.web.bindery.requestfactory.shared.impl.AbstractRequestContext$StandardPayloadDialect.processPayload(AbstractRequestContext.java:299)
at com.google.web.bindery.requestfactory.shared.impl.AbstractRequestContext$4.onTransportSuccess(AbstractRequestContext.java:951)
at com.google.web.bindery.requestfactory.gwt.client.DefaultRequestTransport$1.onResponseReceived(DefaultRequestTransport.java:136)
at com.google.gwt.http.client.Request.fireOnResponseReceived(Request.java:287)
at com.google.gwt.http.client.RequestBuilder$1.onReadyStateChange(RequestBuilder.java:395)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
......stacktrace

Caused by: java.lang.RuntimeException: Server Error: No class 'com.trial.gwtgae.server.domain.Sketch2' was registered
at com.google.web.bindery.requestfactory.shared.Receiver.onFailure(Receiver.java:36)
at com.google.web.bindery.requestfactory.shared.impl.AbstractRequest.onFail(AbstractRequest.java:113)
at com.google.web.bindery.requestfactory.shared.impl.AbstractRequestContext$StandardPayloadDialect.processPayload(AbstractRequestContext.java:271)
at com.google.web.bindery.requestfactory.shared.impl.AbstractRequestContext$4.onTransportSuccess(AbstractRequestContext.java:951)
at com.google.web.bindery.requestfactory.gwt.client.DefaultRequestTransport$1.onResponseReceived(DefaultRequestTransport.java:136)
at com.google.gwt.http.client.Request.fireOnResponseReceived(Request.java:287)
at com.google.gwt.http.client.RequestBuilder$1.onReadyStateChange(RequestBuilder.java:395)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
...more stacktrace

Я создал точный клон класса Sketch с именем Sketch2 и создал клоны SketchDao, SketchProxy и SqetchRequest в своем интерфейсе RequestFactory.

Исключение в любом случае выбрасывается. (Я попытался перекомпилировать, перезапустить, очистить сгенерированные файлы, попытался использовать IDEA - та же проблема) Есть идеи, почему это происходит?

1 Ответ

1 голос
/ 18 мая 2011

Вы должны зарегистрировать классы, которые вы хотите использовать с objectify. Примерно так:

factory.register(com.trial.gwtgae.server.domain.Sketch2.class);
...