Bean的Context引用
每个bean 都有一个bean 的上下文即EJBContext ,SessionBean的继承后成为SessionContext(Entity Bean为EntityContext),他是bean到container的唯一Line,利用bean context ,bean能做很多事情,比如调用客户的安全信息,要求事物回滚,得到bean最近或Home的一个引用等等。
它一般在Bean类里面就定义好了 :
for example:
........
public class mySessionBean implements SessionBean{
.........
private SessionContext context;
..........
public void setSessionContext(SessionContext context){
this.context = context ;
..........
}
.........
}
JNDI上下文
JNDI上下文的话,是JNDI虚目录上的节点,InitialContext就是JNDI上下文,他是你进入容器树形结构的节点入口,每个bean都有自己特有的JNDI上下文,通过 JNDI,bean可以找到很多东西,包括资源管理连接工厂(CMP使用)
它一般都在客户要调bean逻辑的时候使用:
for examle:
public class client ....{
........
Context initial = new InitialContext();
Object objref = initial.lookup("myAccount");
AcHome home = (AcHome)PortableRemoteObject.narrow(objref,AcHome.class);
AccountRemote r = home.create(id,date,vc,check,damount);
.......
}
要注意区分这两者。
http://hi.baidu.com/changkongyinxue/blog/item/c1e6fffcd6075a80b901a0b0.html