When deploying Java applets to the Sun Java Plugin (version 1.3.0_02) on Microsoft Windows (any version), the plug-in caching mechanism does not work
the way browser caching does.
A resolution is requested because both plug-in caching and indexed JAR files are needed to deploy very large Java applets to the Enterprise. Also, browser caching does not work with HTTPS, which we would like to implement. We don't want to choose between indexed JAR files and plugin caching because both are key components for large Java applet deployment on our intranet.
We cannot use Webstart because it is not available on all the platforms we support.
I went ahead and put together a quick demonstration of the problem.
There are four files in Plugin.zip: 1.jar, 2.jar, 3.jar, and launch.html
1.jar has been indexed by running the following command:
jar -i 1.jar 2.jar 3.jar
This created a file named Index.list in 1.jar. The important thing to note is
that 3.jar contains a class that is never referenced by the applet in 1.jar,
so 3.jar should never be downloaded.
If you have the Java Plug-in installed, all you need to do is bring up
launch.html in your browser. Don't worry about the applet itself; it doesn't
do anything. Just load the applet, then kill it. What will happen is all 3
jar files will be put in the Plugin's cache directory. This demonstrates that
the indexing does not work the same as browser caching, because 3.jar should not ever be touched.
I have set up the following four test cases using these files:
Case 1) browser cached, jar files signed and indexed
Case 2) browser cached, jar files signed and unindexed
Case 3) plugin cached, jar files signed and indexed
Case 4) plugin cached, jar files signed and unindexed
I signed all these with our RSA object signing certificate from VeriSign.
Here is what I observed:
Case 1: Only jar files 1.jar and 2.jar were downloaded and cached. This is
expected behavior.
Case 2: All 3 jar files were downloaded. This is expected behavior.
Case 3: All 3 jar were downloaded. This is unexpected behavior.
Case 4: All 3 jar files were downloaded. This is expected behavior.
Case 3 should behave like Case 1, in that only jar files 1 and 2 should be
downloaded.
the way browser caching does.
A resolution is requested because both plug-in caching and indexed JAR files are needed to deploy very large Java applets to the Enterprise. Also, browser caching does not work with HTTPS, which we would like to implement. We don't want to choose between indexed JAR files and plugin caching because both are key components for large Java applet deployment on our intranet.
We cannot use Webstart because it is not available on all the platforms we support.
I went ahead and put together a quick demonstration of the problem.
There are four files in Plugin.zip: 1.jar, 2.jar, 3.jar, and launch.html
1.jar has been indexed by running the following command:
jar -i 1.jar 2.jar 3.jar
This created a file named Index.list in 1.jar. The important thing to note is
that 3.jar contains a class that is never referenced by the applet in 1.jar,
so 3.jar should never be downloaded.
If you have the Java Plug-in installed, all you need to do is bring up
launch.html in your browser. Don't worry about the applet itself; it doesn't
do anything. Just load the applet, then kill it. What will happen is all 3
jar files will be put in the Plugin's cache directory. This demonstrates that
the indexing does not work the same as browser caching, because 3.jar should not ever be touched.
I have set up the following four test cases using these files:
Case 1) browser cached, jar files signed and indexed
Case 2) browser cached, jar files signed and unindexed
Case 3) plugin cached, jar files signed and indexed
Case 4) plugin cached, jar files signed and unindexed
I signed all these with our RSA object signing certificate from VeriSign.
Here is what I observed:
Case 1: Only jar files 1.jar and 2.jar were downloaded and cached. This is
expected behavior.
Case 2: All 3 jar files were downloaded. This is expected behavior.
Case 3: All 3 jar were downloaded. This is unexpected behavior.
Case 4: All 3 jar files were downloaded. This is expected behavior.
Case 3 should behave like Case 1, in that only jar files 1 and 2 should be
downloaded.
- duplicates
-
JDK-4330400 InvalidJarIndexException with applet jar file when using "cache_option=plugin"
- Closed