United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
Bug ID: JDK-6635826 New plug-in does not run on top of JDK 1.4.2 because of System.getenv() use and other reasons
JDK-6635826 : New plug-in does not run on top of JDK 1.4.2 because of System.getenv() use and other reasons

Details
Type:
Bug
Submit Date:
2007-11-30
Status:
Closed
Updated Date:
2010-09-08
Project Name:
JDK
Resolved Date:
2008-06-16
Component:
deploy
OS:
generic
Sub-Component:
plugin
CPU:
generic
Priority:
P3
Resolution:
Fixed
Affected Versions:
6u10
Fixed Versions:
6u10 (b09)

Related Reports
Relates:
Relates:
Relates:
Relates:
Relates:
Relates:

Sub Tasks

Description
The new plug-in does not launch on top of JDK 1.4.2 because it calls System.getenv() to fetch debugging-related environment variables and getenv() was only "re-enabled" in JDK 1.5. There may be other reasons it doesn't work on top of JDK 1.4.2 such as 6609139 but this is the first and most obvious failure that needs to be fixed. It isn't essential that these environment variables actually be fetched correctly but it is essential that fetching them not break the plug-in.

                                    

Comments
SUGGESTED FIX

http://sa.sfbay.sun.com/projects/deployment_data/6u10/6635826.0
testcase: http://web-east.east.sun.com/deployment/www/tests/1.6.0_10/6635826/
                                     
2007-12-01
EVALUATION

Attempting to make the new plug-in run on top of JDK 1.4.2 (on
Windows) required the following changes:

  - Switched to -target 1.4 for all plugin classes

  - Avoiding the direct use of System.getenv(), which was broken on
    JDK versions before 5

  - Guarded certain System.loadLibrary() and load() calls due to less
    robust System.load() implementation on 1.4.2

  - Refactored progress listener support and guarded against lack of
    it on 1.4.2

  - Guarded against lack of sun.net.www.ParseUtil.encodePath(String,
    boolean) on older 1.4.2 versions

  - Failed gracefully if the DeployCacheHandler, proxy and cookie
    initialization fail due to lack of dependent classes

  - Dealt with lack of Thread.getState() on JDK 1.4.2

  - Loaded regutils DLL early on Windows

Also added better support for debugging bootstrapping issues in the
new plug-in.

Applets now run on top of the new plug-in on JDK 1.4.2 on Windows.
Because there was no XEmbed support even in the AWT MToolkit on
Unix/X11 platforms in the JDK 1.4.2 release, it is infeasible to make
the new plug-in run on top of JDK 1.4.2 on X11 platforms.

Related bugs 6611381 and 6636067 are still to be resolved for more
complete functionality when running on 1.4.2.
                                     
2007-12-01



Hardware and Software, Engineered to Work Together