relatório IREPORT com imagem no servidor LINUX

Olá Pessoal, depois de pesquisar bastante no google e não encontrar algo que resolvesse este pro, estou recorrendo aos senhores, fico grato a quem puder auxiliar.

Estou tentando adicionar 2 imagens num relatório com feito com JasperReport, aliás eu já adicionei, pois quando testo o relatório chamando-o pelo navegador no meu mac, ele gera direitinho com imagens e etc, mas quando passo o meu .war para o servidor linux e rodo o sistema, o relatório vem em branco.Eu já mudei o caminho da imagem dentro do arquivo .jrxml para um diretório dentro do servidor linux, mas mesmo assim o relatório vem em branco.

No meu arquivo .jrxml está configurado assim:

[code]




[/code

Na classe que passa a imagem para dentro do relatório está assim:

      String arquivo2 = context.getRealPath("WEB-INF/imagens/simbolo_crede.jpg");
        File logo = new File(arquivo2);   
        System.out.println(logo.isFile());

	Map parameters = new HashMap(); 
        parameters.put("logo", logo);

Fico grato quem puder auxiliar!!

O seu imageExpression parece estar errado.

Deveria ser algo assim ja que você esta passando a imagem como parametro:

<parameter name="logo" class="java.io.File"/>
...
<image>
<reportElement x="50" y="7" width="142" height="20"/> 
<imageExpression class="java.io.File"><![CDATA[$P{logo}]]></imageExpression> 
</image>

Olá Lucas, grato por auxiliar, mas então eu tenho que criar um parâmetro do ireport? Cara to meio perdido com isso, se puder clarear fico grato

Tente usar o metodo separator da classe File, talvez seja na hora de pegar o caminho das imagens, exemplo:

esse metodo cuida das barras quando voce porta sua aplicacao para outros sistemas, com esse codigo, em tempo de execucao, a maquina virtual ira detectar seu OS e aplicar o tipo de barra necessaria (\ se for windows e / se for Linux, de Mac eu nao sei ‘-’).

String arquivo2 = context.getRealPath("WEB-INF"+ File.separator + "imagens" + File.separator + "simbolo_crede.jpg");

Sim, você tem que criar o parametro no relatório caso contrário não adianta passar ele para o ireport.

O que o rof20004 disse também está correto, utilize desta forma.

[quote=rof20004]Tente usar o metodo separator da classe File, talvez seja na hora de pegar o caminho das imagens, exemplo:

esse metodo cuida das barras quando voce porta sua aplicacao para outros sistemas, com esse codigo, em tempo de execucao, a maquina virtual ira detectar seu OS e aplicar o tipo de barra necessaria (\ se for windows e / se for Linux, de Mac eu nao sei ‘-’).

String arquivo2 = context.getRealPath("WEB-INF"+ File.separator + "imagens" + File.separator + "simbolo_crede.jpg"); [/quote]

Vlw pela dica rof20004, mas creio que o problema seja no xml do relatório, porque não estou sabendo criar um caminho dinâmico para a imagem dentro do xml.Tem alguma dica de como podemos fazer isso? porque já tentei algumas dicas e n deu certo.

Agradeço pela atenção

[quote=alexandresobral2004]Vlw pela dica rof20004, mas creio que o problema seja no xml do relatório, porque não estou sabendo criar um caminho dinâmico para a imagem dentro do xml.Tem alguma dica de como podemos fazer isso? porque já tentei algumas dicas e n deu certo.

Agradeço pela atenção[/quote]

Da uma olhada nesse link: http://www.guj.com.br/java/83362-resolvido-imagem-no-ireport

Olá pessoal, encontrei um post que resolveu o problema das imagens, abaixo o link da dica aqui do guj mesmo, a única coisa que aprendi e que o parâmetro do ireport tem que ter o mesmo nome do parâmetro passado no método dentro da classe que vai gerar o relatorio.

Dica: http://www.guj.com.br/java/253665-erro-ao-colocar-imagem-no-ireport-na-web-resolvido

Grato!!

Alexandre Rocha