【问题标题】:"lookup-name" of JNDI entry in tomcattomcat 中 JNDI 条目的“查找名称”
【发布时间】:2013-04-18 11:21:57
【问题描述】:

我有几个应用程序使用在其 web.xml 中配置的 JNDI 属性:

<env-entry>
    <env-entry-name>application1/username</env-entry-name>
    <env-entry-type>java.lang.String</env-entry-type>
    <env-entry-value>admin3</env-entry-value>
    <lookup-name>username</lookup-name>
</env-entry>

我无法通过查找名称获取条目,以下代码返回 null:

String jndiValue = jndiValue = ((Context) new InitialContext().lookup("java:comp/env")).lookup("username").toString();

好像Tomcat不支持这个属性吧?

【问题讨论】:

  • tomcat 实现是否支持称为&lt;lookup-name&gt; 的东西?

标签: tomcat tomcat7 jndi


【解决方案1】:

应用程序1/用户名

所以部分名称是application1/username

String jndiValue = jndiValue = ((Context) new InitialContext().lookup("java:comp/env")).lookup("username").toString();

所以您正在查找部分名称username

您也可以简化它。您不需要嵌套的Context,或者两个Context 泄漏,或者toString() 部分:

Context initialContext = new InitialContext();
String jndiValue = jndiValue = initialContext.lookup("java:comp/env/application1/username");
initialContext.close();

【讨论】:

  • 我认为您需要更正“部分名称...”行。它是 application1/用户名。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-09
  • 1970-01-01
  • 2014-12-24
  • 1970-01-01
  • 2010-09-08
相关资源
最近更新 更多