what can i do for this
"pool-2-thread-2" java.lang.StackOverflow
at java.lang.Exception.<init>(Exception.java:41)
at java.io.IOException.<init>(IOException.java:41)
at java.io.InterruptedIOException.<init>(InterruptedIOException.java:45)
at java.net.SocketTimeoutException.<init>(SocketTimeoutException.java:24)
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
at org.apache.commons.httpclient.HttpConnection.isStale(HttpConnection.java:506)
at org.apache.commons.httpclient.HttpConnection.closeIfStale(HttpConnection.java:431)
at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.closeIfStale(MultiThreadedHttpConnectionManager.java:1313)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:382)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
at com.gargoylesoftware.htmlunit.HttpWebConnection.getResponse(HttpWebConnection.java:98)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseFromWebConnection(WebClient.java:1448)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponse(WebClient.java:1406)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:337)
at com.gargoylesoftware.htmlunit.ImmediateRefreshHandler.handleRefresh(ImmediateRefreshHandler.java:60)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeRefreshIfNeeded(HtmlPage.java:1302)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:199)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:465)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:341)
at com.gargoylesoftware.htmlunit.ImmediateRefreshHandler.handleRefresh(ImmediateRefreshHandler.java:60)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeRefreshIfNeeded(HtmlPage.java:1302)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:199)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:465)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:341)
at com.gargoylesoftware.htmlunit.ImmediateRefreshHandler.handleRefresh(ImmediateRefreshHandler.java:60)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeRefreshIfNeeded(HtmlPage.java:1302)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:199)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:465)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:341)
at com.gargoylesoftware.htmlunit.ImmediateRefreshHandler.handleRefresh(ImmediateRefreshHandler.java:60)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeRefreshIfNeeded(HtmlPage.java:1302)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:199)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:465)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:341)
at com.gargoylesoftware.htmlunit.ImmediateRefreshHandler.handleRefresh(ImmediateRefreshHandler.java:60)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeRefreshIfNeeded(HtmlPage.java:1302)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:199)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:465)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:341)
at com.gargoylesoftware.htmlunit.ImmediateRefreshHandler.handleRefresh(ImmediateRefreshHandler.java:60)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeRefreshIfNeeded(HtmlPage.java:1302)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:199)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:465)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:341)
at com.gargoylesoftware.htmlunit.ImmediateRefreshHandler.handleRefresh(ImmediateRefreshHandler.java:60)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeRefreshIfNeeded(HtmlPage.java:1302)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:199)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:465)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:341)
at com.gargoylesoftware.htmlunit.ImmediateRefreshHandler.handleRefresh(ImmediateRefreshHandler.java:60)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeRefreshIfNeeded(HtmlPage.java:1302)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:199)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:465)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:341)
at com.gargoylesoftware.htmlunit.ImmediateRefreshHandler.handleRefresh(ImmediateRefreshHandler.java:60)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeRefreshIfNeeded(HtmlPage.java:1302)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:199)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:465)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:341)
at com.gargoylesoftware.htmlunit.ImmediateRefreshHandler.handleRefresh(ImmediateRefreshHandler.java:60)
at com.gargoylesoftware.htmlunit.html.HtmlPage.executeRefreshIfNeeded(HtmlPage.java:1302)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:199)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:465)</init></init></init></init>
Is it reproducible? Do you encounter it with a publicly available site?
webClient = new WebClient();
webClient.setTimeout(30 * 1000);
webClient.setThrowExceptionOnScriptError(false);
webClient.setThrowExceptionOnFailingStatusCode(false);//
webClient.setJavaScriptEnabled(false);
webClient.setRedirectEnabled(true);
webClient.setCssEnabled(false);
webClient.setRefreshHandler(new WaitingRefreshHandler(2));
webClient.setPrintContentOnFailingStatusCode(true);
webClient.setJavaScriptTimeout(30*1000);
Can't reproduce anything with this code. Please re-read my question.
i am sorry!
i have fond this problem
i use spider grab more urls,and use htmlunit open the urls one by one
but one url "http://www.teafeeling.com/bbs/" have virus
this site have more popups
so my htmlunit StackOverflow
when i user ie open this site ,my ie had die
thanks for mguillem