我有一个ejb-3兼容EJB,说EJB 3存根代
@Remote
interface Hai{
String sayHai();
}
Stateless(name = "xxx", mappedname="yyy")
public class HaiImpl implements Hai{
public String sayHai(){
return "Hai";
}
}
,我需要生成存根此EJB。但我不想使用websphere工具或maven工具。 有没有什么方法可以使用jdk生成存根?
当您创建远程客户端
Hai hai = (Hai)ctx.lookup("yyy#com.zz.Hai");
System.out.println(hai.sayHai());
将在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());
在这种情况下,如果存根不在客户端呈现,它会抛出异常,有一种方法可以使用websphere ejb stub生成器工具生成存根。但我不想使用任何平台特定的工具。
是否需要生成受EJB 2.x互操作性驱动的存根控件或为什么必须生成存根控件? – 2012-07-25 11:57:56
请参阅更新问题。 – 2012-07-25 12:22:58