0
javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file:  java.naming.factory.initial
    at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
    at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
    at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)
    at javax.naming.InitialContext.lookup(Unknown Source)
    at com.connect.DBHelper.getConnection(DBHelper.java:15)
    at com.connect.DemoConnect.main(DemoConnect.java:13)
java.lang.NullPointerException

有什么例外?我正在尝试使用数据源..这是我的 context.xml 文件..我在 meta-inf 文件夹中添加了 xml 文件,并在 tomcat lib 文件夹中添加了 ojdbc14.jar..

<Context>
    <WatchedResource>WEB-INF/web.xml</WatchedResource>
    <Resource name="jdbc/mydatasource" 
              auth="Container"
              type="javax.sql.DataSource" 
              username="YOUR_USERNAME" 
              password="YOUR_PASSWORD"
              driverClassName="oracle.jdbc.driver.OracleDriver"
              url="jdbc:oracle:thin:[oracletrg/oracle]@10.180.168.112[:1521]/orcl?autoReconnect=true"
              maxActive="10" 
              maxIdle="4"/>
</Context>
4

1 回答 1

0

在您的应用程序服务器中定义了 JNDI,并且您查找然后会出现此错误。请确保您的应用程序服务器完成了任何 jndi。

当无法创建初始上下文实现时,将引发此异常。InitialContext 类的文档中描述了如何选择初始上下文实现的策略。

在与 InitialContext 的任何交互过程中都可能引发此异常,而不仅仅是在构造 InitialContext 时。例如,初始上下文的实现可能仅在调用实际方法时才延迟检索上下文。应用程序不应依赖于何时确定初始上下文的存在。

http://download.oracle.com/javase/6/docs/api/javax/naming/InitialContext.html

于 2013-02-26T10:34:35.500 回答