0

我在 WAS 7.0.0.25 中创建了一个动态 Web 项目。我已在 WAS 中将数据源配置为 jdbc/DWLConfig。我正在尝试从我创建的 Web 项目的 servlet 中查找此数据源。

如果我给 java:comp/env/jdbc/DWLConfig,它会给我 NameNotFoundException。但如果我给 jdbc/DWLConfig,那么它工作正常。

实际上,从 servlet 中,我正在调用另一个我无权编辑的项目,它总是看起来像 java:comp/env/jdbc/DWLConfig。所以它对我来说是个例外。

我需要在我创建的 Web 项目中添加任何引用吗?

4

1 回答 1

0

该问题可能与基本 JNDI 有关。您会从以下示例中注意到为什么它不起作用:

Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");

// Right
DataSource ds = (DataSource) envCtx.lookup("jdbc/DWLConfig");

// Wrong. because base JNDI already created.
DataSource ds = (DataSource) envCtx.lookup("java:comp/env/jdbc/DWLConfig");
于 2013-09-18T21:19:04.570 回答