Topic: 请问在JBoss下面部署的EJB如何在Resin下面使用呢? |
Print this page |
1.请问在JBoss下面部署的EJB如何在Resin下面使用呢? | Copy to clipboard |
Posted by: lvjing79 Posted on: 2005-03-09 12:35 我是用Eclipse+Lomboz+JBoss4.0部署的EJB,现在想在Resin下面使用这个EJB,我该如何做呢?有没有办法在Resin下面直接部署EJB呢? |
2.Re:请问在JBoss下面部署的EJB如何在Resin下面使用呢? [Re: lvjing79] | Copy to clipboard |
Posted by: citybeat Posted on: 2005-03-27 20:55 Resin自带的文档: --------------------------------------------------------------------------------------------------- From Dave Dribin: To have a Resin web application use jBoss, do the following: Copy "ejb.jar", "jboss-client.jar", and "jnp-client.jar" from $JBOSS_HOME/client into WEB-INF/lib. Copy the EJB jar file that you put in $JBOSS_HOME/deploy into WEB-INF/lib. Put the following <web-app> into resin.conf: <web-app id='/web-app-path' app-dir='/real/path/of/web-app'> <jndi-link> <jndi-name>java:comp/env/ejb</jndi-name> <jndi-factory>org.jnp.interfaces.NamingContextFactory</jndi-factory> <init-param java.naming.provider.url="localhost:1099"/> </jndi-link> </web-app> Of course change the JNDI URL if you're running jBoss on a different machine. Make sure you map all of your EJBs to the "ejb/" JNDI context. For example, I have this in my jboss.xml: <enterprise-beans> <entity> <ejb-name>UserBean</ejb-name> <jndi-name>ejb/UserHome</jndi-name> </entity> .... other beans .... </enterprise-beans> This way you can lookup all the Home interfaces in the "java:comp/env/ejb/" context. I've attached a simple JSP that shows how to access the User EJB. And don't forget that if you re-deploy your beans to jBoss, you should copy over the jar file into WEB-INF and restart Resin. Hope that helps! -Dave <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>EJB Test</title> </head> <body bgcolor="#FFFFFF"> <%@ page import='javax.naming.*' %> <%@ page import='ejbeans.*' %> <%@ page import='javax.rmi.*' %> <h1 align=center>EJB Test</h1> <% // Get a naming context InitialContext jndiContext; Object ref; // Get a reference to a UserHome Bean jndiContext = new InitialContext(); ref = jndiContext.lookup("java:comp/env/ejb/UserHome"); int userPK; UserHome userHome; User user; userHome = (UserHome) PortableRemoteObject.narrow (ref, UserHome.class); userPK = Integer.parseInt(request.getParameter("pk")); user = userHome.findByPrimaryKey(new UserPK(userPK)); %> <table border="3" width="100%"> <tr> <th> ID </th> <th> First Name </th> <th> Last Name </th> </tr> <tr> <th> <%= user.getId() %> </th> <th> <%= user.getFirstName() %> </th> <th> <%= user.getLastName() %> </th> </tr> </table> </body> </html> |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |