簡體   English   中英

htmlUnit如何處理未完善的javascript?

[英]How htmlUnit deal with unperfected javascript?

我知道當我們使用HTMLUnit時,他們希望在其Web客戶端上運行完全完美的javascript。 但是當javascript代碼像

document.createNodeIterator(root,NodeFilter.SHOW_ALL,null,false);

它抱怨“在對象中找不到函數createNodeIterator”在document.createNodeIterator上的瀏覽器上工作正常。

這是堆棧跟蹤:

com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot find function createNodeIterator in object [object HTMLDocument]. (https://cdn01.icims.com/platform_14.2.150421.78248/erac.icims.com/icims2/servlet/icims2?module=AppInert&action=bundleJavascript&scripts=%2Fportal%2Fjquery-1.8.0.js%2C%2Flib%2Fdomreplacement%2FdomReplacement.js%2C%2Fcommon%2Ficims.js%2C%2Fportal%2Futils.js%2C%2Fportal%2FshowMoreTextAbstract.js%2C%2Fportal%2Ffield.js%2C%2Fportal%2Flogin.js%2C%2Ffield%2Fvalidate.js%2C%2Fcommon%2FicimsTrickle.js%2C%2Fcommon%2FicimsDropdown.js%2C&a=1429647520000#21)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:705) [htmlunit-2.15.jar:2.15]
    at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:620) [htmlunit-core-js-2.15.jar:na]
    at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:513) [htmlunit-core-js-2.15.jar:na]
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:637) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:612) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunctionIfPossible(HtmlPage.java:1001) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.javascript.host.EventListenersContainer.executeEventListeners(EventListenersContainer.java:179) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.javascript.host.EventListenersContainer.executeBubblingListeners(EventListenersContainer.java:239) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.javascript.host.Node.fireEvent(Node.java:824) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.javascript.host.Node.fireEvent(Node.java:748) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.html.HtmlElement$1.run(HtmlElement.java:920) [htmlunit-2.15.jar:2.15]
    at net.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:620) [htmlunit-core-js-2.15.jar:na]
    at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:513) [htmlunit-core-js-2.15.jar:na]
    at com.gargoylesoftware.htmlunit.html.HtmlElement.fireEvent(HtmlElement.java:925) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeEventHandlersIfNeeded(HtmlPage.java:1298) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize(HtmlPage.java:290) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:475) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.WebClient.getPage(WebClient.java:342) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.html.BaseFrameElement.loadInnerPageIfPossible(BaseFrameElement.java:184) [htmlunit-2.15.jar:2.15]
    at com.gargoylesoftware.htmlunit.html.BaseFrameElement.loadInnerPage(BaseFrameElement.java:122) [htmlunit-2.15.jar:2.15]

NodeIterator剛剛實現,請嘗試使用最新快照。

測試用例可以在這里找到

可以在maven或構建服務器中找到最新快照(以訪客身份登錄)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM