是否可以将EJB项目公开为RESTful WS?

是否可以将EJB项目公开为RESTful WS?,rest,ejb-3.0,jax-rs,distributed-computing,Rest,Ejb 3.0,Jax Rs,Distributed Computing,我使用jersey实现了一个RESTful web服务,并将其部署在Tomcat上,我使用DAO类操作数据库操作,使用实体包装数据库记录。并在单独的包装中进行处理。我想让这个系统使用EJB进行分布式。首先,做这个改变很容易。或者我需要从头重写。第二,我仍然需要REST WS,那么是否有可能将EJB公开为REST WS,以及如何公开?REST WS是在同一个EJB项目中还是在不同的项目中?您完全可以将其作为EJB和REST WS来完成。将Tomcat安装升级到,然后只需将@Stateless或@S

我使用jersey实现了一个RESTful web服务,并将其部署在Tomcat上,我使用DAO类操作数据库操作,使用实体包装数据库记录。并在单独的包装中进行处理。我想让这个系统使用EJB进行分布式。首先,做这个改变很容易。或者我需要从头重写。第二,我仍然需要REST WS,那么是否有可能将EJB公开为REST WS,以及如何公开?REST WS是在同一个EJB项目中还是在不同的项目中?

您完全可以将其作为EJB和REST WS来完成。将Tomcat安装升级到,然后只需将
@Stateless
@Singleton
添加到现有的REST服务

您不再需要Jersey了,因为Tomcat(TOME)的JavaEE版本包括CXF for JAX-RS支持

这个示例没有很好的文档记录,但展示了一个结合了EJB和JAX-RS的功能应用程序


我仍然需要将DAO和实体分别更改为会话和实体bean。这是对的吗?取决于你兑换多少。如何持久化数据和如何公开服务是两个不同的决定。您可以拥有一个将自身公开为REST WS和
@Local
@Remote
bean的EJB,而不管您是否使用JPA或其他技术进行持久化。