×

Loading...

谢谢, 但仍有一点不理解

本文发表在 rolia.net 枫下论坛根据答复: java:comp/env is a reference name , not a sun的硬性规定. you can directly use JNDI name.

这个"reference name" 在此作和理解? 它是某个Object的reference吗?
如果是, 那么是哪个Object?

这个"java:comp/env" 是否象保留字一样不能改?它是业内人士遵守的习惯还是另有什么来头?我是否可以用"java_comp/env"或"java:env"或"java:comp/"
等等来替掉"java:comp/env" ?

劳驾请帮我看一下我如下理解是否对:
因为采用的是InitialContext initial = new InitialContext();方式生成的InitialContext instance, 无任何property赋值,故lookup method 只可能用JNDI name或"java:comp/env/XXXXXXXX"来作参数?
其中"XXXXXXXX"部分为web-app_2_2.dtd或ejb_jar_1_!.dtd中ejb-ref-name
tag 定义的名字.

如果采用下面方式(具体在此使用的factory class及URL不一定对)生成的InitialContext 的instance的lookup method 是否可以直接使用ejb_jar_1_!.dtd中ejb-name tag 定义的EJB名字?

Properties prop = new Properties();
prop.setProperty(Context.INITIAL_CONTEXT_FACTORY,
"com.evermind.server.ApplicationClientInitialContextFactory");
prop.setProperty( Context.PROVIDER_URL,
"ormi://localhost/BMPSportsApp" );
prop.setProperty(Context.SECURITY_PRINCIPAL, "admin");
prop.setProperty(Context.SECURITY_CREDENTIALS, "123");

InitialContext initial = new InitialContext(prop);

Object homeObject = initial.lookup("BMPSportsBean");

实在感谢你的赐教.更多精彩文章及讨论,请光临枫下论坛 rolia.net
Report

Replies, comments and Discussions: