У меня есть страница на основе GWT, которую я хотел бы создать для него снимок HTML, используя HtmlUnit. Страница загружается с использованием информации Ajax/JavaScript на продукт, поэтому около 1 секунды появляется сообщение "Загрузка...", а затем появляется содержимое.
Проблема в том, что HtmlUnit, похоже, не захватывает информацию, и все, что я получаю, это диапазон "Загрузка...".
Ниже приведен экспериментальный код с HtmlUnit, где я пытаюсь дать ему достаточно времени, чтобы дождаться загрузки данных, но он ничего не меняет, и я все еще не могу захватить данные, загруженные GWT javascript.
WebClient webClient = new WebClient();
webClient.setJavaScriptEnabled(true);
webClient.setThrowExceptionOnScriptError(false);
webClient.setAjaxController(new NicelyResynchronizingAjaxController());
WebRequest request = new WebRequest(new URL("<my_url>"));
HtmlPage page = webClient.getPage(request);
int i = webClient.waitForBackgroundJavaScript(1000);
while (i > 0)
{
i = webClient.waitForBackgroundJavaScript(1000);
if (i == 0)
{
break;
}
synchronized (page)
{
System.out.println("wait");
page.wait(500);
}
}
webClient.getAjaxController().processSynchron(page, request, false);
System.out.println(page.asXml());
Любые идеи...?