我想使用我的jndi.properties文件,但它给了我错误信息。我试图用这段代码获取文件:
public class EJBTester {
...
Properties props;
InitialContext ctx;
{
props = new Properties();
InputStream inputStream = this.getClass().getClassLoader()
.getResourceAsStream("/jndi.properties");
try {
props.load(inputStream);
} catch (IOException ex) {
ex.printStackTrace();
}
try {
ctx = new InitialContext(props);
} catch (NamingException ex) {
ex.printStackTrace();
}
}
...
}
我的jndi.properties文件位于我项目的主程序包中,看起来像这样:
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=localhost
我正在使用jboss 6.2 eap。错误如下:
Exception in thread "main" java.lang.NullPointerException
at java.util.Properties$LineReader.readLine(Properties.java:434)
at java.util.Properties.load0(Properties.java:353)
at java.util.Properties.load(Properties.java:341)
at com.tutorialspoint.test.EJBTester.<init>(EJBTester.java:26)
at com.tutorialspoint.test.EJBTester.main(EJBTester.java:40)
换句话说这行ctx = new InitialContext(props);无法载入道具。
如何加载此jndi.properties文件?