This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 185393 - [69cat]Mattise does not like Java3D
Summary: [69cat]Mattise does not like Java3D
Status: RESOLVED INCOMPLETE
Alias: None
Product: guibuilder
Classification: Unclassified
Component: App Framework (show other bugs)
Version: 6.x
Hardware: All All
: P3 normal (vote)
Assignee: issues@guibuilder
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-05-03 21:32 UTC by alied
Modified: 2010-05-12 07:33 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
screenshot of matisse tryng to load a Java3d user panel. (33.16 KB, image/png)
2010-05-04 13:09 UTC, alied
Details
message log (106.15 KB, application/octet-stream)
2010-05-04 14:47 UTC, alied
Details

Note You need to log in before you can comment on or make changes to this bug.
Description alied 2010-05-03 21:32:17 UTC
When I put a component that uses Canvas3d into mattise, fails to load it.
In 6.7 the IDE just closed without notice.
sample code:
<code>
public class ModelPreview extends javax.swing.JPanel {
    private static final long serialVersionUID = 1L;

    private SimpleUniverse universe;
    private Canvas3D canvas3D;
    private BranchGroup sceneTree;
    private float viewYaw = (float) Math.PI / 8;

    /** Creates new form RenoModelPreview */
    public ModelPreview() {
//        super();
        initComponents();
        GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration();
        this.canvas3D = new Canvas3D(config);
        add(this.canvas3D);
        this.canvas3D.setFocusable(false);
        addMouseListeners(this.canvas3D);
//        setBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED));
        this.sceneTree = createSceneTree();
        // Add an ancestor listener to create canvas universe once this component is made visible
        // and clean up universe once its parent frame is disposed
        addAncestorListener();
        this.canvas3D.setSize(this.getSize());
    }
(...)
}
</code>

When used this component in some container, does not get loaded.


Product Version = NetBeans IDE Dev (Build 201005020200)
Operating System = Windows Vista version 6.0 running on x86
Java; VM; Vendor = 1.6.0_20
Runtime = Java HotSpot(TM) Client VM 16.3-b01
Comment 1 Jan Stola 2010-05-04 11:54:25 UTC
I am sorry, I am not able to reproduce this issue. What do you mean exacly by 'fails to load'? Is any exception thrown (also check the end of View|IDE Log)?

Java 3D uses native libraries. Do you have 'java.library.path' system property set appropriately?
Comment 2 alied 2010-05-04 13:09:51 UTC
Created attachment 98433 [details]
screenshot of matisse tryng to load a Java3d user panel.

This is what happens (see attach).
I have the native libs in %programfiles%\java\user\lib, along with the jars, and that path is on the classpath:
Microsoft Windows [Versión 6.0.6002]
Copyright (c) 2006 Microsoft Corporation.  Reservados todos los derechos.

C:\Users\Administrador>set
ALLUSERSPROFILE=C:\ProgramData
APPDATA=C:\Users\Administrador\AppData\Roaming
CLASSPATH=.;C:\Program Files\Java\user\lib
CommonProgramFiles=C:\Program Files\Common Files
COMPUTERNAME=CUBANASO
ComSpec=C:\Windows\system32\cmd.exe
configsetroot=C:\Windows\ConfigSetRoot
FP_NO_HOST_CHECK=NO
HOMEDRIVE=C:
HOMEPATH=\Users\Administrador
LOCALAPPDATA=C:\Users\Administrador\AppData\Local
LOGONSERVER=\\CUBANASO
NUMBER_OF_PROCESSORS=1
OS=Windows_NT
Path=C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Program Files\Ja
va\user\lib;C:\Program Files\Java\jdk1.6.0_18\bin;C:\MinGW\bin;C:\Program Files\
Common Files\Autodesk Shared\;C:\Program Files\QuickTime Alternative\QTSystem;C:
\Program Files\TortoiseSVN\bin.

Also, I added Java3d as a NetBeans library.
Currently I have a module that wraps the java3D and the same happens. Back in 6.7 the IDE just vanished with no log or nothing else.

Try the code from the first post, add the component to the palette, and then add that component to a panel on Matisse
Comment 3 alied 2010-05-04 14:47:14 UTC
Created attachment 98438 [details]
message log
Comment 4 alied 2010-05-04 14:51:13 UTC
This is a more concrete example:
sources are at https://sourceforge.net/projects/sh3d-nb/
expand project sweethome3d-ui
Open com.eteks.sweethome3d.netbeansplatform.NBHomePaneFrame with the matisse
then, add com.eteks.sweethome3d.netbeansplatform.HomeComponent3D to the split pane empty pane (right button).
So far, so good.
try editing any property, and the IDE just goes away.

<Mea_culpa>
the initial post was my mistake, but the issue is real, that´s why I blamed this bug. Anyway, this last post provides a more concrete case which I hope helps to solve it
</Mea_culpa>
Comment 5 alied 2010-05-11 19:55:34 UTC
Please, read comment #4;
sources available via SVN @[1]

[1] svn co https://sh3d-nb.svn.sourceforge.net/svnroot/sh3d-nb sh3d-nb
Comment 7 Jan Stola 2010-05-12 07:33:04 UTC
Note that I must be able to compile your project to be able to try what you suggest. Unfortunately, this is not possible. There is the same problem with both the SVN repository and the TAR file. The building of project sweethome3d-ui fails with the following message:

java.io.IOException: No valid module found in <some_dir>\SH3D_NB\sweethome3d-plugin referred to from C:\DeleteMe\Issue185393\sh3d-nb\SH3D_NB

Note that there is not project.xml in sweethome3d-plugin/nbproject directory.

Please, note that it would be much better to attach a small reproducible test-case. I am not much interested in struggling with your huge project when there is no clear evidence that it will reveal a bug in the GUI builder. So far, it seems that it is either a problem Java 3D libraries, virtual machine or your application. The GUI builder doesn't call any native libraries directly. Hence, it cannot be directly responsible for a crash of a virtual machine.