在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框架中的Web层与EJB集成概述 在JavaEE5(即Java Platform, Enterprise Edition 5)中,Web层与EJB(Enterprise JavaBeans)的集成是构建企业级应用的...
### JavaEE5学习笔记01-JTA和数据库事务:深入解析与应用 #### 一、JavaEE5概览与核心组件 JavaEE5是Java Enterprise Edition的第五个版本,标志着企业级Java应用的一个重要里程碑。它引入了一系列重要的新特性,...
以上就是JavaEE学习笔记中可能涵盖的关键知识点,它们构成了JavaEE开发的基础,并且每个部分都有深入研究的价值。通过学习和实践这些技术,开发者能够构建出高效、稳定和可扩展的企业级Web应用。
作为JavaEE学习笔记,以下是相关的知识点总结: JavaEE架构 JavaEE架构主要由以下几个部分组成: * 客户端(Client):使用Java编写的应用程序,通过网络与服务器通信。 * web服务器(Web Server):负责处理...
- Java EE企业应用实战:通过实战案例分析,了解Java EE在真实环境下的应用,以及如何解决实际问题。 4. 专题深入资料: - JavaEE进阶之Spring事务深入浅出:虽然Spring是Java EE的一个补充框架,但它的事务管理...
JSF的优点包括强大的MVC架构、内置的事件处理机制、丰富的UI组件库以及与EJB和JPA等JavaEE组件的紧密集成。然而,它的学习曲线相对较陡峭,配置相对复杂,尤其是早期版本。此外,尽管JSF提供了数据验证和转换功能,...
同时,理解如何将JavaEE与其他技术如前端框架(Angular、React、Vue.js)、NoSQL数据库(MongoDB)、容器化工具(Docker)以及持续集成/持续部署(CI/CD)工具(Jenkins)相结合,也是提升技能的关键。 总之,...
1. **JavaEE基础**:首先,学员会学习Java的基础知识,包括Java语法、面向对象编程、异常处理、集合框架(如ArrayList、LinkedList、HashMap等)、多线程以及IO流。 2. **Servlet与JSP**:作为JavaEE开发的核心部分...
JAVAEE提供的服务包括但不限于Web容器、EJB容器、事务管理等。 3. **JAVAME**:Java微型版(Micro Edition),主要用于移动设备和嵌入式系统的应用开发。尽管随着智能手机和Android的兴起,JAVAME逐渐淡出主流市场...
【JavaEE技术体系详解】 JavaEE(Java Platform, Enterprise ...达内培训笔记涵盖了这些JavaEE的重要概念和技术,对于初学者和进阶开发者都是宝贵的学习资料,通过深入学习和实践,可以掌握企业级应用开发的关键技能。
在“学习JavaEE的day26”这个主题中,我们主要关注的是Java企业级应用开发的进阶内容。JavaEE,全称为Java Platform, Enterprise Edition,是Java平台针对服务器端和分布式应用程序的一个标准集合,提供了丰富的API...
web基础笔记 Web 基础知识 Web 应用通过浏览器访问,运行在远程的服务器上,访问网站。浏览器是通用的客户端,B/S 结构的客户端。服务器端内容更新客户端不要更新,更新对用户影响不大。 客户端和服务器端 ...
### 凯达Java学习全套笔记知识点解析 #### Java与Java EE概述 - **Java**: 是一种广泛使用的面向对象编程语言,具有平台独立性、安全性、可靠性和可移植性等特点。 - **Java EE (Enterprise Edition)**: 建立在...
这个压缩包可能包含各种教程、实战项目、示例代码、笔记文档等,覆盖了从理论到实践的各个方面,对于Java学习者来说,是一份非常宝贵的资源。通过系统学习这些内容,可以全面提高Java开发技能,为成为专业开发人员...
5. **数据集成**:学习如何将大数据处理的结果与Java EE应用中的数据进行整合,例如通过RESTful API或Web服务。 6. **项目管理**:实践部分会涉及项目规划、需求分析、系统设计、测试和部署等软件开发流程。 7. **...
根据给定的文件信息,我们可以总结出以下关于Java基础知识的关键知识点: ### Java平台与版本 - **Java平台分类**: - **J2SE (Java 2 Platform, Standard Edition)**:标准版,适用于桌面应用程序开发。 - **...
通过参与【传智播客EE十次方项目】,学员不仅可以学习到上述技术,还能体验到实际项目的开发流程,提升问题解决和团队合作的能力。提供的“5天项目十次方复习笔记”文档可以帮助学习者系统回顾整个项目的学习内容,...