我定义了一个接口:
interface ServiceRemote{
remoteMethod();
}
和一个接口
interface ServiceLocal{
localMethod();
}
接着是一个实现类:
@stateless
@Remote({ServiceRemote.class})
@Local({ServiceLocal.class})
public class ServiceImpl() implements ServiceRemote,ServiceLocal{
private String a = "哈哈哈哈";
public void localMethod(){
System.out.println("本地方法"+a);
}
remoteMethod(){
System.out.println("远程方法"+a);
}
}
我现在在远程客户端:把ServiceRemote复制过来(此时它只有一个remoteMethod,跟服务器端一致),并且为它增加了一个localMethod()方法(这一步是为了测试能不能访问本地方法)。
第一次提问,望高手不吝指教!
现在在远程客户端调用的时候发现竟然可以引用localMethod(即可以通过它访问到a字符串)!
按理说,我上面已经定义了ServiceLocal是本地接口了,虽然实现类有它的方法,但是客户端应该也不能直接引用吧?
求教,ejb远程客户端引用的规则!