Tomcat dataSource から接続を取得するときに問題があります。
構成ファイルは次のとおりです。
server.xml
<Resource name="jdbc/mssql" auth="Container"
type="javax.sql.DataSource" removeAbandoned="true"
removeAbandonedTimeout="30" maxActive="-1"
maxIdle="-1" maxWait="10000" username="xxx" password="xxx" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://xxx.xxx.xxx.xxx:1433;databaseName=XXX" />
context.xml
<ResourceLink global="jdbc/mssql" name="jdbc/mssql" type="javax.sql.DataSource" />
私のアプリケーションコードから:
InitialContext initContext = new InitialContext();
if(initContext == null) {
String message = "There was no context in tomcat server..";
throw new Exception(message);
}
DataSource datasourceLocal = null;
datasourceLocal = (DataSource)initContext.lookup("java:/comp/env/jdbc/mssql");
if(datasourceLocal == null){
String message = "Could not find the dataSource in tomcat server..";
throw new Exception(message);
}
else {
logger.info("ConnPool Success..");
}
Connection conn = datasourceLocal.getConnection();
私は 2 つのデータベース サーバー (IP を xxx.xxx.xxx.xxx に置き換えます) を持っています。最初のサーバーserver.xml
では問題なく動作しますが、2 番目のサーバーでは、取得中の接続行でハングするだけです (この前後にトレースを入れます)。ライン)。