| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 09:39:54
|
christianovale
JavaChild
![[Avatar]](/images/avatar/685bfde03eb646c27ed565881917c71c.jpg)
Membro desde: 10/05/2005 14:32:08
Mensagens: 134
Localização: 000
Offline
|
Bom dia, estou com um problema e gostaria da ajuda de voces.
Preciso salvar uma imagem no banco de dados de uma aplicaçao Web.
Quando executo em minha máquina local funciona sem problemas mas, quando fiz o deploy da aplicaçao para o servidor veio o problema.
Uso o seguinte codigo na minha classe DAO que insere a imagem no PreparedStatement:
(O método preferenciaContrato.getCaminhoImagem() retorna a url da imagem ex: C:\diretorio\imagem.jpg)
Porém, como a classe DAO está no servidor este caminho (da imagem) nao é encontrado. E me retorna o seguinte erro:
java.io.FileNotFoundException: C:\Documents and Settings\Christiano\Meus documentos\christiano\doidinho.jpg (No such file or directory)
A questão é: Como eu faço para fazer este UpLoad da imgem e salva-la no banco de Dados?
Obrigado desde já.
|
-------------------------------
Christiano Vale
Desenvolvedor Java |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 09:54:21
|
the_negao
JavaChild
![[Avatar]](/images/avatar/747c1bcceb6109a4ef936bc70cfe67de.png)
Membro desde: 06/01/2005 01:58:58
Mensagens: 119
Localização: Feira de Santana - BA
Offline
|
1º) Você tem que colocar para seu form de cadastro enviar os dados em multipart, acrescentando: enctype="multipart/form-data"
2º) Você pega o InputStream do seu file proveniente do form
3º) Se no seu Banco de Dados o campo for Blob ou LongBlob, você pega o InputStream converte para Blob e grava no banco..
É isso ae...
|
® Sérgio Souza ®
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 10:00:44
|
christianovale
JavaChild
![[Avatar]](/images/avatar/685bfde03eb646c27ed565881917c71c.jpg)
Membro desde: 10/05/2005 14:32:08
Mensagens: 134
Localização: 000
Offline
|
Ok! E como ficaria isto? Assim?
<form name="formConteudo" method="post" action="servletcontato" enctype="multipart/form-data">
é apenas isto?
|
-------------------------------
Christiano Vale
Desenvolvedor Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 10:02:55
|
lnd007
Thread.start()
![[Avatar]](/images/avatar/588e343066cf54ec3db5132231df7d68.jpg)
Membro desde: 16/03/2005 17:03:04
Mensagens: 28
Localização: São Paulo - SP
Offline
|
Cara, não sei como está o andamento do seu projeto, se estiver na fase final creio que minha dica não vá valer a pena.
Nas apliações web aqui da universidade, costumamos guardar no banco uma String com o caminho da imagem, ao inves da imagem em si. Poupa hd e deixa o sistema mais rapido.
|
System.out.println("Leandro"); |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 10:25:22
|
christianovale
JavaChild
![[Avatar]](/images/avatar/685bfde03eb646c27ed565881917c71c.jpg)
Membro desde: 10/05/2005 14:32:08
Mensagens: 134
Localização: 000
Offline
|
Nao, cara, guardar apenas o caminho nao é boa soluçao pois se a url for perdida ou se o cara apagar a imagem o sistema gera erro.
Preciso realmente fazer o upload da imagem para o BD.
|
-------------------------------
Christiano Vale
Desenvolvedor Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 10:30:05
|
ricardosoares
JavaEvangelist
![[Avatar]](/images/avatar/1cc8a8ea51cd0adddf5dab504a285915.jpg)
Membro desde: 03/12/2004 09:49:13
Mensagens: 318
Localização: São Paulo, SP, Brasil
Offline
|
Acho que está faltando vc fazer o upload do arquivo pro servidor.
Suponho que o arquivo "C:\Documents and Settings\Christiano\Meus documentos\christiano\doidinho.jpg" esteja no computador cliente, onde roda o browser. Logo, o computador servidor, que roda o Tomcat, não o encontra.
Upload!!!
PS: Acho mais adequado guardar a imagem no BD e não em sistema de arquivo com apontamento. Fica mais organizado e, se vc usar uma tabela exclusivamente para as imagens, não afeta a performance.
|
Ricardo Soares |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 10:44:02
|
christianovale
JavaChild
![[Avatar]](/images/avatar/685bfde03eb646c27ed565881917c71c.jpg)
Membro desde: 10/05/2005 14:32:08
Mensagens: 134
Localização: 000
Offline
|
Pois é exatamente este o meu problema.
Eu jah tenho uma funcao que guarda e recupera a imagem em um campo Blob do MySql.
Mas estou tendo dificuldades em fazer o Upload desta imagem para o banco dados que está no servidor. Local funciona normalmente mas eu preciso que meu formaulario envie a imagem para o Banco de dados.
|
-------------------------------
Christiano Vale
Desenvolvedor Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 11:21:00
|
the_negao
JavaChild
![[Avatar]](/images/avatar/747c1bcceb6109a4ef936bc70cfe67de.png)
Membro desde: 06/01/2005 01:58:58
Mensagens: 119
Localização: Feira de Santana - BA
Offline
|
Utilize o commons-fileupload.jar...
1) Verificar se o form é multipart:
2) Pegar o file do Form:
3) Depois você pega o InputStream:
Daí você corre para o abraço...
|
® Sérgio Souza ®
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 14:58:14
|
christianovale
JavaChild
![[Avatar]](/images/avatar/685bfde03eb646c27ed565881917c71c.jpg)
Membro desde: 10/05/2005 14:32:08
Mensagens: 134
Localização: 000
Offline
|
Ola, Sergio, obrigado pela ajuda mas, ainda nao consegui fazer.
Voce poderia me dar um exemplo funcional disto?
Obrigado.
|
-------------------------------
Christiano Vale
Desenvolvedor Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 15:09:42
|
zirocool
JavaEvangelist
![[Avatar]](/images/avatar/28659414dab9eca0219dd592b8136434.jpg)
Membro desde: 06/11/2004 17:00:05
Mensagens: 472
Localização: Candelária - RS
Offline
|
|
"Não decore passos, aprenda o caminho." (Klaus Vianna)
http://twitter.com/misaelbr |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 15:39:46
|
christianovale
JavaChild
![[Avatar]](/images/avatar/685bfde03eb646c27ed565881917c71c.jpg)
Membro desde: 10/05/2005 14:32:08
Mensagens: 134
Localização: 000
Offline
|
Ok. Mas agora está dando o erro:
java.lang.NoClassDefFoundError: org/apache/commons/io/output/DeferredFileOutputStream
na linha:
List items = upload.parseRequest(request);
Ja adicionei o arquivo commons-fileupload-1.1.1.jar
O que mais devo fazer?
|
-------------------------------
Christiano Vale
Desenvolvedor Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 16:23:35
|
zirocool
JavaEvangelist
![[Avatar]](/images/avatar/28659414dab9eca0219dd592b8136434.jpg)
Membro desde: 06/11/2004 17:00:05
Mensagens: 472
Localização: Candelária - RS
Offline
|
http://jakarta.apache.org/commons/io/
Baixa essa outra api das commons, ela é requerida para a fileupload funcionar...
Poe o jar lá na tua lib com a fileupload q tah na mao daih...
|
"Não decore passos, aprenda o caminho." (Klaus Vianna)
http://twitter.com/misaelbr |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/07/2006 17:04:35
|
christianovale
JavaChild
![[Avatar]](/images/avatar/685bfde03eb646c27ed565881917c71c.jpg)
Membro desde: 10/05/2005 14:32:08
Mensagens: 134
Localização: 000
Offline
|
Ok! Funcionou. Muito Obrigado!
|
-------------------------------
Christiano Vale
Desenvolvedor Java |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/03/2008 18:04:47
|
fpaimlima
Thread.start()
Membro desde: 09/03/2005 21:30:20
Mensagens: 43
Offline
|
vlw pelas dicas, isso salvou minha pele
|
|
|
 |
|
|