我正在寻找一个可以与GWT一起使用的简单的Java Json(de)序列化程序.我已经google了一下,发现了一些解决方案要么需要注释每个成员,要么定义无用的接口.相当无聊.为什么我们没有像这样简单的东西
class MyBean {
...
}
new GoodSerializer().makeString(new MyBean());
new GoodSerializer().makeObject("{ ... }", MyBean.class)
Run Code Online (Sandbox Code Playgroud) 我知道GWT有一个很好的RPC支持.但出于各种目的,我需要自己构建:
1.)如何转换Bean对象(在客户端)像;
class MyPerson {
String name;
String getName();
void setName(String name);
//..
}
Run Code Online (Sandbox Code Playgroud)
将GWT转换为JSON字符串?(理想情况下,只使用来自GWT/Google正式提供的库).
2.)其次,如何使用任何GWT Client Logik将此生成的JSON字符串从客户端发送到任何服务器.(理想情况下,只使用来自GWT/Google正式提供的库).
我搜索了很多,但这些示例从未显示如何发送数据,只是为了接收JSON数据.
非常感谢你!!!延
我的申请是扔:
java.lang.RuntimeException: Deferred binding failed for 'com.mygwtapp.client.gin.ClientAppGinjector' (did you forget to inherit a required module?)
Run Code Online (Sandbox Code Playgroud)
在EntryPoint内的这段代码上:
private final ClientAppGinjector injector = GWT.create(ClientAppGinjector.class);
Run Code Online (Sandbox Code Playgroud)
可能是什么问题呢?
这是完整的错误日志:
java.lang.RuntimeException: Deferred binding failed for 'com.mygwtapp.client.gin.ClientAppGinjector' (did you forget to inherit a required module?)
at com.google.gwt.dev.shell.GWTBridgeImpl.create(GWTBridgeImpl.java:53)
at com.google.gwt.core.client.GWT.create(GWT.java:97)
at com.mygwtapp.client.MainEntryPoint.<init>(MainEntryPoint.java:79)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
at com.google.gwt.dev.shell.ModuleSpace.rebindAndCreate(ModuleSpace.java:465)
at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:375)
at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200)
at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:525)
at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363)
at java.lang.Thread.run(Thread.java:722)
Run Code Online (Sandbox Code Playgroud)