ChemAxon 909aee4527
29-10-2007 12:29:27
There is a pre-released jogl.jar file included in Apple Java in the /Library/Java/Extensions directory.
This blocks MarvinSpace using the Jogl version is supplies.
To solve this we use a java setting to by-pass the extension when MarvinSpace is launched:
Code: |
java -Djava.ext.dirs="" chemaxon.marvin.space.gui.MSpace |
The corrected launcher script is attached, it should be extracted to /Applications/ChemAxon/MarvinBeans/bin/mspace overwriting the previous script file.
User c3185a12b6
25-11-2007 20:44:00
upgraded to Mac OSX 10.4.11. Then installed Marvinbeans 4.1.13. Got the /lib/jogl_1.0.0-pre-20060731-02_11_04 error. Replaced /bin/mspace (see this thread). Now MarvinSpace starts with no error. It loads the demo file HIV V3. However, its display canvas is blank (i.e. striated lines appearance). Any attempts to display give a NullPointerException with unknown reference input error. Tried loading a new pdb structure saved to disk. Says cannot load.
java.lang.RuntimeException
at chemaxon.marvin.space.GraphicCell.setContexts(Unknown Source)
at chemaxon.marvin.space.GraphicScene.setContexts(Unknown Source)
at chemaxon.marvin.space.GraphicScene.setSceneSize(Unknown Source)
at chemaxon.marvin.space.gui.JMSpaceMenuBar$21.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
TRIED opening directly from RCSB. the right panel shows that file is loaded, and shows correct chains, ligands etc. However, no structure view appears in the left pane, which remains striated. Tried various display options also. Ballandstick, spacefill surface display, etc.
No erros, no display.
ChemAxon efa1591b5a
26-11-2007 09:19:25
HI, what is the 4 character PDB code of the structure you tried to load and display?
Thanks
Miklos
User c3185a12b6
30-11-2007 23:52:35
Any pdb file fails. The issue is that the left side "canvas window" on which the structure would be drawn does not initialize at all. The stack trace pointed to Apple Java Jogl error, eventhough I am using the modified mspace which should redirect to jogl inside chemaxon/marvinbeans etc.
So then, I tried to copy a WORKING install from another mac portable running OSX10.4.0 (modified mspace).
This produced the following stacktrace:
Native directory is /Users/anil/.chemaxon/lib/jogl_1.0.0-pre-20060731-02_11_04
Jogl libraries not found at /Users/anil/.chemaxon/lib/jogl_1.0.0-pre-20060731-02_11_04
Searching for jogl-natives-macosx-universal.jar
Native jar file does not exist: /Applications/ChemAxon/MarvinBeans/lib/lib/jogl_1.0.0-pre-20060731-02_11_04/jogl-natives-macosx-universal.jar
Native jar file does not exist: /Applications/ChemAxon/MarvinBeans/lib/jogl_1.0.0-pre-20060731-02_11_04/jogl-natives-macosx-universal.jar
Native jar file does not exist: /Applications/ChemAxon/MarvinBeans/lib/../lib/jogl_1.0.0-pre-20060731-02_11_04/jogl-natives-macosx-universal.jar
Native jar file does not exist: /Applications/ChemAxon/MarvinBeans/MarvinSpace.app/../.install4j/i4jruntime.jar/jogl_1.0.0-pre-20060731-02_11_04/jogl-natives-macosx-universal.jar
Native jar file does not exist: /Applications/ChemAxon/MarvinBeans/MarvinSpace.app/../lib/MarvinBeans.jar/jogl_1.0.0-pre-20060731-02_11_04/jogl-natives-macosx-universal.jar
Native jar file does not exist: /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/.compatibility/14compatibility.jar/jogl_1.0.0-pre-20060731-02_11_04/jogl-natives-macosx-universal.jar
Native jar file not found at /Applications/ChemAxon/MarvinBeans/lib/lib
Native jar file not found at /Applications/ChemAxon/MarvinBeans/lib
Native jar file not found at /Applications/ChemAxon/MarvinBeans/lib/../lib
Native jar file not found at /Applications/ChemAxon/MarvinBeans/MarvinSpace.app/../.install4j/i4jruntime.jar
Native jar file not found at /Applications/ChemAxon/MarvinBeans/MarvinSpace.app/../lib/MarvinBeans.jar
Native jar file not found at /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Classes/.compatibility/14compatibility.jar
Installation failed.
The jar files referred to in the stacktrace do exist in those locations.
ChemAxon efa1591b5a
03-12-2007 14:43:34
ChemAxon 909aee4527
05-12-2007 14:39:38
Dear Anil,
thank you for the details, we'll try to further investigate this problem then.
Usually the following jogl.jar file causes this:
Code: |
/Library/Java/Extensions/jogl.jar |
It's unfortunate that it was put to the Java Extensions, this causes that this file is found first instead of the one we provide, which is
Code: |
/Applications/ChemAxon/MarvinBeans/lib/jogl.jar |
We'll find a solution to prevent the extension jar being found.
Regards,
Judit
User c3185a12b6
07-12-2007 23:34:43
I do not believe there is a way for the /L/J/Ext/java.jogl file to be made not found, as it would load as part of the first pass by the JVM. There is a way to unload an already loaded package and then load a different version of that package in java. This would not be done under the mspace shell script, but in a front-loading inspector java class. Main.java or whatever is the first class that runs should check the imported package for compatibility and (1) force an unload, (2) force a garbage collection for the unloaded package and then only then (3) load correct package. This is not trivial.
A simpler hack would be to change all classnames in the jogl-old to say myclassname-v100b1 etc and then recompile. there is no way this hack can be broken (because there would be no classnames from the new jogl that would be used).
There is a way to load multiple versions of a classfile and to reference it using its unique versionnumber as well. This is not trivial and requires reflection.