xmlgraphics-general mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject DO NOT REPLY [Bug 42998] New: - NullPointerException in TiffImageWriter if JPEG is chosen for compression
Date Mon, 30 Jul 2007 10:05:03 GMT
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG·
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=42998>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND·
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=42998

           Summary: NullPointerException in TiffImageWriter if JPEG is
                    chosen for compression
           Product: XMLGraphicsCommons
           Version: 1.2
          Platform: Other
        OS/Version: other
            Status: NEW
          Severity: major
          Priority: P2
         Component: ImageWriter
        AssignedTo: general@xmlgraphics.apache.org
        ReportedBy: mark.vollmann@opentext.com


The following snippet does not work because the parameters are not created
correctly.

To be precise:
1. Define imageParameters with "JPEG" set as encoding
2. TiffImageWriter#createTIFFEncodeParams(lines 60++) will  NOT call
setJPEGEncodeParam
3. Eventually TiffImageEncoder gets called and in line 467ff a call to
TIFFEncodeParam#getJPEGEncodeParam() is done, which returns null => NPE in line
472 int maxSubH = jep.getHorizontalSubsampling(0);


The whole class TiffImageWriter seems untested because if i look at the source i
see in line 46 the method public void writeImage(RenderedImage image,
OutputStream out) which passes null to as ImageWriterParams to 54:public void
writeImage(RenderedImage image, OutputStream out,ImageWriterParams params)
throws IOException , which in turn passed null to 61:     private
TIFFEncodeParam createTIFFEncodeParams(ImageWriterParams params).

First statement in that method is if (params.getCompressionMethod() == null) ,
so you will get NPE here too...

		org.apache.xmlgraphics.image.writer.ImageWriter imageWriter = new
TIFFImageWriter();
		MultiImageWriter writer = null;
		try
		{
			writer = imageWriter.createMultiImageWriter(stream);
			// retrieve writer
			if (imageWriter != null)
			{
				log.info("get image writers parameters");
				
				ImageWriterParams iwp = new ImageWriterParams();
					iwp.setCompressionMethod("JPEG");
				iwp.setJPEGQuality(compressionQuality, true);
				iwp.setResolution(param.getDpi());

				log.info("render pages");
				for (int pageNumber = fromPageNumber; pageNumber <= toPageNumber; pageNumber++)
				{
					BufferedImage image;
					
					<snip>
					// do stuff to create image
					</snip>
					log.info("write image");
					writer.writeImage(image, iwp);
				}
			}
		catch...
		finally
		writer.close()

-- 
Configure bugmail: http://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.

---------------------------------------------------------------------
Apache XML Graphics Project URL: http://xmlgraphics.apache.org/
To unsubscribe, e-mail: general-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: general-help@xmlgraphics.apache.org


Mime
View raw message