Swing and JavaFX thread merge
jeff at reportmill.com
Thu Aug 8 06:17:16 PDT 2013
It looks like this is specific to MacOSX 7u25+, if you run Java Inventor from the JAWS link on MacOSX (I'm using JVM 1.7.0_25 or 40-ea):
prompt> javaws http://reportmill.com/javi/javi1/JavaInventor1.jnlp
Here are the steps:
1. Create New Project and Open
2. Click on large, animated "New Java Starter File" to bring up JOptionPane
Then if you move the mouse around, you should see the other buttons on the screen still animate or illuminate in the FX thread. Whereas on 7u20 or Windows or non-JAWS launch, the JavaFX effects are not triggered while the modal panel is up. If you dismiss the option pane with the escape key and quickly re-click the New Starter File button repeatedly, eventually the SwingUtilities.computeIntersection NPE will manifest (sooner if you are doing a sales demo).
Any thoughts on what would make the FX thread ignore the modal state in this configuration?
On Aug 8, 2013, at 6:50 AM, Artem Ananiev <artem.ananiev at oracle.com> wrote:
> On 8/8/2013 1:45 AM, Jeff Martin wrote:
>> I thought I was getting this automatically - when I run on my
>> desktop, I can bring up a JOptionPane from a Swing thread and
>> JFXPanels (correctly) block. But when I run from Java Web Start, they
>> don't, and I end up with sporadic SwingUtilities.computeIntersection
> Once these two JDK/JavaFX bugs are resolved, scenario with JOptionPane you described will work. As I wrote, it won't work by default in JDK8, you'll need to run your app with certain system property (something like -Djavafx.swing.singlethreaded=true).
>> Is there a secret setting that has a different default with JAWS?
> NPEs look like a bug, either in AWT/FX, or in your application. I really doubt it's related to Java Web Start. Could you provide a test to reproduce the exceptions, please?
>> On Aug 7, 2013, at 5:06 AM, Artem Ananiev <artem.ananiev at oracle.com> wrote:
>>> Hi, Pedro Duque Vieira,
>>> this is in progress. JDK part is tracked in 8015477:
>>> JavaFX part is described in RT-30694:
>>> Note that in JDK8/JavaFX8 single-threaded mode will not be a part of public API, it will be an experimental feature.
>>> On 8/7/2013 2:43 AM, Pedro Duque Vieira wrote:
>>>> Some time ago there was a patch submitted which for all purposes merged the
>>>> swing and javafx thread, making it easier for developers working on a
>>>> swing/javafx app - http://wiki.apidesign.org/wiki/JavaFX
>>>> Is this available now (I was under the impression it is)? How do I use it?
>>>> Thanks in advance,
More information about the openjfx-dev