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