У меня есть простой веб-сервис, который пытается открыть соединение с базой данных.
Я использую jax-ws, Oracle 12 c DB, Tomcat 9, Java 8.
Может кто-нибудь опубликовать правильный способ сделать это?
Пока что я загрузил ojdbc7.jar и ucp.jar в каталог $ TOMCAT_HOME / lib.
- Что входит в applicationPath / META-INF / web. xml ?
Сейчас у меня есть следующее:
<resource-ref>
<res-ref-name>jdbc/UCPPool</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
Что входит в TOMCAT_HOME / conf / server. xml?
Сейчас у меня есть следующее:
<context docbase="demods" path="/demods" reloadable="true">
<Resource
name="jdbc/UCPPool"
auth="Container"
factory="oracle.ucp.jdbc.PoolDataSourceImpl"
type="oracle.ucp.jdbc.PoolDataSource"
description="Pas testing UCP Pool in Tomcat"
connectionFactoryClassName="oracle.jdbc.pool.OracleDataSource"
minPoolSize="2"
maxPoolSize="5"
inactiveConnectionTimeout="20"
user="test"
password="test"
url="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oracleDB12c)(PORT=1563))(CONNECT_DATA=(SERVICE_NAME=PPS)))"
connectionPoolName="UCPPool"
validateConnectionOnBorrow="true"
sqlForValidateConnection="select 1 from DUAL" />
</context>
Что входит в TOMCAT_HOME / conf / context. xml?
У меня сейчас нет ничего в этом файле.
Здесь это код, который я использую для настройки соединения JDB C:
Context ctx = new InitialContext();
Context envContext = (Context) ctx.lookup("java:comp/env");
DataSource ds = (DataSource) envContext.lookup("jdbc/UCPPool");
Connection conn = null;
try {
conn = ds.getConnection();
}
catch (SQLException e) {
return e.getMessage();
}
Сообщение, возвращаемое веб-службой:
"Cannot create JDBC driver of class '' for connect URL 'null'"
Что я делаю неправильно?
Заранее спасибо!