openjdk team mailing list archive
-
openjdk team
-
Mailing list archive
-
Message #01746
[Bug 344705] Re: IcedTea Plugin Doesnt Work
The applet viewer worked earlier in the Jaunty cycle. I was using it
successfully (on amd64 architecture) and then it stopped working -
unfortunately when I first noticed it I'd not used a Java applet for a
couple of weeks so couldn't pin it down to the package update that
caused the issue.
Looking at the changelog indicates a major change in:
openjdk-6 (6b14-1.4.1-0ubuntu1) jaunty; urgency=low
* Update IcedTea to the 1.4.1 release.
Looking at the IcedTea commits for the 1.4.1 release shows some relevant additions:
http://icedtea.classpath.org/hg/release/icedtea6-1.4.1/rev/b7957dd8ce9a
After reading the changelog and diffs the likely culprit is:
+ * IcedTeaPlugin.cc: Supply cookie info to Java side.
+ * plugin/icedtea/sun/applet/PluginAppletViewer.java: Apply patch from
+ Xerxes RÃ¥nby to prevent initialization timeout on slower systems. Also,
+ use cookie info when equests for jar are made.
Moving on to debugging the applet viewer, the debug trace for the test
sites shows:
ICEDTEAPLUGIN_DEBUG=1 firefox http://java.com/en/download/help/testvm.xml
...
IcedTeaPluginInstance::SetWindow: Instance 0x2ac18f0 waiting for initialization...
...
REQUEST TAG, PARSING Thread[Thread-1,5,main]
... *** waits and CPU usage headlines ***
Initialization for instance 1 has timed out. Marking it void
ICEDTEA PLUGIN: Instance::SetWindow return
Looking at the source of "REQUEST TAG, PARSING..." at
plugin/icedtea/sun/applet/PluginAppletViewer.java:386:PluginAppletViewer::handleMessage()
PluginDebug.debug ("REQUEST TAG, PARSING " + Thread.currentThread());
PluginAppletViewer.parse( identifier, request.handle,
new StringReader(request.tag),
new URL(request.documentbase) );
The IcedTea diff for the PluginAppletViewer::parse() function shows the diff:
http://icedtea.classpath.org/hg/release/icedtea6-1.4.1/diff/b7957dd8ce9a/plugin/icedtea/sun/applet/PluginAppletViewer.java
@@ -1455,6 +1467,11 @@ import sun.misc.Ref;
public static void parse(int identifier, long handle, Reader in, URL url)
throws IOException {
+
+ // wait until cookie is set (even if cookie is null, it needs to be
+ // "set" to that first
+ while (!siteCookies.containsKey(identifier));
+
My suspicion is that this the CPU us spinning on this while() condition
because the HashMap never contains the 'identifier' key.
Looking further, the only place where (even a null cookie) is set is in
handleMessage() when it receives a "cookie" message:
} else if (message.startsWith("cookie")) {
int cookieStrIndex = message.indexOf(" ");
String cookieStr = null;
if (cookieStrIndex > 0)
cookieStr = message.substring(cookieStrIndex);
// Always set the cookie -- even if it is null
siteCookies.put(identifier, cookieStr);
}
However the debug trace doesn't show any "PAV handling" for a "cookie" -
only "handle" and "tag".
Looking further at the IcedTea commits shows that the cookie handling
was omitted from the original commits:
http://icedtea.classpath.org/hg/release/icedtea6-1.4.1/rev/546ef0cdee06
2009-03-09 Lillian Angel <langel@xxxxxxxxxx>
* IcedTeaPlugin.cc: Merged from icedtea6 properly.
Which includes in part:
+ nsCString cookieInfo(instanceIdentifierPrefix);
+ cookieInfo += "cookie ";
+
+ char* cookieString;
+ if (GetCookie(documentbase, &cookieString) == NS_OK)
+ {
+ cookieInfo += cookieString;
+ }
+
+ factory->SendMessageToAppletViewer (cookieInfo);
+ factory->SendMessageToAppletViewer (encodedAppletTag);
--
IcedTea Plugin Doesnt Work
https://bugs.launchpad.net/bugs/344705
You received this bug notification because you are a member of OpenJDK,
which is subscribed to openjdk-6 in ubuntu.
Status in “openjdk-6” source package in Ubuntu: Confirmed
Bug description:
Binary package hint: icedtea6-plugin
Having installed the icedteam plugin for the web, I've found it does not work. Going to this test URL results in failure:
http://java.com/en/download/help/testvm.xml
CPU utilisation spams to 100% and no java applets are working.
I have the current Jaunty repo revision installed, which is the following:
nullack@PPP:~$ sudo apt-cache policy icedtea6-plugin
icedtea6-plugin:
Installed: 6b14-1.4.1-0ubuntu4
Candidate: 6b14-1.4.1-0ubuntu4
Version table:
*** 6b14-1.4.1-0ubuntu4 0
500 http://archive.ubuntu.com jaunty/main Packages
100 /var/lib/dpkg/status
FireFox knows that it is installed:
IcedTea Java Web Browser Plugin
File name: IcedTeaPlugin.so
The IcedTea Java Web Browser Plugin 1.4.1 (6b14-1.4.1-0ubuntu4) executes Java applets.
MIME Type Description Suffixes Enabled
application/x-java-vm IcedTea class,jar Yes
application/x-java-applet IcedTea class,jar Yes
application/x-java-applet;version=1.1 IcedTea class,jar Yes
application/x-java-applet;version=1.1.1 IcedTea class,jar Yes
application/x-java-applet;version=1.1.2 IcedTea class,jar Yes
application/x-java-applet;version=1.1.3 IcedTea class,jar Yes
application/x-java-applet;version=1.2 IcedTea class,jar Yes
application/x-java-applet;version=1.2.1 IcedTea class,jar Yes
application/x-java-applet;version=1.2.2 IcedTea class,jar Yes
application/x-java-applet;version=1.3 IcedTea class,jar Yes
application/x-java-applet;version=1.3.1 IcedTea class,jar Yes
application/x-java-applet;version=1.4 IcedTea class,jar Yes
application/x-java-applet;version=1.4.1 IcedTea class,jar Yes
application/x-java-applet;version=1.4.2 IcedTea class,jar Yes
application/x-java-applet;version=1.5 IcedTea class,jar Yes
application/x-java-applet;version=1.6 IcedTea class,jar Yes
application/x-java-applet;jpi-version=1.6.0_00 IcedTea class,jar Yes
application/x-java-bean IcedTea class,jar Yes
application/x-java-bean;version=1.1 IcedTea class,jar Yes
application/x-java-bean;version=1.1.1 IcedTea class,jar Yes
application/x-java-bean;version=1.1.2 IcedTea class,jar Yes
application/x-java-bean;version=1.1.3 IcedTea class,jar Yes
application/x-java-bean;version=1.2 IcedTea class,jar Yes
application/x-java-bean;version=1.2.1 IcedTea class,jar Yes
application/x-java-bean;version=1.2.2 IcedTea class,jar Yes
application/x-java-bean;version=1.3 IcedTea class,jar Yes
application/x-java-bean;version=1.3.1 IcedTea class,jar Yes
application/x-java-bean;version=1.4 IcedTea class,jar Yes
application/x-java-bean;version=1.4.1 IcedTea class,jar Yes
application/x-java-bean;version=1.4.2 IcedTea class,jar Yes
application/x-java-bean;version=1.5 IcedTea class,jar Yes
application/x-java-bean;version=1.6 IcedTea class,jar Yes
application/x-java-bean;jpi-version=1.6.0_00 IcedTea class,jar Yes
References