Como carregar uma imagem, que está no servidor no .jsp usando VRaptor

1 resposta Resolvido
jspfront-endprogramação
ewertonvd

Bom dia pessoal!

Eu não estou conseguindo carregar uma imagem que está no meu diretório de rede…
Estou utilizando Eclipse, VRaptor, Hibernate…

Eu criei o ImagemController:

package br.com.empresa.controller;

import java.io.File;

import javax.inject.Inject;

import br.com.caelum.vraptor.Controller;
import br.com.caelum.vraptor.Get;
import br.com.empresa.dao.ProdutoDao;
import br.com.empresa.modelo.Produto;

@Controller
public class ImagemController {

	@Inject
	private ProdutoDao produtoDao;
	
	@Get("download/{id}")
	public File imgProduto(Integer id) {

		Produto produto = produtoDao.buscaProdutoPorId(id);

		String caminho = produto.getLocalImagem() + "\\" + produto.getImagem();
		
		/* Trocando '/' por '\\' */
		caminho = caminho.replace("\\", "\\\\");
		
		/* Verificando se o caminho aponta para uma imagem */
		if (!caminho.contains(".jpg")) {
			return null;
		} else {
			File arquivo = new File(caminho);
			return arquivo;
		}
	}
}

E no meu .jsp, onde eu quero mostrar a imagem, tentei de duas formas:

<div class="col-md-2">
	<label>Imagem do produto: </label>
	<c:if test="${produto.localImagem != null && produto.imagem != null}">
		<img src="<c:url value="/imagem/imgProduto?caminho=${arquivo.caminho}"/>"/>
	</c:if>
	<c:if test="${produto.localImagem != null && produto.imagem != null}">
               	<img src="<c:url value="/imagem/imgProduto/${produto.id}"/>"/>
	</c:if>
</div>
<div class="col-md-4"></div>
</div><br />

Não carrega a imagem… Abri o console do chrome e verifiquei que está gerando o erro:

Failed to load resource: the server responded with a status of 404 ()

Para ambas as tags.

1 Resposta

ewertonvd
Solucao aceita

Resolvido…

Criado 28 de janeiro de 2017
Ultima resposta 20 de fev. de 2017
Respostas 1
Participantes 1