0

Web アプリケーションと 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

WindowsでEclipse wtp(europa)でTomcat 6を使用しています。そして、すでに derby.jar と derbclinet.jar を WEB_INF\lib ディレクトリ内に配置しています...

この問題を解決するために私にできることはありますか?

ありがとう!

4

1 に答える 1

4

context.xml で DataSource を構成しているため、これを管理するのは Tomcat であり、webapp ではありません。

JDBC ドライバー derbyclient.jar を、webapp/WEB-INF/lib/ ではなく、$TOMCAT_HOME/lib/ ディレクトリーに配置する必要があります。

于 2011-02-11T22:31:37.637 に答える