Imagem JLabel não atualiza

4 respostas
M

Bom dia… tenho um componente JLabel que recebe uma imagem vinda do banco de dados, mas quando dou um rs.next para que possa passar para o proximo registro… as informacoes como nome e endereco atualiza corretamento, mas a imagem não atualiza e gera o seguinte erro: Premature end of JPEG file.

Aguardo…

Márcio

byte [] i = null;
        i = pegaImagem(conSocio, rsSocio, "foto");
        
        imgIcon = new ImageIcon(i);
        Image aux = imgIcon.getImage();
        lImagem.setIcon(new ImageIcon(aux));

4 Respostas

ViniGodoy

Ok… e como está implementado o método pegaImagem???

M
public byte[] pegaImagem(Connection con, ResultSet rs, String campo) throws SQLException, IOException   
    {     
            InputStream leitura;   
            ByteArrayOutputStream buffer = new ByteArrayOutputStream(1024);   

            leitura = rs.getBinaryStream(campo);   
            int lido = 0;   
            lido = leitura.read();   
            while (lido != -1) {   
                buffer.write(lido);   
                lido = leitura.read();   
            }   
            
            return buffer.toByteArray(); 
    }
ViniGodoy

Ao postar códigos, por favor, use a tag code. Editei o seu post acima e já as incluí. Se você ainda não sabe fazer isso, leia esse tópico, que te explicará esse e outros recursos do fórum:
http://www.guj.com.br/posts/list/50115.java

Bem. Poste também o método que você usa para gravar a imagem no banco.

Outra coisa. Que tipo de dado é a coluna foto? É um blob?

Geralmente, para salvar e carregar imagens, uso a classe ImageIO. Costuma a ser mais fácil do que ler na mão, como você fez.

M

mas eu estou lendo do banco de dados, vc teria um exemplo do IMAGEIO para essa aplicação ? o meu sistema puxa a imagem em primeiro momento mas quando avança ela não atualiza

Criado 11 de março de 2009
Ultima resposta 12 de mar. de 2009
Respostas 4
Participantes 2