File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes Java in General and the fly likes BufferedImage to ServletOutputStream: Black Box Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Elasticsearch in Action this week in the Big Data forum!
JavaRanch » Java Forums » Java » Java in General
Bookmark "BufferedImage to ServletOutputStream: Black Box" Watch "BufferedImage to ServletOutputStream: Black Box" New topic

BufferedImage to ServletOutputStream: Black Box

Greg Donahue

Joined: Oct 07, 2003
Posts: 24

I'm writing a servlet that accepts the following params thru the URL:

1) a filename for an image sitting on my server, and
2) a pair of X and Y dimensions.

The servlet is supposed to scale the image appropriately and send the result to the response OutputStream. My strategy is: take the image file, load it into a BufferedImage, modify it appropriately, and send it from there to an OutputStream. Here's the code that is supposed to accomplish this:

...that makes sense, right? Currently, getImageFileName() returns the name of a JPEG which I know is valid, and alterImage() does nothing. But here's the thing: when I run this, the image produced is a big black box, and not the expected image at all, and the box has the same dimensions as the expected image.

What am I doing wrong?

vi veri veniversum vivus vici
Greg Donahue

Joined: Oct 07, 2003
Posts: 24
Aha. You have to *display* the image first.

...right after the BufferedImage initialization. Kind of makes sense, and then it kind of doesn't, since you aren't really displaying the image anywhere...
It is sorta covered in the JavaRanch Style Guide.
subject: BufferedImage to ServletOutputStream: Black Box