Fala pessoal, mais uma vez venho pedir uma ajuda a vcs.
Eu tenho um sistema onde em uma consulta tenho que exibir as fotos dos alunos(caminho salvo na base e imagem salva em uma pasta).
A imagem é gerada esta tudo ok nessa parta mas qdo vou exibir aparece o seguinte erro:
[quote]Jan 29, 2013 11:38:21 AM org.primefaces.application.PrimeResourceHandler handleResourceRequest
SEVERE: Error in streaming dynamic resource. null[/quote]
Cheguei a pesquisar na net e o que encontrei esta igual ao que fiz um dos locais que encontrei foi uma dica do forum do proprio primefaces http://vineetreynolds.blogspot.com.br/2011/07/building-dynamic-image-based-carousel.html
eu criei uma classe util e de la eu utilizo o caminho da imagem do BD e converto a mesma:
[code] public static StreamedContent imagem(String caminhoImagem) {
StreamedContent imagem = null;
File f = new File(caminhoImagem);
if (f.exists()) {
InputStream stream = null;
try {
stream = new FileInputStream(f);
imagem = new DefaultStreamedContent(stream, "image/jpeg");
} catch (Exception e) {
e.printStackTrace();
}
}
return imagem;
}[/code]
Esse cara eu chego atraves do retorno do BD
[code] /**
* Retorna todos os periodos cadastrados
*
* @return List
*/
public List listaAlunos() {
Conexao conexao;
String sql = "";
List<Aluno> listaAlunos = new ArrayList<Aluno>();
sql = "select aluno_id, aluno_nome, aluno_dtnasc, aluno_pai, aluno_mae, aluno_sexo, "
+ "aluno_natural, aluno_endereco, aluno_endnumero, aluno_endcomplemento, "
+ "aluno_bairro, aluno_estado, aluno_cidade, aluno_fone, aluno_dtmatricula, "
+ "aluno_ra, aluno_rm, aluno_email, aluno_livro, aluno_serieatual, "
+ "aluno_folha, aluno_foto, aluno_idsala "
+ "from alunos "
+ "order by aluno_nome";
try {
conexao = Conexao.getInstance();
PreparedStatement stm = conexao.getConexao().prepareStatement(sql);
ResultSet res = stm.executeQuery();
while (res.next()) {
Aluno aluno = new Aluno();
aluno.setIdAluno(res.getInt("aluno_id"));
aluno.setNomeAluno(res.getString("aluno_nome"));
aluno.setDtNascimento(res.getDate("aluno_dtnasc"));
aluno.setNomePai(res.getString("aluno_pai"));
aluno.setNomeMae(res.getString("aluno_mae"));
aluno.setSexo(res.getString("aluno_sexo"));
aluno.setNatural(res.getInt("aluno_natural"));
aluno.setEndereco(res.getString("aluno_endereco"));
aluno.setEndNumero(res.getString("aluno_endnumero"));
aluno.setEndComplemento(res.getString("aluno_endcomplemento"));
aluno.setBairro(res.getString("aluno_bairro"));
aluno.setEstado(res.getInt("aluno_estado"));
aluno.setCidade(res.getInt("aluno_cidade"));
aluno.setFone(res.getString("aluno_fone"));
aluno.setDtMatricula(res.getDate("aluno_dtmatricula"));
aluno.setRa(res.getInt("aluno_ra"));
aluno.setRm(res.getInt("aluno_rm"));
aluno.setEmail(res.getString("aluno_email"));
aluno.setLivro(res.getString("aluno_livro"));
aluno.setSerie(res.getString("aluno_serieatual"));
aluno.setFolha(res.getInt("aluno_folha"));
aluno.setAluno_foto(res.getString("aluno_foto"));
aluno.setAluno_idsala(res.getInt("aluno_idsala"));
aluno.setImagem(Uteis.Uteis.imagem(res.getString("aluno_foto")));
listaAlunos.add(aluno);
}
} catch (SQLException e) {
e.printStackTrace();
return null;
} catch (Exception e) {
e.printStackTrace();
return null;
}
return listaAlunos;
}[/code]
O retorno para o xhtml é feito por uma lista
public void carregalistaAlunos(){
lstAlunos = ControleFactory.getInstance().getAlunoscontrole().listaAlunos();
}
Essa lista é do tipo mensalidade que populo pelo select que enviei.
Nessa classe utilizo SessionScoped mas tambem tentei RequestScoped(que estava no exemplo da url acima).
Até aqui vai tudo que é uma blz mas qdo vou exibir o erro citado acima acontece.
O trecho do xhtml onde tento exibir a imagem ´
[code] <p:carousel id=“carrossel” value="#{consalunosBean.lstAlunos}" var=“aluno” headerText=“Alunos”>
<p:graphicImage id=“image” value="#{aluno.imagem}"/>
<h:panelGrid columns="2" style="width:100%" cellpadding="5">
<h:outputText value="Nome: " /><h:outputText id="nome" value="#{aluno.nomeAluno}" />
</h:panelGrid>
</p:carousel> [/code]
no web.xml ja configurei tb
<mime-mapping>
<extension>jpg</extension>
<mime-type>image/jpeg</mime-type>
</mime-mapping>
Então ja quebrei a cabeça, encontrei algumas coisas mas não foge do que fiz.
Se alguem souber o que pode ser agradeço muito.
Vlwww pessoal
[]s