2013-05-14 325 views
2


我哈瓦工作xmlparser
但不幸的是我得到一个错误,当我在移动数据。
Wi-Fi上不会出现此问题,并且该页面随时可用。
我做错了什么?
我有互联网许可。java.net.SocketTimeoutException:连接失败

堆栈跟踪

05-14 21:26:35.628: W/System.err(17691): java.net.SocketTimeoutException: failed to connect to buie.vlsolutions.nl/185.10.98.4 (port 80) after 15000ms 
    05-14 21:26:35.633: W/System.err(17691): at libcore.io.IoBridge.connectErrno(IoBridge.java:159) 
    05-14 21:26:35.633: W/System.err(17691): at libcore.io.IoBridge.connect(IoBridge.java:112) 
    05-14 21:26:35.633: W/System.err(17691): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192) 
    05-14 21:26:35.633: W/System.err(17691): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:459) 
    05-14 21:26:35.633: W/System.err(17691): at java.net.Socket.connect(Socket.java:842) 
    05-14 21:26:35.633: W/System.err(17691): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:76) 
    05-14 21:26:35.638: W/System.err(17691): at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50) 
    05-14 21:26:35.638: W/System.err(17691): at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:340) 
    05-14 21:26:35.638: W/System.err(17691): at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87) 
    05-14 21:26:35.638: W/System.err(17691): at libcore.net.http.HttpConnection.connect(HttpConnection.java:128) 
    05-14 21:26:35.638: W/System.err(17691): at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:315) 
    05-14 21:26:35.638: W/System.err(17691): at libcore.net.http.HttpEngine.connect(HttpEngine.java:310) 
    05-14 21:26:35.638: W/System.err(17691): at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:289) 
    05-14 21:26:35.638: W/System.err(17691): at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:239) 
    05-14 21:26:35.638: W/System.err(17691): at libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:80) 
    05-14 21:26:35.638: W/System.err(17691): at nl.vlsolutions.buienl.MainActivity.downloadUrl(MainActivity.java:475) 
    05-14 21:26:35.638: W/System.err(17691): at nl.vlsolutions.buienl.MainActivity.loadXmlFromNetwork(MainActivity.java:342) 
    05-14 21:26:35.638: W/System.err(17691): at nl.vlsolutions.buienl.MainActivity.access$2(MainActivity.java:334) 
    05-14 21:26:35.643: W/System.err(17691): at nl.vlsolutions.buienl.MainActivity$DownloadXmlTask.doInBackground(MainActivity.java:307) 
    05-14 21:26:35.643: W/System.err(17691): at nl.vlsolutions.buienl.MainActivity$DownloadXmlTask.doInBackground(MainActivity.java:1) 
    05-14 21:26:35.643: W/System.err(17691): at android.os.AsyncTask$2.call(AsyncTask.java:287) 
    05-14 21:26:35.643: W/System.err(17691): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 
    05-14 21:26:35.643: W/System.err(17691): at java.util.concurrent.FutureTask.run(FutureTask.java:137) 
    05-14 21:26:35.643: W/System.err(17691): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230) 
    05-14 21:26:35.643: W/System.err(17691): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076) 
    05-14 21:26:35.643: W/System.err(17691): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569) 
    05-14 21:26:35.648: W/System.err(17691): at java.lang.Thread.run(Thread.java:856) 

功能downloadUrl

private InputStream downloadUrl(String urlString) throws IOException { 
    URL url = new URL(urlString); 
    HttpURLConnection conn = (HttpURLConnection) url.openConnection(); 
    conn.setReadTimeout(10000 /* milliseconds */); 
    conn.setConnectTimeout(15000 /* milliseconds */); 
    conn.setRequestMethod("GET"); 
    conn.setDoInput(true); 
    // Starts the query 
    conn.connect();  // Line 475 
    return conn.getInputStream(); 
} 

回答

3

事实证明,从我的数据提供商那里的DNS服务器出现问题。因为我的服务器只是改变了IP地址而DNS服务器还没有更新。

1

您是否尝试过增加连接超时?也许你的移动数据连接速度太慢,与你的wifi相反。使用try和catch并在这里发布异常,我认为在这种情况下它比logcat更有帮助。

+0

我没有很慢的连接,但是当我尝试访问我的浏览器中的URL时,它也显示错误。所以我不知道现在在哪里搜索,因为服务器总是可用的。 – Victor