我的方法必须尝试连接到其他数据库服务器。当我在Linux Server上运行应用程序时,一切正常。在Windows OS上运行时-我有java.net.SocketTimeoutException: Read timed out
private boolean pingServer(String host) {
String username = "username";
String password = "password";
boolean successful;
AS400 as400 = new AS400(host, username, password);
SocketProperties socketProperties = as400.getSocketProperties();
socketProperties.setLoginTimeout(TIMEOUT_MILLISEC);
socketProperties.setSoTimeout(TIMEOUT_MILLISEC);
as400.setSocketProperties(socketProperties);
try{
successful = as400.validateSignon();
} catch (AS400SecurityException e) {
successful = true;
} catch (IOException e) {
successful = false;
} catch (TransactionException e) {
successful = false;
}
as400.disconnectAllServices();
as400 = null;
return successful;
}
有人可以给我一些建议吗?
谢谢。
最佳答案
AS / 400连接使用许多必须可供您使用的网络端口。
尝试禁用您与服务器之间的所有防火墙,然后重试。这包括Windows系统上的软件防火墙(可能是防病毒套件的一部分)