Exibir imagem reduzida

Oi pessoal,

Estou com dificuldades em exibir uma imagem num JSP. Eu coloquei dessa maneira:

<IFRAME name=imagem src="exibirImagens.do?codigoInterno=<c:out value="${param.codigoInterno}"/>" style="width:150px; height:150px" width=150 height=150 frameborder=1 scrolling="a">
</IFRAME>

A imagem vem mas não aparece inteira. Se tiro o iframe, aí aparece só a imagem ocupando a tela toda.

Alguém tem idéia de como posso redimensionar a imagem, p/que ela ocupe apenas o espaço desejado?

Obrigada

Beijos

Você pode colocar como src direto da tag uma url que aponta para um servlet (no seu caso action do struts) que retorne uma imagem.

<img src="geradorDeThumbNail.do?param=1"/>

GeradorDeThumbnail.java

public void service( HttpServletRequest req, HttpServletResponse resp ) {
    ImageIcon image = // pega o arquivo de imagem de algum lugar
    BufferedImage tempThumb = new BufferedImage( 150, 150, BufferedImage.TYPE_INT_ARGB );
    Graphics2D g2 = tempThumb.createGraphics();
    g2.drawImage( image.getImage(), 0, 0, tempThumb.getWidth(), tempThumb.getHeight(), null );
    g2.dispose();

    resp.setContentType( "image/png" );
    OutputStream os = resp.getOutputStream();
    ImageIO.write( tempThumb, "png", os );
    os.flush();
    os.close();
}

Oi Filipe,

Desculpe pela demora, mas as coisas estavam meio complicadas aquí, fiquei sem conexão esses dias.

Obrigada pela sua resposta, mas acabei resolvendo de uma outra forma mais simples:

                <td>
                    <img src="exibirImagens.do?codigoInterno=<c:out value="${param.codigoInterno}"/>" height="150" />
                </td>

Resolveu o meu problema. Mas achei muito interessante seu código. Vou testá-lo p/ver se fica melhor.

Muito obrigada.

[]s