Я получаю сбой линии связи, когда приложение пытается установить соединение с БД.
[#|2010-04-08T20:09:57.825+0300|SEVERE|glassfish3.0|javax.enterprise.system.std.com.sun.enterprise.v3.services.impl|_ThreadID=24;_ThreadName=Thread-1;|Cannot connect to database server = com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.|#]
Именно в этой строке:
Statement s = conn.createStatement();
, где conn определяется следующим образом:
private static java.sql.Connection conn;
Для этого приложения я установил пул соединений с параметрами по умолчанию, и в настоящее время оно (приложение) использует как JPA, так и прямые запросы JDBC. Восстановление пула соединений ничего не дало, ping пула соединений дал следующее сообщение:
Ping Connection Pool for pool is Failed. Ping failed Exce
ption - Connection could not be allocated because: Communications lin
k failure%%%EOL%%%%%%EOL%%%The last packet sent successfully to the s
erver was 0 milliseconds ago. The driver has not received any packets
from the server. Please check the server.log for more details.%%%EOL
%%%Ping failed Exception - Connection could not be allocated because:
Communications link failure
и очистка пула соединений дала:
com.sun.enterprise.admin.cli.CommandException: remote failure: Failed to flush connection pool ...
Однако я могу подключиться к базе данных из терминала. Кроме того, у меня есть такое же приложение, работающее на моей локальной машине с идентичными настройками пула соединений.
Кто-нибудь имеет представление о том, что происходит или как решить проблему?