会话bean属于一个应用程序?

时间:2010-06-24 18:33:16

标签: java deployment java-ee ejb-3.0 packaging

我有一个与EJB相关的新手问题。当我们编写一个Web应用程序时,所有的jsp / servlet等都被组织/打包成一个部署在服务器上的war文件,当涉及到会话bean及其部署时,它们被视为不属于的容器级组件任何个人申请?

1 个答案:

答案 0 :(得分:1)

不,他们不是。应将EJB打包到JAR(所谓的 EJB-JAR )中,然后组装成EAR(包装EJB-JAR(s),WAR(s)和RAR(s))。 Packaging EJB 3 Applications是关于此主题的非常好的文章(来自EJB 3 in Action的作者),涵盖了Java EE模块的类加载,打包和部署。强烈推荐。

从Java EE 6开始,可以将EJB部署为WAR的一部分(将EJB-JAR放在WEB-INF/lib中,或将类直接放在WEB-INF/classes中)。请注意,在此方案中,所有类都使用相同的类加载器加载(与EAR打包相反)。如果您没有强大的模块化需求(大多数应用程序都是如此),这非常有趣,因为更简单。当然,EAR封装仍然适用于那些具有更高级模块化要求的人。