java.lang.ClassNotFoundException: org.apache.tomcat.jdbc.pool DataSourceFactory - PullRequest
13 голосов
/ 20 апреля 2011

Я исследую отход от пула соединений Oracle и использование пула соединений Tomcat.Я следовал бесчисленному примеру для настройки <Resource> в Tomcat's /conf/server.xml.Я нашел отличную информацию здесь .Однако, когда я запускаю Tomcat, я получаю следующую ошибку:

javax.naming.NamingException: не удалось загрузить класс фабрики ресурсов [Исключением корня является java.lang.ClassNotFoundException: org.apache.tomcat.jdbc.pool DataSourceFactory]

Я использую Tomcat 6.0.Моя <Resource> конфигурация в /conf/server.xml:

<Resource 
    name="jdbc/myds"
    type="javax.sql.DataSource"
    auth="Container" 
    factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
    driverClassName="oracle.jdbc.OracleDriver"
    url="jdbc:oracle:thin:@10.10.10.33:1234:myds"
    user="myuname"
    password="mypasswd"
/>

Я понимаю, что Tomcat не может найти фабричный класс, но я не понимаю почему ?Я не вижу ничего в документации о добавлении дополнительных .jar файлов.Я посмотрел в дистрибутиве и все равно не могу найти золотой .jar.

Может кто-нибудь сказать мне, что я делаю неправильно?

1 Ответ

35 голосов
/ 20 апреля 2011

Пул JDBC Tomcat был введен в Tomcat 7.0.19, но вы пытаетесь использовать его в Tomcat 6.0 без дальнейшей настройки.

Для Tomcat 6.0 вам необходимо вручную загрузить и удалить последний выпуск файла tomcat-jdbc.jar в папку /lib установки Tomcat.

...