2013-02-26 2 views
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 

Какое исключение? Я пытаюсь использовать DataSource .. это мой файл context.xml .. Я добавил файл XML в папке META-INF и добавил ojdbc14.jar в TOMCAT Lib папку ..Java DataSource

<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> 
+0

Вы добавили соответствующую информацию в 'web.xml', а? –

+0

Вы уверены, что используется определение контекста? Добавьте код, где приложение загружает его. – Kai

+0

это может быть слишком очевидно, но я надеюсь, что значение атрибута 'url' в теге' resource' не имеет квадратных скобок в нем ... – A4L

ответ

0

На вашем сервере приложений определен JNDI, и вы смотрите вверх, чтобы затем эта ошибка появлялась. Убедитесь, что на вашем сервере приложений есть jndi.

Это исключение вызывается, когда первоначальная реализация контекста не может быть создана. Политика выбора начальной реализации контекста описана в документации по классу InitialContext.

Это исключение может быть выбрано при любом взаимодействии с InitialContext, а не только при построении InitialContext. Например, реализация исходного контекста может лениво извлекать контекст только тогда, когда на него вызывают действительные методы. Приложение не должно иметь никакой зависимости от того, когда будет определено существование начального контекста.

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

Смежные вопросы