У меня есть приложение java (использующее jsp), которое подключается к серверу SQL для аутентификации в пользовательской таблице (позже будет LDAP). При выходе я звоню:
SARConnection.getInstance().getSARConnection().close();
Однако, когда я go для повторного входа в систему, я получаю сообщение об ошибке:
The connection is closed.
Есть ли способ, которым я могу очистить соединение, как я полагаю, приложение сохранило соединение, даже если оно закрыто, что не позволяет мне создать новое.
Метод подключения следующий и вызывается при входе в систему:
public Connection newSARConnection() {
Connection connect = null;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
connect = DriverManager.getConnection(conURL, conUser, conPassword);
}
catch (ClassNotFoundException ex) {
System.err.println("SQLException: " + ex.getMessage());
System.err.println(ex);
}
catch (SQLException ex) {
System.err.println("SQLException: " + ex.getMessage());
System.err.println("SQLState: " + ex.getSQLState());
System.err.println("VendorError: " + ex.getErrorCode());
System.err.println("Driver loaded, but cannot connect to db: " + conURL);
}
catch (Exception ex) {
System.err.println("Check classpath. Cannot load db driver: " + "com.microsoft.sqlserver.jdbc.SQLServerDriver");
}
mycon = connect;
return connect;
}
public Connection getSARConnection() {
return mycon;
}
Спасибо.