The IBM alphaworks Manyeye web site[http://services.alphaworks.ibm.com/manyeyes/home], which draws charts of various sorts via java applets, doesn't seem to work with any of the Gecko-based browsers using the Java Embedding Plugin installed.
The site contains the warning "On Macs, best viewed in Safari", so it could well be a browser issue. But in looking at the samples via the Activity Monitor, it seems to descent into nothingness, with the Activity Monitor samples dwindling into a slew of threads all ending with either:
100 JVM_RegisterSignal
100 JVM_RegisterSignal
100 semaphore_wait_trap
100 semaphore_wait_trap
or
100 JVM_RegisterSignal
100 jio_snprintf
100 jio_snprintf
100 mach_msg
100 mach_msg_trap
100 mach_msg_trap
.
When running it under Seamonkey, with the Java console active, it ends with a message: "No menu for slot: Categorization" that seems to be a java applet issue of some sort.
I've removed the JavaEmbeddingPlugin.bundle and tried to replicate the problem, but it ends with the message:
java.lang.UnsupportedClassVersionError: manyeyes/vis/container/ManyEyesContainer (Unsupported major.minor version 48.0)
Which I interpret as meaning the 1.3.1 version of Java is inadequate to handle the applet being loaded.
To replicate the problem, just visit the Manyeyes web page and click on any of the chart thumbnails to launch the chart-drawing applet. In the browser window, the applet will load, but never gets to the point where anything is written back to the window.
The "No menu for slot" appears frequently -- it would appear that some problem exists with the "slot" extensible objects, which in turn appear to be part of the Java(TM) Web Services Developer Pack (Version 1.6). Since it works under Safari, I would hope that the Java Embedding Plugin would be using the same version of the installed Java codebase, but ... ?
Any thoughts?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
This does seem to be a bug in the Java Embedding Plugin ... but it'll
be a tough one to resolve.
None of your debugging information has any bearing on the problem:
It's normal to see threads "ending" in semaphore_wait_trap or
mach_msg_trap -- those threads are just waiting to process new
"events". And even when the ManyEyes applet is sucessfully displayed,
you still see lots of "No menu for slot" errors in the Java Console.
It's just that the applet doesn't display (the space where it would
ordinarily display is blank). (I tested with Firefox 2.0.0.3 and
Camino 1.0.4 in Mac OS X 10.4.9, both using the latest version
(0.9.6.2) of the JEP.)
I'll be working on this, but it will probably take a while.
If IBM wants to post a reduced testcase that specifically demonstrates
this problem, I'd be more than happy to see it. (They've never
contacted me about this problem.)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The behavior of IBM's "Many Eyes" Java applet seems to have changed
recently, because the problem you reported is now much less severe.
You still (usually) have to resize or scroll the page to make the
applet appear. But previously it never appeared no matter what I did.
I tested with Firefox 2.0.0.4 and Camino 1.5 (both of which bundle JEP
0.9.6.2, which is the current version) on OS X 10.4.10. Please let me
know your results ... but I'd say that this problem is now (more or
less) fixed.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I agree. On the version of Camino I am running (1.6.a1pre, 2007-06-12 build) it draws the contents by itself (without noodging it) at least half the time, and when I do something to cause the window to refresh in the other cases, the display is correctly re-drawn.
Seems fixed plenty good for me.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The IBM alphaworks Manyeye web site[http://services.alphaworks.ibm.com/manyeyes/home], which draws charts of various sorts via java applets, doesn't seem to work with any of the Gecko-based browsers using the Java Embedding Plugin installed.
The site contains the warning "On Macs, best viewed in Safari", so it could well be a browser issue. But in looking at the samples via the Activity Monitor, it seems to descent into nothingness, with the Activity Monitor samples dwindling into a slew of threads all ending with either:
100 JVM_RegisterSignal
100 JVM_RegisterSignal
100 semaphore_wait_trap
100 semaphore_wait_trap
or
100 JVM_RegisterSignal
100 jio_snprintf
100 jio_snprintf
100 mach_msg
100 mach_msg_trap
100 mach_msg_trap
.
When running it under Seamonkey, with the Java console active, it ends with a message: "No menu for slot: Categorization" that seems to be a java applet issue of some sort.
I've removed the JavaEmbeddingPlugin.bundle and tried to replicate the problem, but it ends with the message:
java.lang.UnsupportedClassVersionError: manyeyes/vis/container/ManyEyesContainer (Unsupported major.minor version 48.0)
Which I interpret as meaning the 1.3.1 version of Java is inadequate to handle the applet being loaded.
To replicate the problem, just visit the Manyeyes web page and click on any of the chart thumbnails to launch the chart-drawing applet. In the browser window, the applet will load, but never gets to the point where anything is written back to the window.
Here's the Seamonkey java console output:
MRJ Plugin for Mac OS X v1.0.1
[starting up Java Applet Security @ Sat May 19 11:44:01 EDT 2007]
Sat May 19 11:44:31 EDT 2007 JEP creating applet manyeyes.vis.container.ManyEyesContainer (http://services.alphaworks.ibm.com/manyeyes/)
========= ManyEyesContainer.init() / 1.05 =========
Done with init().
Loading Code...
loading class: manyeyes.vis.diagram.ManyEyesChangeTreemap
Code loaded; loading data...
Loaded 8647 bytes from net: http://services.alphaworks.ibm.com/manyeyes/static-resources/data_gzip/89a1c8b71009510801100c6ffe080007.gz
Done loading http://services.alphaworks.ibm.com/manyeyes/static-resources/data_gzip/89a1c8b71009510801100c6ffe080007.gz
parsed map: {"transposed":"false", "format":"delimited", "slots": [ { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "CLASS" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "MFR" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "CAR LINE" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "DISPLACEMENT" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "NUMB CYL" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "TRANS" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "CITY MPG (GUIDE)" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "HWY MPG (GUIDE)" }]}
#### READING WITH THIS SCHEMA:
{"transposed":"false", "format":"delimited", "slots": [ { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "CLASS" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "MFR" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "CAR LINE" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "DISPLACEMENT" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "NUMB CYL" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "TRANS" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "CITY MPG (GUIDE)" }, { "key": "null", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "HWY MPG (GUIDE)" }]}
Finally read: {"transposed":"false", "format":"delimited", "slots": [ { "key": "CLASS", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "CLASS" }, { "key": "MFR", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "MFR" }, { "key": "CAR LINE", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "CAR LINE" }, { "key": "DISPLACEMENT", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "DISPLACEMENT" }, { "key": "NUMB CYL", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "NUMB CYL" }, { "key": "TRANS", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "false", "name": "TRANS" }, { "key": "CITY MPG (GUIDE)", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "CITY MPG (GUIDE)" }, { "key": "HWY MPG (GUIDE)", "table": "null", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "HWY MPG (GUIDE)" }]}
Closed input streams.
Done loading stuff.
using mapping: {"transposed":"false", "format":"delimited", "slots": [ { "key": "First", "table": "DEFAULT_TABLE", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "HWY MPG (GUIDE)" }, { "key": "Second", "table": "DEFAULT_TABLE", "uiLevel": "defaultChoice", "optional":"false", "dataType": "number", "multiple": "false", "name": "CITY MPG (GUIDE)" }, { "key": "Categorization", "table": "DEFAULT_TABLE", "uiLevel": "defaultChoice", "optional":"false", "dataType": "text", "multiple": "true", "name": ["CLASS", "MFR", "CAR LINE", "TRANS"] }]}
%%%%%% slot: com.ibm.vcl.vis.environment.Slot@848ecc visSlot: com.ibm.vcl.vis.environment.Slot@bb2bc3
%%%%%% slot: com.ibm.vcl.vis.environment.Slot@363068 visSlot: com.ibm.vcl.vis.environment.Slot@a41cc7
##### Creating UI panel
setting menus to slots
First: HWY MPG (GUIDE)
No menu for slot: First
Second: CITY MPG (GUIDE)
No menu for slot: Second
Categorization: [Ljava.lang.String;@2d59a3
No menu for slot: Categorization
setting menus to slots
First: HWY MPG (GUIDE)
No menu for slot: First
Second: CITY MPG (GUIDE)
No menu for slot: Second
Categorization: [Ljava.lang.String;@2d59a3
No menu for slot: Categorization
Set to bookmark.
Startup UI generation
container.run(): Thread[AWT-EventQueue-6,4,http://services.alphaworks.ibm.com/manyeyes/-threadGroup]
##### Creating UI panel
>>>> menu for First
DISPLACEMENT
NUMB CYL
CITY MPG (GUIDE)
HWY MPG (GUIDE)
>>>> menu for Second
DISPLACEMENT
NUMB CYL
CITY MPG (GUIDE)
HWY MPG (GUIDE)
created mapping UI.
setting menus to slots
First: HWY MPG (GUIDE)
Second: CITY MPG (GUIDE)
Categorization: [Ljava.lang.String;@2d59a3
No menu for slot: Categorization
The "No menu for slot" appears frequently -- it would appear that some problem exists with the "slot" extensible objects, which in turn appear to be part of the Java(TM) Web Services Developer Pack (Version 1.6). Since it works under Safari, I would hope that the Java Embedding Plugin would be using the same version of the installed Java codebase, but ... ?
Any thoughts?
This does seem to be a bug in the Java Embedding Plugin ... but it'll
be a tough one to resolve.
None of your debugging information has any bearing on the problem:
It's normal to see threads "ending" in semaphore_wait_trap or
mach_msg_trap -- those threads are just waiting to process new
"events". And even when the ManyEyes applet is sucessfully displayed,
you still see lots of "No menu for slot" errors in the Java Console.
It's just that the applet doesn't display (the space where it would
ordinarily display is blank). (I tested with Firefox 2.0.0.3 and
Camino 1.0.4 in Mac OS X 10.4.9, both using the latest version
(0.9.6.2) of the JEP.)
I'll be working on this, but it will probably take a while.
If IBM wants to post a reduced testcase that specifically demonstrates
this problem, I'd be more than happy to see it. (They've never
contacted me about this problem.)
The behavior of IBM's "Many Eyes" Java applet seems to have changed
recently, because the problem you reported is now much less severe.
You still (usually) have to resize or scroll the page to make the
applet appear. But previously it never appeared no matter what I did.
I tested with Firefox 2.0.0.4 and Camino 1.5 (both of which bundle JEP
0.9.6.2, which is the current version) on OS X 10.4.10. Please let me
know your results ... but I'd say that this problem is now (more or
less) fixed.
I agree. On the version of Camino I am running (1.6.a1pre, 2007-06-12 build) it draws the contents by itself (without noodging it) at least half the time, and when I do something to cause the window to refresh in the other cases, the display is correctly re-drawn.
Seems fixed plenty good for me.