0

我有一个 jboss 服务器正在运行,并且在 webapplication 里面有下面的代码。问题是我无法连接到服务器。有趣的是,如果我写 127.0.0.1 而不是 0.0.0.0 一切都可以。

我正在使用以下命令运行 jboss 服务器:

#!/bin/sh
nohup sh run.sh -b 0.0.0.0 -c crm &

这是示例代码

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.URL;

public class Test{
        public static void main(String []args){
                System.out.println("TEST");
                System.setProperty("java.net.preferIPv4Stack" , "true");
                String url="http://0.0.0.0:8080/webapp/vacancies?rabota=rabota&area=7232&speciality=Стораж&email=&phone=77019813144";
                System.out.println("START");
                try{
                        URL yahoo = new URL(url);
                        BufferedReader in = new BufferedReader(new InputStreamReader(yahoo.openStream()));
                        String inputLine;
                        while ((inputLine = in.readLine()) != null) {
                                System.out.println(inputLine);
                        }
                        System.out.println("FINISH!");
                        in.close();
                    }
                    catch (Exception e)
                    {
                      System.out.println("ERROR opening jobs servlet: " + e.getLocalizedMessage());
                    }
        }
}

所以最后我得到了连接超时异常。

4

2 回答 2

2

0.0.0.0不是有效的 IP。它用于表示未知/无效。在某些应用程序中,它用于表示“绑定到特定接口上的所有地址”。在您的情况下,它根本无效。

于 2012-11-05T05:10:59.767 回答
1

关于为什么 0.0.0.0 不能在Is 0.0.0.0 是有效的 IP 地址有一个完整的线程?;.

https://serverfault.com/questions/78048/whats-the-difference-between-ip-address-0-0-0-0-and-127详细介绍了 0.0.0.0 和 127.0.0.1 之间的区别-0-0-1

如果你想让你的代码工作,你必须将 http:// 0.0.0.0 :8080 更改为 http:// 127.0.0.1 :8080 或使用系统接口(正确的 IP 地址)。

于 2012-11-05T06:31:21.940 回答