Не удается использовать Java DB с платформой ZK - ОШИБКА: невозможно загрузить класс драйвера JDBC 'org.apache.derby.jdbc.ClientDriver' - PullRequest
0 голосов
/ 12 февраля 2011

Я много раз пытался установить соединение между моим веб-приложением и Derby, и я получал следующие сообщения об ошибках в консоли eclipse:

INFO: Server startup in 3772 ms

ERROR: Cannot load JDBC driver class 'org.apache.derby.jdbc.ClientDriver'

ERROR: Cannot load JDBC driver class 'org.apache.derby.jdbc.ClientDriver'

11/02/2011 19:08:53 org.apache.catalina.core.StandardContext reload 


My class and database definition is showed bellow:

// Obtain our environment naming context            
javax.naming.Context initCtx = new InitialContext();

javax.naming.Context envCtx = (Context) initCtx.lookup("java:comp/env");


// Look up our data source by the name we gave it when we created it.
// In this case that's "jdbc/customer".
javax.sql.DataSource ds = (DataSource) envCtx.lookup("jdbc/customer");

conn = ds.getConnection();

And my web.xml and context are showed bellow.

in context.xml ...

Resource name="jdbc/customer" 
auth="Container"
type="javax.sql.DataSource"
username="qwert"
password="asdf"
driverClassName="org.apache.derby.jdbc.ClientDriver"
url="jdbc:derby://localhost:1527/C:\\testes_db\\customer;create=true;"
       maxActive="8"

and in the web.xml ...

res-ref-name jdbc/customer

res-type javax.sql.DataSource

res-auth Container


-- my second attempt 

resource-env-ref-name jdbc/customer

resource-env-ref-type javax.sql.DataSource

Я использую Tomcat 6 с eclipse wtp (europa) вокна.И я уже поместил derby.jar и derbclinet.jar в каталог WEB_INF \ lib ...

Есть что-то, что я могу сделать, чтобы решить эту проблему?

Спасибо!

1 Ответ

4 голосов
/ 12 февраля 2011

Поскольку вы настраиваете источник данных в context.xml, этим управляет Tomcat, а не ваше веб-приложение.

Вы должны поместить драйвер JDBC, derbyclient.jar, в каталог $ TOMCAT_HOME / lib /, а не в yourwebapp / WEB-INF / lib /

...