EJB3(4)

同一个会话bean也可以实现多个远程接口,不过代码上有些地方要注意,首先写第一个接口:

@Remote
public   interface  HelloRemote  {

    String sayHi(String name);
}

第二个接口:
@Remote
public   interface  HelloRemote1  {
    
    String sayBye(String name);
}

接下来写会话bean,同时实现以上两个接口:
@Stateless(mappedName = " hello " )
public   class  HelloBean  implements  HelloRemote, HelloRemote1  {

    
public String sayHi(String name) {
        
return "Hi " + name; 
    }


    
public String sayBye(String name) {
        
return "Bye " + name;
    }
    
}

注意这里用到了mappedName元素,这个很关键。把EJB模块打包部署,接下来在远程客户端测试,先写Servlet:
    @EJB(mappedName = " hello#ejb.HelloRemote1 " )
    
private  HelloRemote1 helloBean1;
    @EJB(mappedName
= " hello#ejb.HelloRemote " )
    
private  HelloRemote helloBean;

注意@EJB标注里也使用了mappedName元素,值的样式是:JNDI名#包名.接口名。再看Jsp:
<%
            InitialContext ctx 
=   new  InitialContext();
            HelloRemote helloBean 
=  (HelloRemote)ctx.lookup( " hello#ejb.HelloRemote " );
            out.println(helloBean.sayHi(
" Tom " ));
            HelloRemote1 helloBean1 
=  (HelloRemote1)ctx.lookup( " hello#ejb.HelloRemote1 " );
            out.println(
" <br> "   +  helloBean1.sayBye( " Tom " ));
%>

和Servlet中的一样
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值