哪个基于组件的Java-Framework也可以做Webservices?

时间:2012-02-29 23:12:07

标签: java rest frameworks wicket tapestry

对于一个新项目,我想要建立一个基于组件的框架(思考Wicket或Tapestry)。这是一个内部网应用程序,但我必须提供Restful Webservices。

在谷歌搜索后我没有找到任何好的解决方案,它描述了如何将Wicket与任何符合Jax-RS的库集成。

以前有人这样做过吗?

我已经看到,Wicket可以提供类似其他网址,但我会通过accept-header在完全成熟的Wicket-Gui和webservice之间切换。

我发现的一切,建议,创建一个不同的vhost / url路由。

如果你说,挂毯(或任何其他框架)要好得多,为了我想做的事,请告诉我。但不知怎的,我喜欢检票口。

2 个答案:

答案 0 :(得分:2)

我建议使用Spring“契约优先”Web服务或REST:

http://static.springsource.org/spring-ws/site/ http://www.ibm.com/developerworks/webservices/library/wa-spring3webserv/index.html

特别是如果你对框架感兴趣的话。 Spring比Web MVC框架更多 。它给你:

  1. 依赖注入
  2. 面向方面编程
  3. 用于Web MVC,持久性,远程处理,消息传递,安全性,Web服务等的坚实模块。
  4. 我不确定为什么你认为基于组件的方法是优越的,但在我看来,它被HTML,CSS,JavaScript和jQuery所遗忘。我会重新考虑这个要求。

    Web服务的实现不应该知道或关心用于实现客户端的技术。这就是网络服务的美妙之处:如果做得好,它们可以存活更长时间。 UI可以来去,但服务中的业务逻辑和基础可以保留。他们可以处理在台式机,浏览器,移动设备上运行的用户界面,甚至是谷歌的平视显示器。我们会看到。

答案 1 :(得分:1)

Play和Spring MVC都不是基于组件的。 在Wicket 1.5中,您可以滚动自己的IRequestMapper来检查标题并决定是使用默认处理(基于组件)还是使用自定义IRequestHandler来提供JSON,XML,...请参阅TextRequestHandler以获取灵感。您的自定义IRequestMapper应设置为“root”,以便能够首先获取传入的请求,例如,请参阅HttpsMapper和CryptoMapper的用法。 请随时在users @ mailing列表中询问更多详细信息。