在JBOSS,TOCMAT上部署J2EE应用

类别:Java 点击:0 评论:0 推荐:

发布一个web应用,打包成war文件。单独发布一个EJB组件,打包成jar文件。对于一个J2EE应用,应该打包成ear文件。

在Jboss-Tomcat上部署EJB组件

部署到目录:<JBOSS_HOME>/server/default/deploy

/相关类文件
/ META-INF/ejb-jar.xml
/META-INF /jboss.xml

ejb.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>


<ejb-jar>
<description>BookStore Application</description>
<display-name>BookDB EJB</display-name>
<enterprise-beans>
<session>
<ejb-name>BookDBEJB</ejb-name>
<home>mypack.BookDBEJBHome</home>
<remote>mypack.BookDBEJB</remote>
<ejb-class>mypack.BookDBEJBImpl</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Bean</transaction-type>
</session>
</enterprise-beans>
</ejb-jar>

jboss.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<jboss>
<enterprise-beans>
<session>
<ejb-name>BookDBEJB</ejb-name>
<jndi-name>ejb/BookDBEJB</jndi-name>
</session>
</enterprise-beans>
</jboss>

打成jar包,将文件拷贝到发布目录下即可。

在Jboss-Tomcat上部署Web应用

保持原来的目录结构,惟一的改动应该在WEB-INF目录下增加一个jboss-web.xml文件

<?xml version="1.0" encoding="ISO-8859-1"?>

<jboss-web>
<ejb-ref>
<ejb-ref-name>ejb/BookDBEJB</ejb-ref-name>
<jndi-name>ejb/BookDBEJB</jndi-name>
</ejb-ref>
</jboss-web>

web.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app PUBLIC
'-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN'
'http://java.sun.com/j2ee/dtds/web-app_2_3.dtd'>

<web-app>


<!-- ### EJB References (java:comp/env/ejb) -->
<ejb-ref>
<ejb-ref-name>ejb/BookDBEJB</ejb-ref-name>
<ejb-ref-type>Session</ejb-ref-type>
<home>mypack.BookDBEJBHome</home>
<remote>mypack.BookDBEJB</remote>
</ejb-ref>

</web-app>

以上代码中声明了对BookDBEJB的引用,<ejb-ref-type>声明所引用的EJB类型,<home>声明EJB的home接口,<remote>声明EJB的Remote接口。在程序中可通过<ejb-ref-name>来获得EJB的引用:

InitialContext ic = new InitialContext();
Object objRef = ic.lookup("java:comp/env/ejb/BookDBEJB");

在程序中访问EJB组件,可以指定<ejb-ref-name>,也可以指定<jndi-name>。采用前者可以提高程序代码的独立性和灵活性。例如,如果JNDI的名字发生更改,不用修改程序代码,只要修改jboss-web.xml文件中的<ejb-ref-name>和<jndi-name>的映射关系。

打成war包,将文件拷贝到发布目录下即可。

在Jboss-Tomcat上部署J2EE应用

/EJB组件(*.jar文件)
/Web应用(*.war文件)
/META-INF/application.xml

application.xml文件

<?xml version="1.0" encoding="UTF-8"?>

<application>
<display-name>Bookstore J2EE Application</display-name>

<module>
<web>
<web-uri>bookstore.war</web-uri>
<context-root>/bookstore</context-root>
</web>
</module>

<module>
<ejb>bookdbejb.jar</ejb>
</module>

</application>

打成ear包,将文件拷贝到发布目录下即可。

    

本文地址:http://com.8s8s.com/it/it15060.htm