Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8133344

NullPointerException when resizing WebView

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: P3 P3
    • 9
    • 8u51, 9
    • javafx
    • web
    • x86
    • windows_8

      FULL PRODUCT VERSION :
      java version "1.8.0_51"
      Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
      Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)

      ADDITIONAL OS VERSION INFORMATION :
      Microsoft Windows [Version 10.0.10240]

      A DESCRIPTION OF THE PROBLEM :
      Recently adding a `WebView` pane to my JavaFX Application. When resizing my program I get this error and the program freezes.

          java.lang.NullPointerException
           at com.sun.javafx.webkit.prism.WCPageBackBufferImpl.validate(WCPageBackBufferImpl.java:97)
           at com.sun.webkit.WebPage.paint(WebPage.java:644)
           at com.sun.javafx.sg.prism.NGWebView.renderContent(NGWebView.java:95)
           at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2067)
           at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1959)
           at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
           at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
           at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2067)
           at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1959)
           at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
           at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
           at com.sun.javafx.sg.prism.NGNode.renderForClip(NGNode.java:2308)
           at com.sun.javafx.sg.prism.NGNode.renderRectClip(NGNode.java:2202)
           at com.sun.javafx.sg.prism.NGNode.renderClip(NGNode.java:2228)
           at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2061)
           at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1959)
           at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
           at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
           at com.sun.javafx.sg.prism.NGNode.renderForClip(NGNode.java:2308)
           at com.sun.javafx.sg.prism.NGNode.renderRectClip(NGNode.java:2202)
           at com.sun.javafx.sg.prism.NGNode.renderClip(NGNode.java:2228)
           at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2061)
           at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1959)
           at com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:474)
           at com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:327)
           at com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:91)
           at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
           at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
           at com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)
           at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
           at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
           at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
           at java.lang.Thread.run(Thread.java:745)

      The website that the webview goes to is

      http://www.abendigo.org/gui/


      Can someone tell me what causes this issue?

      Edit: Not sure why this is needed, but here is the code as requested:

          public class Controller implements Initializable {
          
           @FXML
           public WebView webView;
          
           @Override
           public void initialize(URL location, ResourceBundle resources) {
           webView.getEngine().load("http://abendigo.org/gui/");
           }
          
          }



      Video of bug reproduction:
      https://youtu.be/6CLPt45AbW0

      ADDITIONAL REGRESSION INFORMATION:
      java version "1.8.0_51"
      Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
      Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      Watch video and you will see

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      Watch video and you will see
      ACTUAL -
      Watch video and you will see

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
          java.lang.NullPointerException
           at com.sun.javafx.webkit.prism.WCPageBackBufferImpl.validate(WCPageBackBufferImpl.java:97)
           at com.sun.webkit.WebPage.paint(WebPage.java:644)
           at com.sun.javafx.sg.prism.NGWebView.renderContent(NGWebView.java:95)
           at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2067)
           at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1959)
           at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
           at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
           at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2067)
           at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1959)
           at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
           at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
           at com.sun.javafx.sg.prism.NGNode.renderForClip(NGNode.java:2308)
           at com.sun.javafx.sg.prism.NGNode.renderRectClip(NGNode.java:2202)
           at com.sun.javafx.sg.prism.NGNode.renderClip(NGNode.java:2228)
           at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2061)
           at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1959)
           at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:235)
           at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:576)
           at com.sun.javafx.sg.prism.NGNode.renderForClip(NGNode.java:2308)
           at com.sun.javafx.sg.prism.NGNode.renderRectClip(NGNode.java:2202)
           at com.sun.javafx.sg.prism.NGNode.renderClip(NGNode.java:2228)
           at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2061)
           at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1959)
           at com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:474)
           at com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:327)
           at com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:91)
           at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
           at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
           at com.sun.javafx.tk.RenderJob.run(RenderJob.java:58)
           at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
           at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
           at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
           at java.lang.Thread.run(Thread.java:745)

      REPRODUCIBILITY :
      This bug can be reproduced always.

      ---------- BEGIN SOURCE ----------
          public class Controller implements Initializable {
          
           @FXML
           public WebView webView;
          
           @Override
           public void initialize(URL location, ResourceBundle resources) {
           webView.getEngine().load("http://abendigo.org/gui/");
           }
          
          }

      ---------- END SOURCE ----------

      SUPPORT :
      YES

            ghb Guru Hb (Inactive)
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            6 Start watching this issue

              Created:
              Updated:
              Resolved: