smatei · GitHub

URL: https://sustainability.asu.edu/person/angela-gonzales
version: 2.39.1
VM arguments: -Xmx4096m

The following code throws java.lang.StackOverflowError after more than 10 minutes .

`

WebClient client = null;
try
{
  client = new WebClient();
  client.getOptions().setCssEnabled(false);
  client.getOptions().setJavaScriptEnabled(false);
  client.getOptions().setTimeout(20000);
  Page page = client.getPage("https://sustainability.asu.edu/person/angela-gonzales");
  if (page != null && page.isHtmlPage())
  {
    HtmlPage htmlPage = (HtmlPage) page;
    System.out.println("html page downloaded");
    System.out.println(htmlPage.asText());
  }
}
catch (Throwable e)
{
  e.printStackTrace();
}
finally
{
  if (client != null)
  {
    client.close();
  }
}

`

image

`

java.lang.StackOverflowError
at com.gargoylesoftware.htmlunit.html.FrameWindow.getTopWindow(FrameWindow.java:77)
at com.gargoylesoftware.htmlunit.html.FrameWindow.getTopWindow(FrameWindow.java:77)
at com.gargoylesoftware.htmlunit.html.FrameWindow.getTopWindow(FrameWindow.java:77)
at com.gargoylesoftware.htmlunit.html.FrameWindow.getTopWindow(FrameWindow.java:77)
at com.gargoylesoftware.htmlunit.html.FrameWindow.getTopWindow(FrameWindow.java:77)
...........
at com.gargoylesoftware.htmlunit.html.FrameWindow.getTopWindow(FrameWindow.java:77)
at com.gargoylesoftware.htmlunit.html.FrameWindow.getTopWindow(FrameWindow.java:77)
at com.gargoylesoftware.htmlunit.html.FrameWindow.getTopWindow(FrameWindow.java:77)
at com.gargoylesoftware.htmlunit.html.HtmlPage.getBaseURL(HtmlPage.java:2316)
at com.gargoylesoftware.htmlunit.html.HtmlPage.getFullyQualifiedUrl(HtmlPage.java:699)
at com.gargoylesoftware.htmlunit.html.BaseFrameElement.loadInnerPageIfPossible(BaseFrameElement.java:182)
at com.gargoylesoftware.htmlunit.html.BaseFrameElement.loadInnerPage(BaseFrameElement.java:124)
at com.gargoylesoftware.htmlunit.html.HtmlPage.loadFrames(HtmlPage.java:1919)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:251)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:561)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:420)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:337)
at com.gargoylesoftware.htmlunit.html.BaseFrameElement.loadInnerPageIfPossible(BaseFrameElement.java:198)
at com.gargoylesoftware.htmlunit.html.BaseFrameElement.loadInnerPage(BaseFrameElement.java:124)
at com.gargoylesoftware.htmlunit.html.HtmlPage.loadFrames(HtmlPage.java:1919)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:251)
.........
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:561)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:420)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:337)
at com.gargoylesoftware.htmlunit.html.BaseFrameElement.loadInnerPageIfPossible(BaseFrameElement.java:198)
at com.gargoylesoftware.htmlunit.html.BaseFrameElement.loadInnerPage(BaseFrameElement.java:124)
at com.gargoylesoftware.htmlunit.html.HtmlPage.loadFrames(HtmlPage.java:1919)
at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:251)
at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:561)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:420)
at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:337)
at com.gargoylesoftware.htmlunit.html.BaseFrameElement.loadInnerPageIfPossible(BaseFrameElement.java:198)
at com.gargoylesoftware.htmlunit.html.BaseFrameElement.loadInnerPage(BaseFrameElement.java:124)
at com.gargoylesoftware.htmlunit.html.HtmlPage.loadFrames(HtmlPage.java:1919)
`

Read the original on github.com ↗