在Web系统和EJB整合的过程中,比较麻烦的经历就是打包、部署了。搞不好就会报出异常信息。如果想让web顺利调用EJB组件,必须将web项目、ejb项目分别导出相关的包,之后再结合起来形成一个EAR包,应用服务器认识这个东西,和部署一般的EJB组件(打成jar)一样,将ear包丢到${JBOSS_HOME} \server\default\deploy下面即可。ear的结构是:
1:0——n个war包(web项目)
2:0——n个jar包(EJB组件类)
3:META-INF文件夹:里面是application.xml文件,该文件描述了war和jar的部署信息。
我的myear.ear内容如下
META-INF里面的application.xml内容如下
<?xml version="1.0" encoding="UTF-8"?>
<application xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/application_5.xsd">
<display-name>ear</display-name>
<module id="myeclipse.1298296534181">
<web>
<web-uri>JavaEE4StrutsEJB.war</web-uri>
<context-root>/JavaEE4StrutsEJB</context-root>
</web>
</module>
<module id="myeclipse.1296557119812">
<web>
<web-uri>JavaEE4Jboss.war</web-uri>
<context-root>/JavaEE4Jboss</context-root>
</web>
</module>
<module id="myeclipse.1298296534571">
<ejb>earEJB.jar</ejb>
</module>
</application>
|
红色字体是描述web项目的war部署情况,蓝色字体描述的是EJB组件的部署jar包。有了这个配置文件,应用服务器就会根据这个配置文件部署相关组件块。注:很多人使用MyEclipse集成JBoss,直接将web项目发布到JBoss上面(就像之前做Web项目发布到Tomcat上面似的),实际上在JavaEE6标准下,支持此标准的应用服务器(比如JBoss6就已经支持了)是可以如此部署的,实际上JavaEE6在部署上更简单了,一个war里面包含EJB组件,在应用服务器上就可以直接部署此EJB组件。
在MyEclipse中打ear包的步骤大致如下:
1,建立一个Enterprise Application Project;
2,选择新建空的EJB组件项目和新建空web项目此处只是方便打包项目后的application.xml内容生成,并没其他的含义;
3,选中Enterprise Application Project项目导出ear包;
4,将自己的web项目导出war包;
5,将EJB组件项目导出jar包;
6,用rar方式打开ear包,将刚才生成的war包和jar包拷贝到此ear下面,按实际情况修改一下META-INF/application.xml里面的内容;
7,将此ear部署到JBoss下面,重启服务器,即完成了部署。
这里还要罗嗦一句就是在打包的时候一定记住war包中绝对不能包含任何EJB组件类,否则,在EJB组件注入的时候会发生
javax.ejb.EJBException: java.lang.IllegalArgumentException: Wrong target. class异常。一般是将war包中的关于EJB组建的class类直接删除掉再放入到ear包中。而EJB组件中包含web层的类倒是没什么关系。
- 大小: 55.7 KB
- 大小: 73.4 KB
- 大小: 45 KB
分享到:
相关推荐
JavaEE5学习笔记07-Web层与EJB集成总结。
JavaEE5学习笔记05-EJB之会话Bean总结...
JavaEE5学习笔记09-将EJB发布成WebService总结。
JavaEE5学习笔记12-JSF集成AJAX使用经验总结。
JavaEE5学习笔记13-JSF集成Facelets使用经验总结.
JavaEE5学习笔记03-JMS介绍与使用..
JavaEE5学习笔记02-JNDI与RMI,
JavaEE5学习笔记04-JavaMail使用总结----
EJB之消息驱动Bean的总结。ejb 消息驱动Bean j2ee jms java
JavaEE5学习笔记01-JTA和数据库事务.
JavaEE5学习笔记11-JSF转换器验证器使用经验总结。
先电云计算软件服务-云存储网盘JavaEE网络应用开发手册-Cloud-SaaS-Web-v2.0先电云计算软件服务-云存储网盘JavaEE网络应用开发手册-Cloud-SaaS-Web-v2.0先电云计算软件服务-云存储网盘JavaEE网络应用开发手册-Cloud-...
javaee-api-8.0-javadoc.jar,这是javaee1.8api的jar包,解压后可用javadoc2chm制作成chm帮助文档。
NULL 博文链接:https://suhuanzheng7784877.iteye.com/blog/909104
java javaee-api-6.0-5
JavaEE源代码 struts2-core-2.0.11JavaEE源代码 struts2-core-2.0.11JavaEE源代码 struts2-core-2.0.11JavaEE源代码 struts2-core-2.0.11JavaEE源代码 struts2-core-2.0.11JavaEE源代码 struts2-core-2.0.11JavaEE源...
JavaEE源代码 struts2-spring-plugin-2.0.11JavaEE源代码 struts2-spring-plugin-2.0.11JavaEE源代码 struts2-spring-plugin-2.0.11JavaEE源代码 struts2-spring-plugin-2.0.11JavaEE源代码 struts2-spring-plugin-...
java运行依赖jar包
JavaEE源代码 jaxen-1.1-beta-7JavaEE源代码 jaxen-1.1-beta-7JavaEE源代码 jaxen-1.1-beta-7JavaEE源代码 jaxen-1.1-beta-7JavaEE源代码 jaxen-1.1-beta-7JavaEE源代码 jaxen-1.1-beta-7JavaEE源代码 jaxen-1.1-...