Junit 测试在使用 Simple-jndi (simple-jndi-0.18.2.jar) 调用 InitialC



我正在尝试测试连接到数据库的Web应用程序 - 我的Junit代码不进行连接。

设置按 https://github.com/h-thurow/Simple-JNDI

失败在 InitialContext(( 上

抛出其中许多错误:

SEVERE: 路径: [路径][类].java ctxt: javax.naming.InitialContext@5e29e202 子名: 2019-9-16上午10:24:39 org.osjava.sj.loader.NioBasedJndiLoader$MySimpleFile访客访问文件 严重: javax.naming.NotContextException: rConfig 已被新的 RequestConfig(config, logger( 占用;

这些不是 JNDI 名称。

jndi.properties 已正确放置并位于运行时。 DataSource.Properties 也已设置。

正在测试的代码(即无法更改(是

cntxt = new InitialContext();
DataSource ds = (DataSource) cntxt.lookup(databaseResource);
conn = ds.getConnection();

看起来在org.osjava.sj.root目录中有两个属性,xml或ini文件,带有"rConfig"条目,并且这些文件位于同一子目录中。找到的第一个文件将"new RequestConfig(config, logger("应用于"rConfig",例如

rConfig = new RequestConfig(config, logger)

也许org.osjava.sj.root没有指向你期望它指向的地方。