web访问ejb测试 详解

来源:互联网 发布:用手机怎么改淘宝差评 编辑:程序博客网 时间:2024/06/05 07:48

以上是最后的文件层次结构。 (源码下载窗口:http://download.csdn.net/detail/shuai_1314/290208 )

test.jsp:

<%@ page contentType="text/html; charset=GBK" import="java.util.*,javax.naming.*,javax.ejb.*,java.rmi.*,javax.rmi.*,com.accp.*"%><%try{Context inital = new InitialContext();Object obj = inital.lookup("Dog");DogHome home = (DogHome)PortableRemoteObject.narrow(obj,obj.getClass());Dog dog = home.create();dog.sayHello("LiuKuan");                out.println("jboss命令行输出'LiuKuan'");}catch(Exception ex){out.println(ex);}%>

web.xml: 里面什么实际内容都没有。

ejb-jar.xml:里面的主体内容为:

<session>      <display-name>Dog</display-name>      <ejb-name>Dog</ejb-name>      <home>com.accp.DogHome</home>      <remote>com.accp.Dog</remote>      <ejb-class>com.accp.DogBean</ejb-class>      <session-type>Stateless</session-type>      <transaction-type>Container</transaction-type></session>

jboss.xml:里面的主体内容为:

<session>      <ejb-name>Dog</ejb-name>      <jndi-name>Dog</jndi-name></session>

特别在注意:上面 jndi-name 是Dog,而不是默认的 DogBean ;

当把DogBean变为Dog时,命令行窗口下输出:(若不改此值,则报错! 如果test.jsp和jboss.xml中的jndi-name都为DogBean也通过!)

将aWeb.war和Dog.jar都放在默认部署目录下:D:\jboss-5.1.0GA\server\default\deploy

在浏览器地址栏输入:http://localhost:8080/aWeb/test.jsp

则在网页输出:jboss命令行输出'LiuKuan'   

在jboss命令行窗口输出:LiuKuan

附上DogBean.java源文件:(其他代码XDoclet自动生成)

package com.accp;import java.rmi.RemoteException;import javax.ejb.CreateException;import javax.ejb.EJBException;import javax.ejb.SessionBean;import javax.ejb.SessionContext;/** * @ejb.bean name="Dog" *jndi-name="DogBean" *type="Stateless"  *  **/public class DogBean implements SessionBean {/** * @ejb.interface-method *view-type="remote" **/public void sayHello(String s){ System.out.println(s);}public void ejbActivate() throws EJBException, RemoteException {// TODO Auto-generated method stub}public void ejbPassivate() throws EJBException, RemoteException {// TODO Auto-generated method stub}public void ejbRemove() throws EJBException, RemoteException {// TODO Auto-generated method stub}public void setSessionContext(SessionContext arg0) throws EJBException,RemoteException {// TODO Auto-generated method stub}public void ejbCreate()throws CreateException{}}


 

原创粉丝点击