exception

Kevin Rushforth kevin.rushforth at oracle.com
Mon Aug 5 07:36:43 PDT 2013


This suggests a threading problem, as also commented in 
https://javafx-jira.kenai.com/browse/RT-27655 (to which you added your 
stack trace). Can you double-check that you never touch a live node 
(that is, a node attached to a Scene) from any thread other than the FX 
Application thread?

-- Kevin


Peter Mathia wrote:
> Hi everyone,
> is anybody able to tell me something about this error without posting my
> code? I use javaFX 2.2 to develop Gantt chart visualizer. Sometimes I get
> this exceptions when I want to update GUI in Platform.runLater thread.
> The chart has Canvas as a background and every Task in chart is represented
> by a Rectangle (drag/resize)...
> Thank you!
>
> Peter
>
> java.lang.NullPointerException
>     at com.sun.javafx.sg.prism.NGCanvas$RenderBuf.validate(NGCanvas.java:76)
>     at com.sun.javafx.sg.prism.NGCanvas.initCanvas(NGCanvas.java:336)
>     at com.sun.javafx.sg.prism.NGCanvas.renderContent(NGCanvas.java:316)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204)
>     at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420)
>     at
> com.sun.javafx.sg.prism.NGNode$CacheFilter.impl_renderNodeToScreen(NGNode.java:712)
>     at com.sun.javafx.sg.BaseCacheFilter.render(BaseCacheFilter.java:168)
>     at com.sun.javafx.sg.prism.NGNode$CacheFilter.render(NGNode.java:660)
>     at com.sun.javafx.sg.prism.NGNode.renderCached(NGNode.java:487)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:183)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204)
>     at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420)
>     at com.sun.javafx.sg.prism.NGNode.renderForClip(NGNode.java:429)
>     at com.sun.javafx.sg.prism.NGNode.renderRectClip(NGNode.java:320)
>     at com.sun.javafx.sg.prism.NGNode.renderClip(NGNode.java:346)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:179)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204)
>     at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204)
>     at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204)
>     at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420)
>     at com.sun.javafx.sg.prism.NGNode.renderForClip(NGNode.java:429)
>     at com.sun.javafx.sg.prism.NGNode.renderRectClip(NGNode.java:320)
>     at com.sun.javafx.sg.prism.NGNode.renderClip(NGNode.java:346)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:179)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204)
>     at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204)
>     at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.sg.prism.NGGroup.renderContent(NGGroup.java:204)
>     at com.sun.javafx.sg.prism.NGRegion.renderContent(NGRegion.java:420)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:187)
>     at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:39)
>     at com.sun.javafx.sg.BaseNode.render(BaseNode.java:1145)
>     at com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:117)
>     at
> com.sun.javafx.tk.quantum.AbstractPainter.paintImpl(AbstractPainter.java:175)
>     at
> com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:73)
>     at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
>     at
> java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351)
>     at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)
>     at com.sun.prism.render.RenderJob.run(RenderJob.java:37)
>     at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
>     at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
>     at
> com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:98)
>     at java.lang.Thread.run(Thread.java:724)
>   


More information about the openjfx-dev mailing list