У меня есть сайт, размещенный в Godaddy, где я использую JNDI для управления соединениями с БД. Godaddy использует Tomcat 5.5.27 с JDK 1.5. Я также использую те же версии локально.
JNDI отлично работает в моей локальной среде разработки, но когда я запускаю его в Godaddy, я получаю следующее сообщение об исключении:
Cannot create JDBC driver of class '' for connect URL 'null'
Я правильно разместил все на сервере Godaddy, как и в моей локальной системе.
Вот это context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context>
<!-- Specify a JDBC datasource -->
<Resource
name="jdbc/interviewzone"
auth="Container"
type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/interviewzone">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.mysql.jdbc.Driver</value>
</parameter>
<parameter>
<name>url</name>
<value>someurl</value>
</parameter>
<parameter>
<name>username</name>
<value>root</value>
</parameter>
<parameter>
<name>password</name>
<value>root</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
<parameter>
<name>removeAbandoned</name>
<value>true</value>
</parameter>
<parameter>
<name>removeAbandonedTimeout</name>
<value>300</value>
</parameter>
<parameter>
<name>logAbandoned</name>
<value>true</value>
</parameter>
</ResourceParams>
</Context>
Вот соответствующая часть моего кода Java:
Context initContext = new InitialContext();
DataSource dataSource = (DataSource) initContext.lookup("java:/comp/env/jdbc/interviewzone");
Connection conn = dataSource.getConnection(); // This throws exception.
Я включил ресурсы в web.xml
. Поскольку он работает локально нормально, я думаю, что в коде нет проблем. Я связался с Годадди, но они технически слабые. Они сказали, что проблема в моем коде, но я не согласен с ними, потому что он работает локально нормально.