Bug 837166 - RFE: jmol plugin does not work
Summary: RFE: jmol plugin does not work
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: jmol
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Susi Lehtola
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-07-03 03:22 UTC by Paulo Andrade
Modified: 2012-09-08 02:23 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-09-08 02:23:23 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Paulo Andrade 2012-07-03 03:22:19 UTC
In my WIP sagemath package I just did a quick debug of the jmol interface to display interactive graphics.
Since I want to use the system jmol, my sagemath.spec removes the sagenb bundled jmol files and make a symlink to the system one, e.g.:

$ ls -l /usr/lib64/python2.7/site-packages/sagenb/data/jmol
lrwxrwxrwx. 1 root root 15 Jul  3 00:03 /usr/lib64/python2.7/site-packages/sagenb/data/jmol -> /usr/share/java

but it was failing when attempting to use <basedir>/appletweb/Jmol.js, so I just sudo cp'ed it:

$ ll /usr/share/java/appletweb/
total 132
-rw-r--r--. 1 pcpa pcpa  4698 Jul 20  2011 chime2jmol_documentation.txt
-rw-r--r--. 1 pcpa pcpa  9356 Jul 20  2011 chime2jmol.pl
-rw-r--r--. 1 pcpa pcpa 10364 Jul 20  2011 ChimeToJmol.js
-rw-r--r--. 1 pcpa pcpa 27349 Jul 20  2011 Jmol-10.js
-rw-r--r--. 1 pcpa pcpa    37 Jul 20  2011 JmolApplet.properties
-rw-r--r--. 1 pcpa pcpa  1626 Jul 20  2011 JmolAppletProxy.cgi
-rw-r--r--. 1 pcpa pcpa 57281 Jul 20  2011 Jmol.js
-rw-r--r--. 1 pcpa pcpa  1185 Jul 20  2011 SystemGetProperty.java
-rw-r--r--. 1 pcpa pcpa   815 Jul 20  2011 testSystemGetProperty.html

But then I get a failure due to missing jar files when attempting to display some plot in the sage notebook. Example console output:

$ java version "1.7.0_03-icedtea"
OpenJDK Runtime Environment (fedora-2.2.1.fc18.8-x86_64)
OpenJDK 64-Bit Server VM (build 23.0-b21, mixed mode)
JAR http://localhost:8000/java/jmol/JmolApplet0.jar not found. Continuing.
net.sourceforge.jnlp.LaunchException: Fatal: Initialization Error: Could not initialize applet. 
        at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:735)
        at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:676)
        at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:886)
Caused by: java.lang.ClassNotFoundException: JmolApplet
        at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClass(JNLPClassLoader.java:1398)
        at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:725)
        ... 2 more
Caused by: 
java.lang.ClassNotFoundException: JmolApplet
        at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClass(JNLPClassLoader.java:1398)
        at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:725)
        at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:676)
        at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:886)
java.lang.NullPointerException
        at net.sourceforge.jnlp.NetxPanel.runLoader(NetxPanel.java:154)
        at sun.applet.AppletPanel.run(AppletPanel.java:379)
        at java.lang.Thread.run(Thread.java:722)
java.lang.NullPointerException
        at sun.applet.AppletPanel.run(AppletPanel.java:429)
        at java.lang.Thread.run(Thread.java:722)
JAR http://localhost:8000/java/jmol/JmolApplet0.jar not found. Continuing.
net.sourceforge.jnlp.LaunchException: Fatal: Initialization Error: Could not initialize applet. 
        at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:735)
        at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:676)
        at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:886)
Caused by: java.lang.ClassNotFoundException: JmolApplet
        at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClass(JNLPClassLoader.java:1398)
        at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:725)
        ... 2 more
Caused by: 
java.lang.ClassNotFoundException: JmolApplet
        at net.sourceforge.jnlp.runtime.JNLPClassLoader.loadClass(JNLPClassLoader.java:1398)
        at net.sourceforge.jnlp.Launcher.createApplet(Launcher.java:725)
        at net.sourceforge.jnlp.Launcher.getApplet(Launcher.java:676)
        at net.sourceforge.jnlp.Launcher$TgThread.run(Launcher.java:886)
java.lang.NullPointerException
        at net.sourceforge.jnlp.NetxPanel.runLoader(NetxPanel.java:154)
        at sun.applet.AppletPanel.run(AppletPanel.java:379)
        at java.lang.Thread.run(Thread.java:722)
java.lang.NullPointerException
        at sun.applet.AppletPanel.run(AppletPanel.java:429)
        at java.lang.Thread.run(Thread.java:722)

Comment 1 Susi Lehtola 2012-07-03 05:32:17 UTC
so basically what it needs is the jmol applet?

Comment 2 Paulo Andrade 2012-07-03 12:53:55 UTC
Doing some trial error...

$ sudo cp JmolApplet0.jar /usr/share/java/

in console I started firefox I see:

java version "1.7.0_03-icedtea"
OpenJDK Runtime Environment (fedora-2.2.1.fc18.8-x86_64)
OpenJDK 64-Bit Server VM (build 23.0-b21, mixed mode)
2012-07-03 09:46:57-0400 [HTTPChannel,3,127.0.0.1] Request error: Connection to the other side was lost in a non-clean fashion.
Jmol applet jmolApplet0__084094901940265__ initializing
AppletRegistry.checkIn(jmolApplet0__084094901940265__)
error preloading org.jmol.popup.JmolPopup: org.jmol.popup.JmolPopup
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.appletwrapper.ClassPreloader - -1 - run
urlImage=jar:http://localhost:8000/java/jmol/JmolApplet0.jar!/jmol75x29x8.gif
1722 script command tokens
applet context: -applet
appletDocumentBase=http://localhost:8000/home/admin/0/
appletCodeBase=http://localhost:8000/java/jmol/
(C) 2009 Jmol Development
Jmol Version: 12.0.48  2011-07-04 18:26
java.vendor: Oracle Corporation
java.version: 1.7.0_03-icedtea
os.name: Linux
memory: 8.2/30.9
processors available: 4
useCommandThread: false
appletId:jmolApplet0__084094901940265__
defaults = "Jmol"
backgroundColor = "black"
language=en_US
FileManager opening http://localhost:8000/home/admin/0/cells/10/sage0-size500.jmol?1341323212
FileManager opening http://localhost:8000/home/admin/0/sage0-size500-200971641.jmol.zip
FileManager.getAtomSetCollectionFromString()
2012-07-03 09:46:58-0400 [HTTPChannel,2,127.0.0.1] Request error: Connection to the other side was lost in a non-clean fashion.
The Resolver thinks Xyz
File reader was not found:Xyz
eval ERROR: File reader was not found:Xyz
----line 1 command 1 of SCRIPT:
         data "model list" 10
empty
Xx -6.0 -7.0 -3.0
Xx 0.0 -7.0 -3.0
Xx 6.0 -7.0 -3.0
Xx 7.0 -6.0 -3.0
Xx 7.0 0.0 -3.0
Xx 7.0 6.0 -3.0
Xx -7.0 -6.0 -3.0
Xx -7.0 -6.0 0.0
Xx -7.0 -6.0 3.0
Xx 5.5 5.5 5.5
 end >> "model list" <<
----line 2 command 2 of /home/admin/0/cells/10/sage0-size500.jmol?1341323212:
         script "SCRIPT"
----
         script "/home/admin/0/cells/10/sage0-size500.jmol?1341323212"




---%<---%<---%<---
Starting over after:

$ sudo cp JmolApplet0_ReadersMolXyz.jar /usr/share/java/

urlImage=jar:http://localhost:8000/java/jmol/JmolApplet0.jar!/jmol75x29x8.gif
Jmol applet jmolApplet0__7187534641393496__ initializing
AppletRegistry.checkIn(jmolApplet0__7187534641393496__)
error preloading org.jmol.popup.JmolPopup: org.jmol.popup.JmolPopup
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.appletwrapper.ClassPreloader - -1 - run
1722 script command tokens
applet context: -applet
appletDocumentBase=http://localhost:8000/home/admin/0/
appletCodeBase=http://localhost:8000/java/jmol/
(C) 2009 Jmol Development
Jmol Version: 12.0.48  2011-07-04 18:26
java.vendor: Oracle Corporation
java.version: 1.7.0_03-icedtea
os.name: Linux
memory: 18.5/38.9
processors available: 4
useCommandThread: false
appletId:jmolApplet0__7187534641393496__
defaults = "Jmol"
backgroundColor = "black"
language=en_US
FileManager opening http://localhost:8000/home/admin/0/cells/10/sage0-size500.jmol?1341323399
FileManager opening http://localhost:8000/home/admin/0/sage0-size500-200971641.jmol.zip
FileManager.getAtomSetCollectionFromString()
The Resolver thinks Xyz
File reader was not found:Xyz
eval ERROR: File reader was not found:Xyz
----line 1 command 1 of SCRIPT:
         data "model list" 10
empty
Xx -6.0 -7.0 -3.0
Xx 0.0 -7.0 -3.0
Xx 6.0 -7.0 -3.0
Xx 7.0 -6.0 -3.0
Xx 7.0 0.0 -3.0
Xx 7.0 6.0 -3.0
Xx -7.0 -6.0 -3.0
Xx -7.0 -6.0 0.0
Xx -7.0 -6.0 3.0
Xx 5.5 5.5 5.5
 end >> "model list" <<
----line 2 command 2 of /home/admin/0/cells/10/sage0-size500.jmol?1341323399:
         script "SCRIPT"
----
         script "/home/admin/0/cells/10/sage0-size500.jmol?1341323399"



---%<---%<---%<---
Starting over yet again after:

$ sudo cp JmolApplet0_ReadersMolXyz.jar /usr/share/java/

urlImage=jar:http://localhost:8000/java/jmol/JmolApplet0.jar!/jmol75x29x8.gif
Jmol applet jmolApplet0__662036085239166__ initializing
AppletRegistry.checkIn(jmolApplet0__662036085239166__)
error preloading org.jmol.popup.JmolPopup: org.jmol.popup.JmolPopup
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.appletwrapper.ClassPreloader - -1 - run
1722 script command tokens
applet context: -applet
appletDocumentBase=http://localhost:8000/home/admin/0/
appletCodeBase=http://localhost:8000/java/jmol/
(C) 2009 Jmol Development
Jmol Version: 12.0.48  2011-07-04 18:26
java.vendor: Oracle Corporation
java.version: 1.7.0_03-icedtea
os.name: Linux
memory: 18.2/38.9
processors available: 4
useCommandThread: false
appletId:jmolApplet0__662036085239166__
defaults = "Jmol"
backgroundColor = "black"
language=en_US
FileManager opening http://localhost:8000/home/admin/0/cells/10/sage0-size500.jmol?1341323516
FileManager opening http://localhost:8000/home/admin/0/sage0-size500-200971641.jmol.zip
FileManager.getAtomSetCollectionFromString()
The Resolver thinks Xyz
File reader was not found:Xyz
eval ERROR: File reader was not found:Xyz
----line 1 command 1 of SCRIPT:
         data "model list" 10
empty
Xx -6.0 -7.0 -3.0
Xx 0.0 -7.0 -3.0
Xx 6.0 -7.0 -3.0
Xx 7.0 -6.0 -3.0
Xx 7.0 0.0 -3.0
Xx 7.0 6.0 -3.0
Xx -7.0 -6.0 -3.0
Xx -7.0 -6.0 0.0
Xx -7.0 -6.0 3.0
Xx 5.5 5.5 5.5
 end >> "model list" <<
----line 2 command 2 of /home/admin/0/cells/10/sage0-size500.jmol?1341323516:
         script "SCRIPT"
----
         script "/home/admin/0/cells/10/sage0-size500.jmol?1341323516"


---%<---%<---%<---

Trying to just copy all jar files....

same error.

BRB, restarting firefox :-)

Comment 3 Paulo Andrade 2012-07-03 12:58:36 UTC
After restarting firefox it works!

Sample screenshot:
http://fedorapeople.org/~pcpa/rawhide-sage-jmol-test.png

I will copy only appletweb, JmolApplet0.jar and JmolApplet0_ReadersMolXyz.jar,
then restart firefox and see if it still works next...

Comment 4 Paulo Andrade 2012-07-03 13:05:16 UTC
Hmm, needs more stuff, it almost works with only the above files, just that it does not display anything... I think JmolData.jar is required. Testing.

Comment 5 Paulo Andrade 2012-07-03 13:12:43 UTC
Still does not work, in console I see:

java version "1.7.0_03-icedtea"
OpenJDK Runtime Environment (fedora-2.2.1.fc18.8-x86_64)
OpenJDK 64-Bit Server VM (build 23.0-b21, mixed mode)
urlImage=jar:http://localhost:8000/java/jmol/JmolApplet0.jar!/jmol75x29x8.gif
error preloading org.jmol.popup.JmolPopup: org.jmol.popup.JmolPopup
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.appletwrapper.ClassPreloader - -1 - run
1722 script command tokens
applet context: -applet
appletDocumentBase=http://localhost:8000/home/admin/0/
appletCodeBase=http://localhost:8000/java/jmol/
(C) 2009 Jmol Development
Jmol Version: 12.0.48  2011-07-04 18:26
java.vendor: Oracle Corporation
java.version: 1.7.0_03-icedtea
os.name: Linux
memory: 13.6/38.9
processors available: 4
useCommandThread: false
appletId:jmolApplet0__05394324771559__
defaults = "Jmol"
backgroundColor = "black"
language=en_US
FileManager opening http://localhost:8000/home/admin/0/cells/10/sage0-size500.jmol?1341324483
FileManager opening http://localhost:8000/home/admin/0/sage0-size500-551454699.jmol.zip
FileManager.getAtomSetCollectionFromString()
2012-07-03 10:08:07-0400 [HTTPChannel,6,127.0.0.1] Request error: Connection to the other side was lost in a non-clean fashion.
The Resolver thinks Xyz
reading 10 atoms
ModelSet: haveSymmetry:false haveUnitcells:false haveFractionalCoord:false
1 model in this collection. Use getProperty "modelInfo" or getProperty "auxiliaryInfo" to inspect them.
Default Van der Waals type for model set to Babel
Time to autoBond: 3 ms
ModelSet: autobonding; use  autobond=false  to not generate bonds automatically
no data
Could not instantiate shape:org.jmol.shapesurface.Pmesh: org.jmol.shapesurface.Pmesh
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - isosurface
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
reading isosurface data from http://localhost:8000/home/admin/0/sage0-size500-551454699.jmol.zip|obj_138074.pmesh
Could not instantiate shape:org.jmol.shapesurface.Pmesh: org.jmol.shapesurface.Pmesh
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - colorShape
org.jmol.script.ScriptEvaluator - -1 - color
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapespecial.Draw: org.jmol.shapespecial.Draw
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - draw
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapesurface.Isosurface: org.jmol.shapesurface.Isosurface
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - isosurface
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run
Could not instantiate shape:org.jmol.shapesurface.Pmesh: org.jmol.shapesurface.Pmesh
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1545 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1391 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.viewer.ShapeManager - -1 - allocateShape
org.jmol.viewer.ShapeManager - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - loadShape
org.jmol.script.ScriptEvaluator - -1 - isosurface
org.jmol.script.ScriptEvaluator - -1 - processShapeCommand
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - script
org.jmol.script.ScriptEvaluator - -1 - instructionDispatchLoop
org.jmol.script.ScriptEvaluator - -1 - evaluateCompiledScript
org.jmol.viewer.Viewer - -1 - evalStringWaitStatus
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - runNextScript
org.jmol.viewer.ScriptManager$ScriptQueueRunnable - -1 - run
java.lang.Thread - 722 - run


---%<---%<---%<---
and it looks like:

http://fedorapeople.org/~pcpa/rawhide-sage-jmol-test-fail.png

Also, if running the notebook on a server, it may be required to install the signed jars also... But I am not much experienced with this stuff. In my Mandriva sagemath package, I just install all jmol files under /usr/share/jmol and make the sage notebook symlink to there.

Comment 6 Susi Lehtola 2012-07-04 06:34:10 UTC
(In reply to comment #5)
> Also, if running the notebook on a server, it may be required to install the
> signed jars also... 

Yes, but I have no idea whether signing jars is possible on the Fedora buildsystem. The RPMs are, after all, signed (in a separate process).

> But I am not much experienced with this stuff. In my
> Mandriva sagemath package, I just install all jmol files under
> /usr/share/jmol and make the sage notebook symlink to there.

OK. Please find out which files are necessary, and then we can have a look at how it's possible to build JMol in such a way as to generate them.

Comment 7 Paulo Andrade 2012-07-04 11:32:03 UTC
(In reply to comment #6)
> (In reply to comment #5)
> > Also, if running the notebook on a server, it may be required to install the
> > signed jars also... 
> 
> Yes, but I have no idea whether signing jars is possible on the Fedora
> buildsystem. The RPMs are, after all, signed (in a separate process).

  To make a consistent package, I believe all jar files should be in installed. The "signed" jars are in java concept of trusted code, that still should ask the user if she trust the code to be executed, and remember about that.

  See freebsd port, that appears to have a "self signing" build target:

http://www.freebsd.org/cgi/cvsweb.cgi/ports/science/jmol/

> > But I am not much experienced with this stuff. In my
> > Mandriva sagemath package, I just install all jmol files under
> > /usr/share/jmol and make the sage notebook symlink to there.
> 
> OK. Please find out which files are necessary, and then we can have a look
> at how it's possible to build JMol in such a way as to generate them.

  I suggest installing all of them. But you can choose to make a jmol-applet package, e.g. the _i18n.jar ones are for localization. A jmol-applet subpackage appears to be what debian does:

http://anonscm.debian.org/viewvc/debichem/unstable/jmol/

Comment 8 Paulo Andrade 2012-08-18 15:06:01 UTC
Trying again, from a clean environment, using my last experimental
sagemath build from
http://fedorapeople.org/~pcpa/sagemath/RPMS/x86_64/sagemath-5.2-1.fc18.x86_64.rpm

$ sudo mkdir /usr/share/jmol
$ sudo cp -ar BUILD/jmol-12.0.48/appletweb/ /usr/share/jmol
$ sudo ln -s /usr/share/java/JmolApplet.jar /usr/share/jmol

$ sudo rm -f /usr/share/sagemath/devel/sagenb/data/jmol
$ sudo ln -s /usr/share/jmol /usr/share/sagemath/devel/sagenb/data

Then, in sage prompt:

$ sage
----------------------------------------------------------------------
| Sage Version 5.2, Release Date: 2012-07-25                         |
| Type "notebook()" for the browser-based notebook interface.        |
| Type "help()" for help.                                            |
----------------------------------------------------------------------
sage: notebook()
The notebook files are stored in: sage_notebook.sagenb
**************************************************
*                                                *
* Open your web browser to http://localhost:8081 *
*                                                *
**************************************************
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 9: reading configurations from ~/.fonts.conf is deprecated.
2012-08-18 11:40:07-0400 [-] Log opened.
2012-08-18 11:40:07-0400 [-] twistd 12.1.0 (/usr/bin/python 2.7.3) starting up.
2012-08-18 11:40:07-0400 [-] reactor class: twisted.internet.epollreactor.EPollReactor.
2012-08-18 11:40:07-0400 [-] QuietSite starting on 8081
2012-08-18 11:40:07-0400 [-] Starting factory <__builtin__.QuietSite instance at 0x3381878>


After it opens a firefox tab, I choose help->tutorial->plotting
and select a plot that would use jmol. What I see in the xterm
I started firefox is:

$ urlImage=jar:http://localhost:8081/java/jmol/JmolApplet0.jar!/jmol75x29x8.gif
Jmol applet jmolApplet0__642905635139684__ initializing
AppletRegistry.checkIn(jmolApplet0__642905635139684__)
error preloading org.jmol.popup.JmolPopup: org.jmol.popup.JmolPopup
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1551 - loadClassExt
net.sourceforge.jnlp.runtime.JNLPClassLoader - 1397 - loadClass
java.lang.Class - -2 - forName0
java.lang.Class - 186 - forName
org.jmol.appletwrapper.ClassPreloader - -1 - run
1722 script command tokens
applet context: -applet
appletDocumentBase=http://localhost:8081/doc/live/tutorial/
appletCodeBase=http://localhost:8081/java/jmol/
(C) 2009 Jmol Development
Jmol Version: 12.0.48  2011-07-04 18:26
java.vendor: Oracle Corporation
java.version: 1.7.0_05-icedtea
os.name: Linux
memory: 17.0/30.4
processors available: 4
useCommandThread: false
appletId:jmolApplet0__642905635139684__
defaults = "Jmol"
backgroundColor = "black"
language=en_US
FileManager opening http://localhost:8081/home/_sage_/75/cells/20/sage0-size500.jmol?1345304425
FileManager opening http://localhost:8081/home/_sage_/75/cells/20/cells/20/sage0-size500-975865488.jmol.zip
script ERROR: script ERROR: io error reading http://localhost:8081/home/_sage_/75/cells/20/cells/20/sage0-size500-975865488.jmol.zip|SCRIPT: java.io.FileNotFoundException: http://localhost:8081/home/_sage_/75/cells/20/cells/20/sage0-size500-975865488.jmol.zip


It appears it is some kind of openjdk or icedtea-web issue, that
I remember having in the past, with duplicated path contents, i.e.
the file is actually at

$ find /home/pcpa/.sage/ -name sage0-size500-975865488.jmol.zip
/home/pcpa/.sage/sage_notebook.sagenb/home/__store__/9/9b/9bb/9bbe/_sage_/75/cells/20/sage0-size500-975865488.jmol.zip

That is, the error should be the "/cells/20/cells/20/" that
looks duplicated.

I once had this issue of paths where it work with sun java but
require a patch for openjdk java, but it was long long ago; maybe
it is happening again.

Long history short, it should require installing the appletweb
subdirectory with Jmol.js at least. From that point, I should
be able to make symlinks, or, my package could install Jmol.js
and still use the system wide jmol.

[sorry, I understand this bugzilla reply looks like gibberish :-)]

Comment 9 Paulo Andrade 2012-09-08 02:23:23 UTC
I found a way to make it work, and unless making a proper jmol-applet package, it will require no changes to the current jmol package.

It consists of minor sagemath notebook patching, installing an appletweb/Jmol.js to ".../jmol" and symlinking system JmolApplet.jar and vecmath.jar to ".../jmol". One of the patches is to call jmolInitialize explicitly stating what jars to load, and passing the string "JmolApplet.jar,vecmath.jar".

In my tests it works correctly...


Note You need to log in before you can comment on or make changes to this bug.