0

我有一个 Web 应用程序试图访问在 WebSphere Application Server 中声明的 JNDI。JNDI 在Object pool managers. 但是,当我访问池时收到错误消息。错误说comp/env/pool is not found in context "java:"

我的代码是这样写的:

InitialContext initialContext = new InitialContext();
ObjectPoolManager opm = (ObjectPoolManager)initialContext.lookup("java:comp/env/pool");

通过以下代码访问池有效:

ObjectPoolManager opm = (ObjectPoolManager)initialContext.lookup("pool");

我很困惑,因为根据我在互联网上找到的内容,java:comp/env/它是 JNDI 的默认前缀。那么为什么它会在我的情况下导致错误?

谢谢!

4

1 回答 1

0

如果您在 web.xml 的 resource-ref 部分下声明了对对象池的引用,则只能使用 java:comp/env。

请参阅web.xml 中的资源引用是做什么用的?进一步解释。

于 2013-05-29T09:26:20.370 回答