Sender notified by Mailtrack 11/20/18, 8:34:11 AM |
--
Você recebeu essa mensagem porque está inscrito no grupo "JasperReports / iReport Brasil" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para jasperreports-irepor...@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.
Sender notified by Mailtrack 11/20/18, 9:47:19 PM |
Ola Bom dia!
meu amigo por acaso sua imagem esta dentro de um Jar no meu caso eu compactei todo o meu projeto em um unico jar ? Se sim voce precisa pegar de dentro da Stream desta forma
PATH = getClass().getClassLoader().getResourceAsStream("br/com/blogspot/denisbenjamim/iReport/Imagens/logotpopaco.png")
Como pode ver em verde é o caminho absoluto em verde dentro do
meu classpath forma eu consigo pegar a minha imagem dentro do meu
jar em tempo de execução sabendo que o diretorio raiz br
esta dentro da pasta SRC
Poderia printar para nos a pasta onde esta o seu jar compilado e a pasta onde esta sua imagem com o caminho de ambos ??
Alem disso no JRXML tem o local que esta pontado eu poderia mostrar meu exemplo conforme abaixo.
Nesse Print onde esta meu jar compilado com tudo dentro dele por
isso ele tem 32 MB
Varias pessoas responderam a lista nao recebeu as outras ideias ?
ServletContext context = (ServletContext) FacesContext.getCurrentInstance().getExternalContext().getContext(); String url = context.getRealPath("/resources/imagens/nologo.png"); Path path = Paths.get(url); byte[] imagemPadrao = Files.readAllBytes(path);
--
Olá, caros, boa tarde!
Tentei de várias formas e procurei inúmeros exemplos, mas não consigo usar uma imagem em um relatório usando o iReport em outro pc diferente do qual o sistema está sendo feito.
Minha estrutura:
1. No Relatório iReport: Tenho um parâmetro definido como InputStream chamado "logo". E uma imagem recebendo no Image Expression o paramtro: $P{logo}, no tipo de expression class está definido como java.io.inputStream. A imagem que quer carregar no formulário chama-se: logo.jpg e está na mesma pasta do relatório: ./src/rela/logo.jpg.
2. Na minha classe Java o trecho do código:
HashMap<String, Object> filtro = new HashMap<String, Object>();
filtro.put("mesNascimento", mes);
String fileName = "logo.png";
InputStream imgPath = new FileInputStream("./src/rela/"+fileName);
filtro.put("logo", imgPath);
String Endereco = "/rela/TesteComImagem.jasper";
InputStream Caminho = getClass().getResourceAsStream(Endereco);
JasperPrint jp = JasperFillManager.fillReport(Caminho, filtro, conexao);
Esse é um dos exemplos que testei. Esse funciona na máquina que estou programando, mas o executável Java rodando em outro PC não localiza a imagem logo.jpg.
Alguém pode me dar um Help por gentileza?
Abraço e muito obrigado!
--
Meu Caro Bom dia!
Ja pensou por a pasta rela no mesmo diretorio do seu jar, assim como a imagem logo.jpg dentro da pasta rela ?? por exemplo vi que quando compila ele fica dentro dist jogue uma copia da pasta rela com a imagem dentro deste diretorio depois copie e cole em outro pc tudo dentro deste diretorio e verifique.
Eu acredito que voce nao esta colocando a imagem dentro do seu
jar se nao teria de usar a classe que mostrei getResouceStream,
então pega seu jar e a pasta repo com a imagem e abre em outro pc
lembrando que o jar e a pasta com a foto tem de estar dentro do
mesmo diretorio do jar.
Meu amigo existe algo errado é nao é no jasper a unica coisa que
posso fazer por vc agora e pedir que envie o jar compilado para
que possamos olhar dentro dele ou nos permita olhar por acesso
remoto via anydesk de preferencia, por com certeza o erro que esta
acontecendo com vc é algo bobo.
--
--
Bom dia!
problema de caminho provavelmente verifica o caminho relativo no
pc de origem deve ta absoluto
Sender notified by Mailtrack 11/27/18, 6:56:13 PM |
Como ja dissemos, isso acontece por que ta sentando o caminho
absoluto e nao pegando o relativo de acordo com o pc em questão eu
sinceramente desisto de ajudar, na moral.