Boa noite, pessoal, preciso fazer um cadastro de produto e gravar uma imagem desse produto no banco de dados, porem como posso fazer isso com o rich:faces? ou então fazer a seguinte forma ao inves de gravar no banco de dados fazer o upload do mesmo em uma pasta especifica da minha aplicação e gravar apenas o caminho da imagem no banco de dados e esse caminho teria que ser o da pasta da minha aplicação… e tambem o nome da imagem que vai para a pasta teria que ser gerada automaticamente e não ir com o nome padrão que ela tem… alguem tem algum exemplo disso… que não seja aquele exemplo do livedemo do richfaces???
a ideia de colocar as imagens dentro da applicacao no servidor nao eh muito boa, pq no proximo deploy hehe la se foram as imagens
vc pode gravar ela no banco de dados e criar um servlet pra devolve-las
exemplo: http://balusc.blogspot.com/2007/07/fileservlet.html
se vc quiser gravar em pasta no servidor o unico jeito que eu conheço eh definir uma pasta base e apartir dai criar pastas e colocar as imagens bem organizadas e depois salvar o path da imagem na base dados, quando for mostrar as imagens usa o primeiro exemplo do link ali
essa opcao eu nunca testei mas acredito que o orkut faz assim: no upload da imagem, ela é transferida para um servidor de imagens ex: static.orkut.com ( por ftp, sei la) e a url canonica eh gravada na base de dados (static.orkut.com/img/minhapasta/produtox/imgs/foto1.jpg), assim vc nem precisa de um servlet é soh colocar um apache, pois é um GET simples por url.
fiz um sisteminha com upload de imagem como trabalho uma vez…
eu pegava o arquivo, gerava um nome para ele, tipo, usuario.getNome() + “_” + new Date().getTimeInMillis() + file.getExtensao(), salvava em uma pasta, e salvava o caminho pra ela no banco…
depois pra recuperar a img é dois toques, muito simples, só pegar a URL no banco…