webapp의 .jsp 페이지를 통해 postgresql db에 연결하는 JNDI 데이터 소스에 액세스 할 때마다 Tomcat 7.0.12를 사용하고이 오류가 발생합니다.''연결 URL에 대해 ''의 JDBC 드라이버를 만들 수 없습니다. '
SEVERE: Servlet.service() for servlet [jsp] in context with path [] threw exception
[java.lang.RuntimeException: Cannot create JDBC driver of class '' for connect URL 'null'] with root cause
java.lang.NullPointerException
at sun.jdbc.odbc.JdbcOdbcDriver.getProtocol(JdbcOdbcDriver.java:507)
at sun.jdbc.odbc.JdbcOdbcDriver.knownURL(JdbcOdbcDriver.java:476)
at sun.jdbc.odbc.JdbcOdbcDriver.acceptsURL(JdbcOdbcDriver.java:307)
at java.sql.DriverManager.getDriver(DriverManager.java:253)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1437)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
postgresql JDBC 드라이버는 내 CATALINA/lib 폴더에 있습니다. 나는이 개 다른 웹 어플리케이션을 가지고
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>ROOT</display-name>
<resource-ref>
<description>Read only webdb connector.</description>
<res-ref-name>jdbc/webdbro</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<resource-ref>
<description>Read write webdb connector.</description>
<res-ref-name>jdbc/webdbrw</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<resource-ref>
<description>Read only shadow db connector.</description>
<res-ref-name>jdbc/shadowdbro</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
이상한 것은이 : 여기
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource name="jdbc/webdbro" auth="Container" type="javax.sql.DataSource"
driverClassName="org.postgresql.Driver" url="jdbc:postgresql://127.0.0.1:5432/webdb"
username="webdbro" password="pass" maxWait="-1" removeAbandoned="true" removeAbandonedTimeout="30"/>
<Resource name="jdbc/webdbrw" auth="Container" type="javax.sql.DataSource"
driverClassName="org.postgresql.Driver" url="jdbc:postgresql://127.0.0.1:5432/webdb"
username="webdbrw" password="pass" maxWait="-1" removeAbandoned="true" removeAbandonedTimeout="30"/>
<Resource name="jdbc/shadowdbro" auth="Container" type="javax.sql.DataSource"
driverClassName="org.postgresql.Driver" url="jdbc:postgresql://127.0.0.1:5432/shadowdb"
username="shadowdbro" password="pass" maxWait="-1" removeAbandoned="true" removeAbandonedTimeout="30"/>
</Context>
내 WEB-INF/web.xml에있다 : 여기
내 META-INF/context.xml에있다 동일한 구성 (web.xml 및 context.xml)을 사용하여 동일한 Tomcat 서버에서 실행되므로 JNDI 방법을 사용하여 데이터베이스에 연결할 수 있으며 두 웹 응용 프로그램 모두 완벽하게 작동합니다. 데이터베이스를 쿼리하고 업데이트 할 수 있습니다. 문제 또는 예외를 TIA ...
예외는 Tomcat이 사용자가 구성한 ''을 읽거나 발견하지 못했음을 나타냅니다. Eclipse 내부에서 웹 애플리케이션을 실행하고 있습니까? –
BalusC