Login  Register

Re: Java3D 1.6 Web Start from Mac OS X to Multi OS

Posted by philjord on May 02, 2017; 1:17am
URL: https://forum.jogamp.org/Java3D-1-6-Web-Start-from-Mac-OS-X-to-Multi-OS-tp4037924p4037925.html

Bjoern,
Firstly thanks for an excellent description of your issue, lots of detail and obviously you've done plenty of investigation.

Your jar inclusions look good, the jogamp-fat.jar is a fine option.

These threee properties probably aren't useful
        <property name="sun.java2d.d3d" value="false"/>
        <property name="sun.java2d.opengl" value="false"/> 
        <property name="j3d.rend" value="jogl"/>


But I'd suggest adding
<property name="sun.awt.noerasebackground" value="true"/>


Without setting up a full development environment debugging this issue is difficult at my end because jnlp doesn't let me swap out jar files to do testing.

Your investigations got you almost right up to the exact line of the NPE
AppContext.getAppContext()  is returning null

This is apparently an issue that arrived with Java 7u25
https://bugs.openjdk.java.net/browse/JDK-8135232
http://stackoverflow.com/questions/17326239/appcontext-getappcontext-is-null-when-javafx-2-app-is-run-in-a-browser
http://stackoverflow.com/questions/17223304/appcontext-is-null-from-rmi-thread-with-java-7-update-25


And obviously it has been struck before in Java3D as there is a work around set up in the JoglPipeline already
    // Fix for Bug 983
    private void checkAppContext()

This is called from the createNewContext method, but that is well after the getBestConfiguration method where you are striking the problem.

As a test to see if simply calling this method earlier will fix the issue I've built a test jar from 1.6.0, could you put it into the jnlp location and test it?



Thanks,
Phil.