Генерация заглушки EJB 3

У меня есть ejb -3 совместимый ejb, скажем

@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. Но я не хочу использовать какие-либо инструменты для конкретной платформы.

6
задан thesquaregroot 1 April 2014 в 20:20
поделиться