Recently one of our developers experienced the exception seen below. This is for a Swing application with JFXPanels. After this exception at least one of the JFXPanels was not updated anymore on screen. He was not able to reproduce this so far.
RenderJob.run: internal exception
java.lang.IllegalStateException: The view has already been closed
at com.sun.glass.ui.View.checkNotClosed(View.java:402)
at com.sun.glass.ui.View.unlock(View.java:744)
at com.sun.glass.ui.Pen.end(Pen.java:36)
at com.sun.javafx.tk.quantum.UploadingPainter.run(UploadingPainter.java:145)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at com.sun.prism.render.RenderJob.run(RenderJob.java:37)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:98)
at java.lang.Thread.run(Thread.java:619)
RenderJob.run: internal exception
java.lang.IllegalStateException: The view has already been closed
at com.sun.glass.ui.View.checkNotClosed(View.java:402)
at com.sun.glass.ui.View.unlock(View.java:744)
at com.sun.glass.ui.Pen.end(Pen.java:36)
at com.sun.javafx.tk.quantum.UploadingPainter.run(UploadingPainter.java:145)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:317)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:150)
at com.sun.prism.render.RenderJob.run(RenderJob.java:37)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:98)
at java.lang.Thread.run(Thread.java:619)