Problems in reading JPEG Images with JAI API using IBM JDK 1.4.2
Hi,
I have a test program that reads the JPEG images and prepares a PDF document. I am using WSAD 5.1.1 and if i point my JRE to Sun JDK 1.4.2 i am able to read the images and prepare the PDF document, But when i point my JDK to IBM JDK(1.4.2) that comes with WSAD i am getting below exception. Am very thankful to anybody who guides me to resolve this issue.
Thanks,
VJ
Here is the Exception strack trace:
Error: One factory fails for the operation "JPEG"
Occurs in: javax.media.jai.ThreadSafeOperationRegistry
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:41)
at java.lang.reflect.Method.invoke(Method.java:386)
at javax.media.jai.FactoryCache.invoke(FactoryCache.java:130)
at javax.media.jai.OperationRegistry.invokeFactory(OperationRegistry.java:1682)
at javax.media.jai.ThreadSafeOperationRegistry.invokeFactory(ThreadSafeOperationRegistry.java:481)
at javax.media.jai.registry.RIFRegistry.create(RIFRegistry.java:340)
at javax.media.jai.RenderedOp.createInstance(RenderedOp.java:830)
at javax.media.jai.RenderedOp.createRendering(RenderedOp.java:878)
at javax.media.jai.RenderedOp.getWidth(RenderedOp.java:2190)
at test.ReadImages.jaiOperatedImage(ReadImages.java:343)
at test.ReadImages.createPDFwithJAI(ReadImages.java:228)
at test.ReadImages.main(ReadImages.java:62)
Caused by: java.lang.IllegalArgumentException: Tables must be 0, 1, 2, or 3.
at sun.awt.image.codec.JPEGParam.setDCHuffmanComponentMapping(JPEGParam.java:603)
at sun.awt.image.codec.JPEGImageDecoderImpl.readJPEGStream(Native Method)
at sun.awt.image.codec.JPEGImageDecoderImpl.decodeAsBufferedImage(JPEGImageDecoderImpl.java:241)
at com.sun.media.jai.codecimpl.JPEGImage.<init>(JPEGImageDecoder.java:114)
at com.sun.media.jai.codecimpl.JPEGImageDecoder.decodeAsRenderedImage(JPEGImageDecoder.java:53)
at com.sun.media.jai.opimage.CodecRIFUtil.create(CodecRIFUtil.java:96)
at com.sun.media.jai.opimage.JPEGRIF.create(JPEGRIF.java:52)
... 14 more
javax.media.jai.util.ImagingException: All factories fail for the operation "JPEG"
at javax.media.jai.OperationRegistry.invokeFactory(OperationRegistry.java:1695)
at javax.media.jai.ThreadSafeOperationRegistry.invokeFactory(ThreadSafeOperationRegistry.java:481)
at javax.media.jai.registry.RIFRegistry.create(RIFRegistry.java:340)
at javax.media.jai.RenderedOp.createInstance(RenderedOp.java:830)
at javax.media.jai.RenderedOp.createRendering(RenderedOp.java:878)
at javax.media.jai.RenderedOp.getWidth(RenderedOp.java:2190)
at test.ReadImages.jaiOperatedImage(ReadImages.java:343)
at test.ReadImages.createPDFwithJAI(ReadImages.java:228)
at test.ReadImages.main(ReadImages.java:62)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:41)
at java.lang.reflect.Method.invoke(Method.java:386)
at javax.media.jai.FactoryCache.invoke(FactoryCache.java:130)
at javax.media.jai.OperationRegistry.invokeFactory(OperationRegistry.java:1682)
... 8 more
Caused by: java.lang.IllegalArgumentException: Tables must be 0, 1, 2, or 3.
at sun.awt.image.codec.JPEGParam.setDCHuffmanComponentMapping(JPEGParam.java:603)
at sun.awt.image.codec.JPEGImageDecoderImpl.readJPEGStream(Native Method)
at sun.awt.image.codec.JPEGImageDecoderImpl.decodeAsBufferedImage(JPEGImageDecoderImpl.java:241)
at com.sun.media.jai.codecimpl.JPEGImage.<init>(JPEGImageDecoder.java:114)
at com.sun.media.jai.codecimpl.JPEGImageDecoder.decodeAsRenderedImage(JPEGImageDecoder.java:53)
at com.sun.media.jai.opimage.CodecRIFUtil.create(CodecRIFUtil.java:96)
at com.sun.media.jai.opimage.JPEGRIF.create(JPEGRIF.java:52)
... 14 more
Exception in thread "main" java.lang.NullPointerException
at test.ReadImages.jaiOperatedImage(ReadImages.java:386)
at test.ReadImages.createPDFwithJAI(ReadImages.java:228)
at test.ReadImages.main(ReadImages.java:62)