Closed Bug 491600 Opened 16 years ago Closed 16 years ago

Apple's "Java for Mac OS X 10.5 Update 4 Developer Preview (9M3058)" breaks the JEP

Categories

(Plugins Graveyard :: Java (Java Embedding Plugin), defect)

All
macOS
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: smichaud, Assigned: smichaud)

References

Details

Apple has made available its first developer preview of "Java for Mac OS X 10.5 Update 4" at its ADC site (http://developer.apple.com/mac/). It breaks the Java Embedding Plugin when used with its default settings (which run Java applets in a J2SE 5.0 virtual machine). Simply put, the JEP (and the browser) hangs every time you try to load a Java applet, and you need to force quit the browser. The problem doesn't happen when you choose to run Java applets in a Java 1.4.2 virtual machine. And there's another very hackish workaround that I'll discuss below (in another comment). This is Apple's bug, and I hope they will fix it. But in the meantime your only recourse (if you don't want to use either of the workarounds), as far as I know, is to reinstall OS X 10.5, possibly on a clean partition. None of Apple's Java updates can be uninstalled, and Update 3 (Apple's latest actual release) won't install on top of Update 4. A "developer preview" isn't by any reasonable definition a "release". Furthermore Apple warns you that the developer preview "has received only limited testing and should not be installed on a system with critical data". But at least a two bugs have already been filed by people who appear to be using this developer preview -- bug 491213 and bug 491266. And I imagine there will be more.
The bug in Apple's 9M3058 Update 4 Developer Preview is that it loads the "wrong" copies of two jar files when used with the JEP and J2SE 5.0 -- deploy.jar and plugin.jar. There's a simple hack to make it load the "right" copies of deploy.jar and plugin.jar. This has no effect on Safari (for which Update 4 already loads the "right" copies). But it may break other Java functionality (such as for Java applications). So be forwarned. And make sure you can reverse the following steps (i.e. make sure you rename the "wrong" deploy.jar and plugin.jar, instead of deleting them). 1) Open a Terminal session and change to the following directory: cd /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib 2) Rename the "wrong" deploy.jar and plugin.jar: sudo mv deploy.jar deploy.jar.bad sudo mv plugin.jar plugin.jar.bad 3) Create soft links to the "right" deploy.jar and plugin.jar. Note that each of the following two commands must be entered on a single line. I've broken each line to make it easier to read. sudo ln -s /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/ Resources/JavaPluginCocoa.bundle/Contents/Resources/Java/deploy.jar sudo ln -s /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/ Resources/JavaPluginCocoa.bundle/Contents/Resources/Java/plugin.jar
Downloaded Safari 4. Same thing still happens - Safari freezes. The above hack: I am not familiar with Terminal, so ned further instructions. When I open Terminal, a window pops up. 1. How do I change to another directory? 2. Once I have changed directory, how do rename deploy.jar and plugin.jar? 3. How do I create soft links to the right?
comment 3 gives the exact commands you need to type 1. 'cd' = change directory 2. 'sudo' --> you'll need to input your admin password 'mv' = move 3. 'ln -s' the command to create soft links.
(In reply to comment #4) Hilton: I don't see any problems with Safari using Update 4. So your problem may be different from what I describe in this bug, and I may have been wrong to dup your bug (bug 491213) to this one. Nonetheless, Apple hasn't actually *released* any Java updates since Update 3 (released in February 2009). And the 9M3058 Update 4 Developer Preview was made available on April 23, 2009. So let's start by trying to figure out what version of Java you actually have installed. Do this before you try the hack in comment #3. 1) Open Terminal (in Applications : Utilities). 2) At the '$' prompt enter the following command: java -version The results of this command on a 10.5.6 system with Update 3 installed are as follows: java version "1.5.0_16" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b06-284) Java HotSpot(TM) Client VM (build 1.5.0_16-133, mixed mode, sharing) The results of this command on a 10.5.6 with the Update 4 Developer Preview (9M3058) installed are: java version "1.5.0_16" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b06-290) Java HotSpot(TM) Client VM (build 1.5.0_16-134, mixed mode, sharing) Please paste into a comment the results you get from 'java -version'.
java version "1.5.0_13" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05-237) Java HotSpot(TM) Client VM (build 1.5.0_13-119, mixed mode, sharing) vc-41-10-209-45:~ hyltonspencer$ Mac OSX 10.5.6
(In reply to comment #7) You haven't installed either Update 4 or Update 3. You have an older version of Java. So bug 491213 isn't a dup of this bug. And bug 491266 probably isn't, either.
I've just released JEP 0.9.7.1, which fixes (actually works around) this bug. For more information see bug 493629.
Can you try the latest Developer Preview from Apple? Applets should work with it.
The latest Developer Preview is 9M3063, which we released yesterday (5/21)
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Component: Java Embedding Plugin → Java (Java Embedding Plugin)
Product: Core → Plugins
Product: Plugins → Plugins Graveyard
You need to log in before you can comment on or make changes to this bug.