Name: gm110360 Date: 04/15/2002 FULL PRODUCT VERSION : java version "1.4.0" Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-b92) Java HotSpot(TM) Client VM (build 1.4.0-b92, mixed mode) FULL OPERATING SYSTEM VERSION : Microsoft Windows 2000 [Version 5.00.2195] ADDITIONAL OPERATING SYSTEMS : Windows 98 [Version 4.10.2222] A DESCRIPTION OF THE PROBLEM : The Windows JRE 1.4 installer does not install the lib\cmm\PYCC.cf color profile. This causes IllegalArgumentExceptions when ImageIO code needs this profile. This sounds similar to bug 4402857 which was closed but apparently not fixed. STEPS TO FOLLOW TO REPRODUCE THE PROBLEM : 1. Install JRE, using defaults 2. Run attached application ReadWriteJPEG.java using a JPEG with a nonstandard color profile, or just run ColorTest.java EXPECTED VERSUS ACTUAL BEHAVIOR : In both cases got IllegalArgumentException. Copying PYCC.pf from JDK into C:\Program Files\Java\j2re1.4.0\lib\cmm\PYCC.pf fixes the problem. ERROR MESSAGES/STACK TRACES THAT OCCUR : Exception from ReadWriteJPEG.java: Exception in thread "main" java.lang.IllegalArgumentException: Can't load standard profile at java.awt.color.ICC_Profile.getInstance(Unknown Source) at java.awt.color.ColorSpace.getInstance(Unknown Source) at com.sun.imageio.plugins.jpeg.JPEG.isNonStandardICC(Unknown Source) at com.sun.imageio.plugins.jpeg.JPEGMetadata.<init>(Unknown Source) at com.sun.imageio.plugins.jpeg.JPEGImageWriter.write(Unknown Source) at javax.imageio.ImageWriter.write(Unknown Source) at javax.imageio.ImageIO.write(Unknown Source) at javax.imageio.ImageIO.write(Unknown Source) at ReadWriteJPEG.main(ReadWriteJPEG.java:7) Exception from ColorTest.java: Exception in thread "main" java.lang.IllegalArgumentException: Can't load standard profile at java.awt.color.ICC_Profile.getInstance(Unknown Source) at java.awt.color.ColorSpace.getInstance(Unknown Source) at ColorTest.main(ColorTest.java:4) This bug can be reproduced always. ---------- BEGIN SOURCE ---------- // Here is a simpler testcase // ColorTest.java import java.awt.color.*; public class ColorTest extends javax.swing.JApplet { public void init() { ColorSpace.getInstance(ColorSpace.CS_PYCC); } } HTML file <HTML> <BODY> <applet code = ColorTest width=250 height=250> </applet> </BODY> </HTML> ---------- END SOURCE ---------- CUSTOMER WORKAROUND : Copy PYCC.pf from the JDK into the JRE installation at C:\Program Files\Java\j2re1.4.0\lib\cmm\PYCC.pf (Review ID: 145440) ======================================================================
|