Java+;GWT&x2B;服务器端的GSON
我已经读到,不可能在GWT客户机代码中运行,但可以在服务器代码中运行它 后一个是我正在努力实现的,但没有开始工作。我认为com.whatever.server包中的任何类都可以访问整个JRE命名空间,包括反射。看来情况并非如此。那么,如何管理所有这些开发人员在GWT服务器代码中使用GSON呢?(我是GWT新手,所以答案可能很简单。) 谢谢 编辑:我的设置如下:Java+;GWT&x2B;服务器端的GSON,gwt,gson,Gwt,Gson,我已经读到,不可能在GWT客户机代码中运行,但可以在服务器代码中运行它 后一个是我正在努力实现的,但没有开始工作。我认为com.whatever.server包中的任何类都可以访问整个JRE命名空间,包括反射。看来情况并非如此。那么,如何管理所有这些开发人员在GWT服务器代码中使用GSON呢?(我是GWT新手,所以答案可能很简单。) 谢谢 编辑:我的设置如下: test.gwt.xml包含:和 客户端使用私有最终TestServiceAsync testService=GWT.create(t
- test.gwt.xml包含:
和 - 客户端使用私有最终TestServiceAsync testService=GWT.create(testService.class)并调用
testService.testMethod()代码>
- TestService接口和TestServiceAsync位于包客户端中
- test.server中实现的TestServiceImpl使用
Gson g=new Gson()代码>等等
这是一个类路径问题。GSON不在类路径中。您使用哪种IDE?如果您使用eclipse- 1.右键单击项目 2.构建路径 3.配置生成路径 4.选择“库”选项卡 5.单击“添加罐子…”
6.在弹出窗口中,为每个必要的JAR选择正确的位置。对于JSP/Servlet WEB应用程序,只需将第三方JAR文件放入/WEB-INF/lib文件夹中即可。如果该项目是一个动态Web项目,那么Eclipse也会自动注意正确设置构建路径。您不需要摆弄Eclipse构建路径。别忘了全部撤销在GWT应用程序的服务器端,不应该有任何理由不能使用GSON。您在这方面遇到了哪些错误?你确定你的
server
包没有在意外情况下被GWT编译吗?你能详细说明你的结果吗?这听起来与GWT关系不大,与你的构建路径关系更大,不包括对必要的GSON代码的引用。我的构建路径包含GSON.jar,它位于/war/WEB-INF/lib/gson/*中,并且gson库被标记为导出。我遗漏了什么吗?好的,解决了:jetty配置在/lib/gson/中找不到gson库,它应该位于/lib中。谢谢你的提示。
Caused by: java.lang.ClassNotFoundException: com.google.gson.Gson
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:151)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
... 33 more