Skip to content

[regression in 2.43.0] NullPointerException in CSSStyleSheet.loadStylesheet #276

@php-coder

Description

@php-coder

One of the tests has started to fail after upgrading from 2.41.0 to 2.45.0

[ERROR] RuntimeException loading https://www.gstatic.com/charts/47/css/util/util.css
java.lang.NullPointerException
    at com.gargoylesoftware.htmlunit.javascript.host.css.CSSStyleSheet.loadStylesheet (CSSStyleSheet.java:380)
    at com.gargoylesoftware.htmlunit.javascript.host.html.HTMLLinkElement.getSheet (HTMLLinkElement.java:144)
    at com.gargoylesoftware.htmlunit.javascript.host.css.StyleSheetList.item (StyleSheetList.java:190)
    at com.gargoylesoftware.htmlunit.javascript.host.Window.getComputedStyle (Window.java:1791)
    at com.gargoylesoftware.htmlunit.javascript.host.Element.isDisplayNone (Element.java:706)
    at com.gargoylesoftware.htmlunit.javascript.host.html.HTMLTableCellElement.getOffsetHeight (HTMLTableCellElement.java:74)
    at sun.reflect.GeneratedMethodAccessor490.invoke (Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:498)
    at net.sourceforge.htmlunit.corejs.javascript.MemberBox.invoke (MemberBox.java:188)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptableObject$GetterSlot.getValue (ScriptableObject.java:348)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptableObject.get (ScriptableObject.java:478)
    at com.gargoylesoftware.htmlunit.javascript.SimpleScriptable.get (SimpleScriptable.java:79)
    at com.gargoylesoftware.htmlunit.javascript.host.Element.get (Element.java:520)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptableObject.getProperty (ScriptableObject.java:2348)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getObjectProp (ScriptRuntime.java:1604)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getObjectProp (ScriptRuntime.java:1597)
    at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop (Interpreter.java:1460)
    at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret (Interpreter.java:1013)
    at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call (InterpretedFunction.java:111)
    at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall (ContextFactory.java:427)
    at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.doTopCall (HtmlUnitContextFactory.java:339)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall (ScriptRuntime.java:3640)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$3.doRun (JavaScriptEngine.java:871)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run (JavaScriptEngine.java:934)
    at net.sourceforge.htmlunit.corejs.javascript.Context.call (Context.java:619)
    at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call (ContextFactory.java:537)
    at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.callSecured (HtmlUnitContextFactory.java:353)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction (JavaScriptEngine.java:878)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction (JavaScriptEngine.java:850)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunction (HtmlPage.java:2609)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunction (HtmlPage.java:2602)
    at com.gargoylesoftware.htmlunit.javascript.host.event.EventListenersContainer.executeEventListeners (EventListenersContainer.java:342)
    at com.gargoylesoftware.htmlunit.javascript.host.event.EventListenersContainer.executeAtTargetListeners (EventListenersContainer.java:379)
    at com.gargoylesoftware.htmlunit.javascript.host.event.EventTarget.fireEvent (EventTarget.java:173)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.lambda$executeEventHandlersIfNeeded$0 (HtmlPage.java:1269)
    at net.sourceforge.htmlunit.corejs.javascript.Context.call (Context.java:619)
    at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call (ContextFactory.java:537)
    at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.callSecured (HtmlUnitContextFactory.java:353)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeEventHandlersIfNeeded (HtmlPage.java:1269)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize (HtmlPage.java:259)
    at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto (WebClient.java:654)
    at com.gargoylesoftware.htmlunit.WebClient.getPage (WebClient.java:456)
    at com.gargoylesoftware.htmlunit.WebClient.getPage (WebClient.java:368)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.get (HtmlUnitDriver.java:720)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.lambda$get$8 (HtmlUnitDriver.java:702)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.lambda$runAsync$0 (HtmlUnitDriver.java:443)
    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:624)
    at java.lang.Thread.run (Thread.java:748)
[ERROR] Error during JavaScript execution
com.gargoylesoftware.htmlunit.ScriptException: Exception: java.lang.NullPointerException (http://127.0.0.1:8080/public/jquery/1.9.1/jquery.min.js#3)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run (JavaScriptEngine.java:949)
    at net.sourceforge.htmlunit.corejs.javascript.Context.call (Context.java:619)
    at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call (ContextFactory.java:537)
    at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.callSecured (HtmlUnitContextFactory.java:353)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction (JavaScriptEngine.java:878)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction (JavaScriptEngine.java:850)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunction (HtmlPage.java:2609)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunction (HtmlPage.java:2602)
    at com.gargoylesoftware.htmlunit.javascript.host.event.EventListenersContainer.executeEventListeners (EventListenersContainer.java:342)
    at com.gargoylesoftware.htmlunit.javascript.host.event.EventListenersContainer.executeAtTargetListeners (EventListenersContainer.java:379)
    at com.gargoylesoftware.htmlunit.javascript.host.event.EventTarget.fireEvent (EventTarget.java:173)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.lambda$executeEventHandlersIfNeeded$0 (HtmlPage.java:1269)
    at net.sourceforge.htmlunit.corejs.javascript.Context.call (Context.java:619)
    at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call (ContextFactory.java:537)
    at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.callSecured (HtmlUnitContextFactory.java:353)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeEventHandlersIfNeeded (HtmlPage.java:1269)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize (HtmlPage.java:259)
    at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto (WebClient.java:654)
    at com.gargoylesoftware.htmlunit.WebClient.getPage (WebClient.java:456)
    at com.gargoylesoftware.htmlunit.WebClient.getPage (WebClient.java:368)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.get (HtmlUnitDriver.java:720)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.lambda$get$8 (HtmlUnitDriver.java:702)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.lambda$runAsync$0 (HtmlUnitDriver.java:443)
    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:624)
    at java.lang.Thread.run (Thread.java:748)
Caused by: net.sourceforge.htmlunit.corejs.javascript.EvaluatorException: Exception: java.lang.NullPointerException (http://127.0.0.1:8080/public/jquery/1.9.1/jquery.min.js#3)
    at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory$HtmlUnitErrorReporter.runtimeError (HtmlUnitContextFactory.java:460)
    at net.sourceforge.htmlunit.corejs.javascript.Context.reportRuntimeError (Context.java:1037)
    at net.sourceforge.htmlunit.corejs.javascript.Context.reportRuntimeError (Context.java:1090)
    at com.gargoylesoftware.htmlunit.javascript.host.css.CSSStyleSheet.loadStylesheet (CSSStyleSheet.java:413)
    at com.gargoylesoftware.htmlunit.javascript.host.html.HTMLLinkElement.getSheet (HTMLLinkElement.java:144)
    at com.gargoylesoftware.htmlunit.javascript.host.css.StyleSheetList.item (StyleSheetList.java:190)
    at com.gargoylesoftware.htmlunit.javascript.host.Window.getComputedStyle (Window.java:1791)
    at com.gargoylesoftware.htmlunit.javascript.host.Element.isDisplayNone (Element.java:706)
    at com.gargoylesoftware.htmlunit.javascript.host.html.HTMLTableCellElement.getOffsetHeight (HTMLTableCellElement.java:74)
    at sun.reflect.GeneratedMethodAccessor490.invoke (Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:498)
    at net.sourceforge.htmlunit.corejs.javascript.MemberBox.invoke (MemberBox.java:188)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptableObject$GetterSlot.getValue (ScriptableObject.java:348)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptableObject.get (ScriptableObject.java:478)
    at com.gargoylesoftware.htmlunit.javascript.SimpleScriptable.get (SimpleScriptable.java:79)
    at com.gargoylesoftware.htmlunit.javascript.host.Element.get (Element.java:520)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptableObject.getProperty (ScriptableObject.java:2348)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getObjectProp (ScriptRuntime.java:1604)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.getObjectProp (ScriptRuntime.java:1597)
    at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop (Interpreter.java:1460)
    at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret (Interpreter.java:1013)
    at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call (InterpretedFunction.java:111)
    at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall (ContextFactory.java:427)
    at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.doTopCall (HtmlUnitContextFactory.java:339)
    at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall (ScriptRuntime.java:3640)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$3.doRun (JavaScriptEngine.java:871)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine$HtmlUnitContextAction.run (JavaScriptEngine.java:934)
    at net.sourceforge.htmlunit.corejs.javascript.Context.call (Context.java:619)
    at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call (ContextFactory.java:537)
    at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.callSecured (HtmlUnitContextFactory.java:353)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction (JavaScriptEngine.java:878)
    at com.gargoylesoftware.htmlunit.javascript.JavaScriptEngine.callFunction (JavaScriptEngine.java:850)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunction (HtmlPage.java:2609)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeJavaScriptFunction (HtmlPage.java:2602)
    at com.gargoylesoftware.htmlunit.javascript.host.event.EventListenersContainer.executeEventListeners (EventListenersContainer.java:342)
    at com.gargoylesoftware.htmlunit.javascript.host.event.EventListenersContainer.executeAtTargetListeners (EventListenersContainer.java:379)
    at com.gargoylesoftware.htmlunit.javascript.host.event.EventTarget.fireEvent (EventTarget.java:173)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.lambda$executeEventHandlersIfNeeded$0 (HtmlPage.java:1269)
    at net.sourceforge.htmlunit.corejs.javascript.Context.call (Context.java:619)
    at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.call (ContextFactory.java:537)
    at com.gargoylesoftware.htmlunit.javascript.HtmlUnitContextFactory.callSecured (HtmlUnitContextFactory.java:353)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.executeEventHandlersIfNeeded (HtmlPage.java:1269)
    at com.gargoylesoftware.htmlunit.html.HtmlPage.initialize (HtmlPage.java:259)
    at com.gargoylesoftware.htmlunit.WebClient.loadWebResponseInto (WebClient.java:654)
    at com.gargoylesoftware.htmlunit.WebClient.getPage (WebClient.java:456)
    at com.gargoylesoftware.htmlunit.WebClient.getPage (WebClient.java:368)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.get (HtmlUnitDriver.java:720)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.lambda$get$8 (HtmlUnitDriver.java:702)
    at org.openqa.selenium.htmlunit.HtmlUnitDriver.lambda$runAsync$0 (HtmlUnitDriver.java:443)
    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:624)
    at java.lang.Thread.run (Thread.java:748)

I debug it and found that it started to fail in 2.43.0

Please, let me know if you need anything else to help.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions