我已经使用Eclipse来制作EJB project
,Dynamic Web project
,然后我将这些组合在EAR project
中。现在我正在学习Maven,我想知道你是如何管理这样做的?
如果我使用生成javaee6-webapp的原型,那么根据我的理解,你得到一个WAR存档....但是这只能使用JavaEE6规范的子集。我想用整个。所以我需要为javaee6-ejb使用一个原型,为javaee6-webapp使用一个原型,然后以某种方式组合这些原型?
如果是这种情况或者还有其他更好的方法,我很乐意了解它。
或者是由一个原型生成的webapp项目中的EJB编译并打包为库并添加到WEB-INF / lib文件夹中?如果是这样,如果部署在完整配置文件应用服务器中,它是否可以访问完整的JavaEE6 API?
答案 0 :(得分:4)
This article可能对你很有意思。
此外,如果我理解正确,您可以使用使用WAR部署的所有Java EE 6规范产品。您可以在WAR中使用计时器,远程接口,异步调用等 这取决于您是否使用Full vs Web Profile。
EAR和WAR包装之间几乎没有区别,但在我看来,EAR最大的附加价值是关注点和模块的分离(业务逻辑来自网络)。
答案 1 :(得分:1)
你有正确的想法。
创建所有maven项目,例如ejb-javaee6,webapp-javaee6等。 然后,如果需要,创建一个maven ear-javaee6项目将它们捆绑在一起。此EAR将引用您的ejb和webapp。
更新了链接 Eclipse有plugin for maven让你的生活更轻松
答案 2 :(得分:1)
要快速启动,您还可以使用像http://seam-archetype.sourceforge.net/jbosscc-seam-archetype/1.4/javaee.html
这样的maven原型