是否可以使用 Weblogic Server 管理控制台 (Weblogic 10.0) 或通过编辑服务器的配置文件 (config.xml) 将自定义对象(字符串或 URL)添加到 JNDI?
问问题
7002 次
3 回答
6
我不这么认为。引用JNDI 树中的加载对象:
使用管理控制台,您可以在 JNDI 树中加载 WebLogic Server J2EE 服务和组件,例如 RMI、JMS、EJB 和 JDBC 数据源。
事实上,我找不到添加String
或URL
使用控制台的方法。
AFAIK,标准方法是env-entry
在您的部署描述符(web.xml,ejb-jar.xml)中放置一个:
<env-entry>
<env-entry-name>string/foo</env-entry-name>
<env-entry-type>java.lang.String</env-entry-type>
<env-entry-value>foobar</env-entry-value>
</env-entry>
<env-entry>
<env-entry-name>url/bar</env-entry-name>
<env-entry-type>java.net.URL</env-entry-type>
<env-entry-value>http://foobar/</env-entry-value>
</env-entry>
于 2010-01-11T16:46:47.070 回答
1
我遇到了完全相同的问题。例如,在 Websphere 中,我可以向 JNDI 添加任意参数,例如临时目录、密码和其他信息,而无需重新编译/重建 EAR。
我已经搜索了一段时间,似乎 Weblogic 缺少此功能。我所做的是编写一个帮助类,它首先在 JNDI 中搜索给定的配置键,如果没有找到,则返回搜索环境或系统变量。
也许这可以得到增强,以搜索以应用程序名称或上下文根为前缀的那些属性,这些属性是在运行时发现的,以避免在部署同一 EAR 的多个实例时发生名称冲突。
于 2011-05-09T17:33:30.290 回答
1
您可以,但如果使用集群,您将失去高可用性。请参阅:http ://docs.oracle.com/cd/E11035_01/wls100/jndi/jndi.html#wp475702
于 2014-08-19T11:25:58.687 回答