Expected content type of 'application/javascript' in HtmlUnitDriver

282 views
Skip to first unread message

Hamoud AQ

unread,
Aug 30, 2013, 7:33:48 AM8/30/13
to seleniu...@googlegroups.com
i'm trying to execute javascript but couldn't find any way to do so ..
i have to mention that i've tried my code with `FirefoxDriver` and it's work great and do exactly what i want but the problem with `FirefoxDriver` is that the browser actually work and visible to user which i don't want . that's why i've switch to `HtmlUnitdriver`

--here's my code--

           
HtmlUnitDriver driver = new HtmlUnitDriver(true);
            driver
.get("https://blahblah.edu/home.faces");
           
           
           
WebElement select = driver.findElement(By.name("loginForm:userType"));
           
Select tbs = new Select(select);
            tbs
.selectByValue("1");
   
            driver
.findElement(By.name("loginForm:username")).sendKeys("username");
            driver
.findElement(By.name("loginForm:password")).sendKeys("password");
           
            driver
.executeScript("javascript:userTypeSelect();");//throws exception
            driver
.executeScript("if(typeof jsfcljs == 'function'){jsfcljs(document.getElementById('menuForm'),{'menuForm:serLinkDropAdd2':'menuForm:serLinkDropAdd2'},'');}return false");
           
           
WebDriverWait driverWait = new WebDriverWait(driver, 10000);
            driverWait
.until(ExpectedConditions.presenceOfElementLocated(By.id("saveBut1")));
           
             driver
.findElement(By.id("saveBut1")).click();
             
System.out.println(driver.getTitle());



--here's the Error--

   
Aug 30, 2013 2:44:04 AM com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
    WARNING
: Expected content type of 'application/javascript' or 'application/ecmascript' for remotely loaded JavaScript element at 'https://edugate.blahblah.edu/ksu/include/js/calendar/deleteTooltip.js', but got 'text/plain'.
   
Aug 30, 2013 2:44:05 AM com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
    WARNING
: Expected content type of 'application/javascript' or 'application/ecmascript' for remotely loaded JavaScript element at 'https://edugate.blahblah.edu/ksu/include/js/calendar/deleteNote.js', but got 'text/plain'.
   
Aug 30, 2013 2:44:05 AM com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
    WARNING
: Expected content type of 'application/javascript' or 'application/ecmascript' for remotely loaded JavaScript element at 'https://edugate.blahblah.edu/ksu/include/js/menu/styleswitcher.js', but got 'text/plain'.
   
Aug 30, 2013 2:44:07 AM com.gargoylesoftware.htmlunit.DefaultCssErrorHandler error
    WARNING
: CSS error: 'https://edugate.blahblah.edu/ksu/include/css/style_ar.css' [8:9] Error in pseudo class or element. (Invalid token ":". Was expecting one of: <IDENT>, <FUNCTION_NOT>, <FUNCTION_LANG>, <FUNCTION>.)
   
Aug 30, 2013 2:44:07 AM com.gargoylesoftware.htmlunit.DefaultCssErrorHandler warning
    WARNING
: CSS warning: 'https://edugate.blahblah.edu/ksu/include/css/style_ar.css' [8:9] Ignoring the whole rule.
   
Aug 30, 2013 2:44:08 AM com.gargoylesoftware.htmlunit.DefaultCssErrorHandler error
    WARNING
: CSS error: 'https://edugate.blahblah.edu/ksu/skins/1/style_ar.css' [8:9] Error in pseudo class or element. (Invalid token ":". Was expecting one of: <IDENT>, <FUNCTION_NOT>, <FUNCTION_LANG>, <FUNCTION>.)
   
Aug 30, 2013 2:44:08 AM com.gargoylesoftware.htmlunit.DefaultCssErrorHandler warning
    WARNING
: CSS warning: 'https://edugate.blahblah.edu/ksu/skins/1/style_ar.css' [8:9] Ignoring the whole rule.
   
Aug 30, 2013 2:44:11 AM com.gargoylesoftware.htmlunit.IncorrectnessListenerImpl notify
    WARNING
: Expected content type of 'application/javascript' or 'application/ecmascript' for remotely loaded JavaScript element at 'https://edugate.blahblah.edu:443/ksu/include/js/table/table.js', but got 'text/plain'.
   
Exception in thread "main" org.openqa.selenium.WebDriverException: com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot set property [Window].length that has only a getter to 15. (https://edugate.blahblah.edu:443/ksu/include/js/table/table.js#2)
   
Build info: version: '2.35.0', revision: '8df0c6b', time: '2013-08-12 15:43:19'
   
System info: os.name: 'Windows 8', os.arch: 'amd64', os.version: '6.2', java.version: '1.7.0_21'
   
Driver info: driver.version: HtmlUnitDriver
        at org
.openqa.selenium.htmlunit.HtmlUnitDriver.executeScript(HtmlUnitDriver.java:497)
        at edugate
.ADD2.<init>(ADD2.java:32)
        at edugate
.Edugate.main(Edugate.java:31)
   
Caused by: com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot set property [Window].length that has only a getter to 15. (https://edugate.blahblah.edu:443/ksu/include/js/table/table.js#2)
        at com
.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:669)
        at net
.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:601)
        at net
.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:507)
        at com
.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:601)
        at com
.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction(JavaScriptEngine.java:576)
        at com
.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunctionIfPossible(HtmlPage.java:1005)
        at org
.openqa.selenium.htmlunit.HtmlUnitDriver.executeScript(HtmlUnitDriver.java:491)
       
... 2 more
   
Caused by: com.gargoylesoftware.htmlunit.ScriptException: TypeError: Cannot set property [Window].length that has only a getter to 15. (https://edugate.blahblah.edu:443/ksu/include/js/table/table.js#2)
        at com
.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:669)
        at net
.sourceforge.htmlunit.corejs.javascript.Context.call(Context.java:601)
        at net
.sourceforge.htmlunit.corejs.javascript.ContextFactory.call(ContextFactory.java:507)
        at com
.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.execute(JavaScriptEngine.java:555)
        at com
.gargoylesoftware.htmlunit.html.HtmlPage.loadExternalJavaScriptFile(HtmlPage.java:1082)
        at com
.gargoylesoftware.htmlunit.html.HtmlScript.executeScriptIfNeeded(HtmlScript.java:399)
        at com
.gargoylesoftware.htmlunit.html.HtmlScript$3.execute(HtmlScript.java:260)
        at com
.gargoylesoftware.htmlunit.html.HtmlScript.onAllChildrenAddedToPage(HtmlScript.java:276)
        at com
.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.endElement(HTMLParser.java:676)
        at org
.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
        at com
.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.endElement(HTMLParser.java:635)
        at org
.cyberneko.html.HTMLTagBalancer.callEndElement(HTMLTagBalancer.java:1169)
        at org
.cyberneko.html.HTMLTagBalancer.endElement(HTMLTagBalancer.java:1071)
        at org
.cyberneko.html.filters.DefaultFilter.endElement(DefaultFilter.java:206)
        at org
.cyberneko.html.filters.NamespaceBinder.endElement(NamespaceBinder.java:330)
        at org
.cyberneko.html.HTMLScanner$ContentScanner.scanEndElement(HTMLScanner.java:3074)
        at org
.cyberneko.html.HTMLScanner$ContentScanner.scan(HTMLScanner.java:2041)
        at org
.cyberneko.html.HTMLScanner.scanDocument(HTMLScanner.java:918)
        at org
.cyberneko.html.HTMLConfiguration.parse(HTMLConfiguration.java:499)
        at org
.cyberneko.html.HTMLConfiguration.parse(HTMLConfiguration.java:452)
        at org
.apache.xerces.parsers.XMLParser.parse(Unknown Source)
        at com
.gargoylesoftware.htmlunit.html.HTMLParser$HtmlUnitDOMBuilder.parse(HTMLParser.java:892)
        at com
.gargoylesoftware.htmlunit.html.HTMLParser.parse(HTMLParser.java:241)
        at com
.gargoylesoftware.htmlunit.html.HTMLParser.parseHtml(HTMLParser.java:187)
        at com
.gargoylesoftware.htmlunit.DefaultPageCreator.createHtmlPage(DefaultPageCreator.java:268)
        at com
.gargoylesoftware.htmlunit.DefaultPageCreator.createPage(DefaultPageCreator.java:156)
        at com
.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto(WebClient.java:434)
        at com
.gargoylesoftware.htmlunit.WebClient.loadDownloadedResponses(WebClient.java:2289)
        at com
.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.doProcessPostponedActions(JavaScriptEngine.java:697)
        at com
.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.access$500(JavaScriptEngine.java:91)
        at com
.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:664)
       
... 8 more
   
Caused by: net.sourceforge.htmlunit.corejs.javascript.EcmaError: TypeError: Cannot set property [Window].length that has only a getter to 15. (https://edugate.blahblah.edu:443/ksu/include/js/table/table.js#2)
        at net
.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3603)
        at net
.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.constructError(ScriptRuntime.java:3587)
        at net
.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError(ScriptRuntime.java:3608)
        at net
.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.typeError3(ScriptRuntime.java:3630)
        at com
.gargoylesoftware.htmlunit.javascript.SimpleScriptable.isReadOnlySettable(SimpleScriptable.java:461)
        at net
.sourceforge.htmlunit.corejs.javascript.ScriptableObject$GetterSlot.setValue(ScriptableObject.java:259)
        at net
.sourceforge.htmlunit.corejs.javascript.ScriptableObject.putImpl(ScriptableObject.java:2796)
        at net
.sourceforge.htmlunit.corejs.javascript.ScriptableObject.put(ScriptableObject.java:521)
        at net
.sourceforge.htmlunit.corejs.javascript.ScriptableObject.putProperty(ScriptableObject.java:2479)
        at net
.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.setName(ScriptRuntime.java:1846)
        at net
.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop(Interpreter.java:1207)
        at net
.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret(Interpreter.java:798)
        at net
.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:105)
        at net
.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall(ContextFactory.java:405)
        at com
.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.doTopCall(HtmlUnitContextFactory.java:275)
        at net
.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3031)
        at net
.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.exec(InterpretedFunction.java:115)
        at com
.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$3.doRun(JavaScriptEngine.java:546)
        at com
.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run(JavaScriptEngine.java:654)
       
... 38 more
   
Java Result: 1



i appreciate your help , thanks in advance
Reply all
Reply to author
Forward
0 new messages