最近写一小段代码在aix 5.3系统中获取webloigc服务的状态。

执行的命令是

java weblogic.Admin -username weblogic -password weblogic123456 GETSTATE

出现的结果是

Failed to connect to t3://127.0.0.1:7001: Destination unreachable; nested exception is: 
        java.net.ConnectException: A remote host refused an attempted connect operation.; No available router to destination

很明显,它找不到路由。

试过以下几点:

1. 可以确定weblogic已经启动了,并且运行正常。

2.ping 127.0.0.1和ping localhost均正常

3. 通过指定下面url参数,也无用

java weblogic.Admin -url t3://127.0.0.1:7001 -username weblogic -password weblogic123456 GETSTATE
java weblogic.Admin -url t3://localhost:7001 -username weblogic -password weblogic123456 GETSTATE
java weblogic.Admin -url t3://0.0.0.0:7001 -username weblogic -password weblogic123456 GETSTATE

最后在url参数中将地址设置为此机器对外的ip地址,命令才运行成功。

java weblogic.Admin -url t3://135.32.21.21:7001 -username weblogic -password weblogic123456 GETSTATEjava weblogic.Admin -url t3://135.32.21.21:7001 -username weblogic -password weblogic123456 GETSTATE

输出结果为:Current state of "AdminServer" : RUNNING

很奇怪localhost与127.0.0.1竟然无效,反而使用对外的ip才有效果。