是否可以从本机Java调用GWT servlet?

时间:2011-01-24 01:10:40

标签: java gwt soap

我有一个GWT应用程序,带有Native Java后端,以及一个已编译的Javascript前端(像往常一样)。

我的GWT服务也应该可以从其他客户端访问,包括java applet。最初我的想法是将GWT服务加倍作为SOAP服务,并使用applet中的soap客户端来访问GWT服务,但我想知道是否可以使用内置的GWT客户端基础结构来调用服务器来自Java。

2 个答案:

答案 0 :(得分:3)

此方法的问题是序列化请求并反序列化响应,以便与GWT服务兼容。

一种解决方案是使用GWT SyncProxy:

这里解释:

您可以直接使用它,或者由于它们提供了源代码,您可以查看它们如何序列化请求并反序列化响应。

答案 1 :(得分:2)

另一种方法是使用Restlet提供服务,然后转换GWT客户端以进行REST调用。 Restlet人员提供了一个GWT库来促进这一点。


修改

我只知道RESTlet去年为我的GWT项目进行了评估。我不是专家,我最终没有使用它,但这在RESTlet上没有任何反映,无论好坏。

OP问道:

  

在JAX-RS上使用Restlet框架有什么好处?

基本上,JAX-RS是一个公正的API(如JDBC) - 您仍然需要选择一个实现或使用参考实现Jersey。 RESTLet有一个支持JAX-RS API的扩展。

http://www.restlet.org/about/faq#07

  

7。 Restlet和JAX-RS(JSR-311)之间的联系是什么?
  ...
  总而言之,这两种API具有非常不同的设计,但可能是互补的。好消息是JérômeLouvel(Restlet的创建者)是JSR-311专家组的活跃成员,并且在Restlet API之上实现了JAX-RS API。这个“Restlet的JAX-RS扩展”是由Stephan Koops在他的硕士论文的背景下开发的,是最先进的实现之一。有关此扩展的更多文档,请参阅此页。


OP问道:

  

是否可以使用Tomcat / web.xml基础结构而不是org.reslet.server

http://wiki.restlet.org/docs_2.0/13-restlet/275-restlet/312-restlet.html

  

此版本旨在在Java EE应用程序服务器内部开发和部署Restlet应用程序,或者更准确地说,在Apache Tomcat等Servlet容器内部。