I've just started learning htmlunit by gargoylesoftware and I have a problem.
There is an iframe on a page, which appears after a button click. When i try to get this iframe by name I get a ElementNotFoundException
. Also I tried page.getFrames()
and it returns frames, but there is no frame that i'm looking for or it is blank. So It looks like js/ajax didn't update it. I work on jcpenny(dot)com and problem appears when I try to "checkout" from "My Bag" page
Here is my WebClient settings
BrowserVersion bv = BrowserVersion.CHROME_16;
bv.setUserAgent("Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)");
CookieManager cm = new CookieManager();
cm.clearCookies();
cm.setCookiesEnabled(true);
WebClient webClient = new WebClient(bv);
webClient.setCookieManager(cm);
webClient.setAjaxController(new NicelyResynchronizingAjaxController());
webClient.setJavaScriptTimeout(15000);
webClient.setCssErrorHandler(new SilentCssErrorHandler());
webClient.getOptions().setJavaScriptEnabled(true);
webClient.getOptions().setThrowExceptionOnScriptError(false);
webClient.waitForBackgroundJavaScript(15000);
webClient.getOptions().setThrowExceptionOnFailingStatusCode(false);
webClient.getOptions().setRedirectEnabled(true);
webClient.getOptions().setUseInsecureSSL(true);
webClient.setRefreshHandler(new ThreadedRefreshHandler());
This may be late answer, but it will be useful for others in the future.
hope this will help to identify iframes.