Перемещение содержимого META-INF / context.xml в tomcat / conf - PullRequest
1 голос
/ 14 апреля 2011

Мы пытаемся извлечь параметры конфигурации среды из наших файлов war, поэтому мы можем развернуть один и тот же файл war на серверах dev / test / prod tomcat и не должны изменять содержимое файла конфигурации war.

Когда я перемещаю META-INF / context.xml для соединения с базой данных в conf / server.xml, соединение с базой данных больше не работает, со следующей ошибкой, кто-нибудь знает, почему это будет?

server.xml:

<GlobalNamingResources>
    ....
    <Resource
            url="jdbc:oracle:thin:@hostname:1521/something"
            username="username"
            name="jdbc/mydb"
            password="password"
            auth="Container"
            driverClassName="oracle.jdbc.driver.OracleDriver"
            maxActive="5" maxIdle="2" maxWait="10000"
            removeAbandoned="true"
            type="javax.sql.DataSource"
            />
</GlobalNamingResources>

Ошибка выглядит следующим образом:

INFO: Deploying web application directory ROOT
Problem reading system configuration. Cannot create JDBC driver of class '' for connect URL 'null' (java.io.IOException: Cannot create JDBC driver of class '' for connect URL 'null')
java.io.IOException: Cannot create JDBC driver of class '' for connect URL 'null'
    at au.edu.unimelb.helper.SettingManager.loadSettings(SettingManager.java:212)
    at au.edu.unimelb.helper.SettingManager.<init>(SettingManager.java:53)

(И да, файл odjbc6.jar находится в $ TOMCAT_HOME / lib /)

Ответы [ 2 ]

3 голосов
/ 14 апреля 2011

Наконец-то все получилось, документация Tomcat немного вводит в заблуждение. Вы можете поместить содержимое вашего META-INF/context.xml прямо в $TOMCAT_HOME/conf/context.xml, и оно прекрасно работает.

0 голосов
/ 25 ноября 2012

Может отсутствовать <ResourceLink> в context.xml (либо в META-INF/context.xml веб-приложения, либо в $TOMCAT_HOME/conf/context.xml, например:

        <ResourceLink name="jdbc/mydb"
              type="javax.sql.DataSource"
              global="jdbc/mydb"/> 
...