2013-04-18 147 views
0

我有使用它的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不支持這個屬性,是不是?

+0

的tomcat是否支持實施一些所謂''? –

回答

1

應用1 /用戶名

所以部分名稱爲application1/username

字符串jndiValue = jndiValue =((上下文)新的InitialContext()查找( 「Java的:comp/env的」)。)查找( 「用戶名」)的toString();

因此,您正在查找部分名稱username

您也可以簡化它。你不需要嵌套Context,或者兩者Context泄漏或toString()部分之一:

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

我認爲你需要糾正「partial name ...」行。它是application1 /用戶名。 –

+0

@RaviTrivedi謝謝你,完成了。 – EJP