小编Dav*_*ias的帖子

EJB 3 Stub生成

我说有一个与ejb-3兼容的ejb

@Remote
interface Hai{
     String sayHai();
}
Stateless(name = "xxx", mappedname="yyy")
public class HaiImpl implements Hai{
    public String sayHai(){
        return "Hai";
    }
}
Run Code Online (Sandbox Code Playgroud)

我需要为这个EJB生成存根.但我不想使用websphere工具或maven工具.有没有办法使用jdk生成存根?

当您创建远程客户端时

 Hai hai = (Hai)ctx.lookup("yyy#com.zz.Hai");
 System.out.println(hai.sayHai());
Run Code Online (Sandbox Code Playgroud)

将在weblogic或jboss中工作,但在websphere中,即使是ejb 3,你也需要这样写

Object o = ctx.lookup("yyy");
Hai hai =    (Hai)javax.rmi.PortableRemoteObject.narrow(o,Hai.class);
System.out.println(hai.sayHai());
Run Code Online (Sandbox Code Playgroud)

在这种情况下,如果存根不存在于客户端,它将抛出异常,有一种方法可以使用websphere ejb stub generater工具生成存根.但我不想使用任何平台特定的工具.

java ejb

6
推荐指数
1
解决办法
8379
查看次数

标签 统计

ejb ×1

java ×1