Package: sun-java5-jre Version: 1.5.0-13-1 Severity: normal I ran into an issue trying to use the newer FOP (0.94) from apache in my webapp, that runs using the sun-java5-jre and tomcat5.5 from debian.
When the page that uses FOP is loaded I get this exception using sun-java5-jre: java.lang.UnsatisfiedLinkError: /usr/lib/jvm/java-1.5.0-sun-1.5.0.11/jre/lib/i386/libawt.so: Can't load IA 32-bit .so on a IA 32-bit platform java.lang.ClassLoader$NativeLibrary.load(Native Method) java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751) java.lang.ClassLoader.loadLibrary(ClassLoader.java:1668) java.lang.Runtime.loadLibrary0(Runtime.java:822) java.lang.System.loadLibrary(System.java:993) sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50) java.security.AccessController.doPrivileged(Native Method) java.awt.Toolkit.loadLibraries(Toolkit.java:1509) java.awt.Toolkit.<clinit>(Toolkit.java:1530) java.awt.Color.<clinit>(Color.java:250) org.apache.fop.util.ColorUtil.initializeColorMap(ColorUtil.java:523) org.apache.fop.util.ColorUtil.<clinit>(ColorUtil.java:56) org.apache.fop.fo.expr.NCnameProperty.getColor(NCnameProperty.java:52) org.apache.fop.fo.properties.ColorProperty$Maker.convertProperty(ColorProperty.java:80) org.apache.fop.fo.properties.PropertyMaker.make(PropertyMaker.java:442) org.apache.fop.fo.properties.PropertyMaker.make(PropertyMaker.java:392) org.apache.fop.fo.properties.PropertyMaker.get(PropertyMaker.java:299) org.apache.fop.fo.PropertyList.get(PropertyList.java:174) org.apache.fop.fo.StaticPropertyList.get(StaticPropertyList.java:72) org.apache.fop.fo.PropertyList.get(PropertyList.java:154) org.apache.fop.fo.properties.CommonBorderPaddingBackground.<init>(CommonBorderPaddingBackground.java:147) org.apache.fop.fo.PropertyList.getBorderPaddingBackgroundProps(PropertyList.java:577) org.apache.fop.fo.pagination.Region.bind(Region.java:64) org.apache.fop.fo.pagination.RegionBody.bind(RegionBody.java:56) org.apache.fop.fo.FObj.processNode(FObj.java:125) org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement(FOTreeBuilder.java:320) org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:185) org.apache.xalan.transformer.TransformerIdentityImpl.startElement(TransformerIdentityImpl.java:1072) org.apache.xml.serializer.TreeWalker.startNode(TreeWalker.java:357) org.apache.xml.serializer.TreeWalker.traverse(TreeWalker.java:143) org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:389) com.foo.bar$LineItem.generateCertificateOfAuthenticity(bar.java:1389) com.foo.baz.generateCertificatesOfAuthenticity(baz.java:1155) com.foo.qux.handleRequest(qux.java:80) com.foo.quux.doGet(quux.java:1493) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) com.foo.CacheHttpServlet.service(CacheHttpServlet.java:119) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) After some digging, I found out the actual error message has been lost due to a bug in 1.5.0.10, so I dug around and found an older jdk on sun's site, installed that, and reloaded the same page. That time I got this error: java.lang.UnsatisfiedLinkError: /home/andy/upstream/SDK/jdk/jre/lib/i386/libawt.so: libmlib_image.so: cannot open shared object file: No such file or directory java.lang.ClassLoader$NativeLibrary.load(Native Method) java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751) java.lang.ClassLoader.loadLibrary(ClassLoader.java:1668) java.lang.Runtime.loadLibrary0(Runtime.java:822) java.lang.System.loadLibrary(System.java:993) sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50) java.security.AccessController.doPrivileged(Native Method) java.awt.Toolkit.loadLibraries(Toolkit.java:1509) java.awt.Toolkit.<clinit>(Toolkit.java:1530) java.awt.Color.<clinit>(Color.java:250) org.apache.fop.util.ColorUtil.initializeColorMap(ColorUtil.java:523) org.apache.fop.util.ColorUtil.<clinit>(ColorUtil.java:56) org.apache.fop.fo.expr.NCnameProperty.getColor(NCnameProperty.java:52) org.apache.fop.fo.properties.ColorProperty$Maker.convertProperty(ColorProperty.java:80) org.apache.fop.fo.properties.PropertyMaker.make(PropertyMaker.java:442) org.apache.fop.fo.properties.PropertyMaker.make(PropertyMaker.java:392) org.apache.fop.fo.properties.PropertyMaker.get(PropertyMaker.java:299) org.apache.fop.fo.PropertyList.get(PropertyList.java:174) org.apache.fop.fo.StaticPropertyList.get(StaticPropertyList.java:72) org.apache.fop.fo.PropertyList.get(PropertyList.java:154) org.apache.fop.fo.properties.CommonBorderPaddingBackground.<init>(CommonBorderPaddingBackground.java:147) org.apache.fop.fo.PropertyList.getBorderPaddingBackgroundProps(PropertyList.java:577) org.apache.fop.fo.pagination.Region.bind(Region.java:64) org.apache.fop.fo.pagination.RegionBody.bind(RegionBody.java:56) org.apache.fop.fo.FObj.processNode(FObj.java:125) org.apache.fop.fo.FOTreeBuilder$MainFOHandler.startElement(FOTreeBuilder.java:320) org.apache.fop.fo.FOTreeBuilder.startElement(FOTreeBuilder.java:185) org.apache.xalan.transformer.TransformerIdentityImpl.startElement(TransformerIdentityImpl.java:1072) org.apache.xml.serializer.TreeWalker.startNode(TreeWalker.java:357) org.apache.xml.serializer.TreeWalker.traverse(TreeWalker.java:143) org.apache.xalan.transformer.TransformerIdentityImpl.transform(TransformerIdentityImpl.java:389) com.foo.bar$LineItem.generateCertificateOfAuthenticity(bar.java:1389) com.foo.baz.generateCertificatesOfAuthenticity(baz.java:1155) com.foo.qux.handleRequest(qux.java:80) com.foo.quux.doGet(quux.java:1493) javax.servlet.http.HttpServlet.service(HttpServlet.java:689) com.foo.CacheHttpServlet.service(CacheHttpServlet.java:119) javax.servlet.http.HttpServlet.service(HttpServlet.java:802) So it appears that java isn't finding it's own libmlib_image library: [EMAIL PROTECTED]:/usr/lib/jvm/java-1.5.0-sun$ ldd /usr/lib/jvm/java-1.5.0-sun/jre/lib/i386/libawt.so libmlib_image.so => not found libjvm.so => not found libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7ee3000) libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7edf000) libjava.so => not found libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7d97000) /lib/ld-linux.so.2 (0x80000000) It appears this is the case upstream as well? [EMAIL PROTECTED]:/usr/lib/jvm/java-1.5.0-sun$ ldd /home/andy/upstream/SDK/jdk/jre/lib/i386/libawt.so libmlib_image.so => not found libjvm.so => not found libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7f06000) libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7f02000) libjava.so => not found libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7dba000) /lib/ld-linux.so.2 (0x80000000) Running the same page with sun-java6-jre packages fixes this problem, as it appears it can find the library: [EMAIL PROTECTED]:/usr/lib/jvm/java-6-sun$ ldd /usr/lib/jvm/java-6-sun/jre/lib/i386/libawt.so libmlib_image.so => /usr/lib/jvm/java-6-sun/jre/lib/i386/libmlib_image.so (0xb7e83000) libjvm.so => not found libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7e52000) libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7e4e000) libjava.so => /usr/lib/jvm/java-6-sun/jre/lib/i386/libjava.so (0xb7e29000) libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7ce1000) /lib/ld-linux.so.2 (0x80000000) libjvm.so => not found libjvm.so => not found libverify.so => /usr/lib/jvm/java-6-sun/jre/lib/i386/libverify.so (0xb7cd4000) libnsl.so.1 => /lib/i686/cmov/libnsl.so.1 (0xb7cbc000) libjvm.so => not found Is there anything that can be done for Java5? I'd prefer not to upgrade our production environment due to this bug. :) Thanks for your help, and let me know if you need more information. -- System Information: Debian Release: lenny/sid APT prefers testing APT policy: (500, 'testing') Architecture: i386 (i686) Kernel: Linux 2.6.21-2-686 (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash Versions of packages sun-java5-jre depends on: ii debconf [debconf-2.0] 1.5.14 Debian configuration management sy ii java-common 0.26 Base of all Java packages ii locales-all [locales] 2.6.1-1+b1 GNU C Library: Precompiled locale ii sun-java5-bin 1.5.0-13-1 Sun Java(TM) Runtime Environment ( sun-java5-jre recommends no packages. -- debconf information: * shared/accepted-sun-dlj-v1-1: true sun-java5-jre/jcepolicy: sun-java5-jre/stopthread: true shared/error-sun-dlj-v1-1: * shared/present-sun-dlj-v1-1: -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]