VRaptor 3 Upload de Arquivo name do imput variável

3 respostas
R

Pessoal preciso fazer upload de arquivo mas não sei o nome do input ex

tem como eu receber este arquivo pelo VRaptor sem saber o name do input?

3 Respostas

G

Faça algo como abaixo. é mais inteligente elegante.

public void upload(List<UploadedFile> files) { [...] }

R

garcia-jj obrigado pela resposta, conheço este exemplo mas não se aplica ao meu caso…

Minha tela é complexa, o name do input esta amarrado a id de uma tabela, na tela de processamento preciso recuperar este id para verificar alguns parâmetros ex:

Galeria_1 ou Galeria_223…

Então eu separo as coisas

Tabela = “Galeria_1”.split("")[0]; // Galeria
Id = “Galeria_1”.split("
")[1]; // 1

Faço um select na tabela Galeria aonde o id = 1

Verifico a galeria conforme os parâmetros da tabela, se tudo estiver ok então eu inserto os nomes dos arquivos numa outra tabela ex: Galeria_1_arquivos esta tabela é criada dinamicamente, e gravo os arquivos no disco…

Tentativas / problemas :

  1. Se eu usar o nome fixo não consigo recuperar a id e validar a tabela
  2. Se eu tentar recuperar o arquivo utilizando o commons-fileupload também não dá porque os request já foi analizado antes pelo vraptor
  3. Se eu tentar recuperar o arquivo com um servlet comum e o commons-fileupload não dá porque o vraptor também analiza antes o request
Lucas_Cavalcanti

vc pode fazer:

<input type="file" name="arquivo" />
<input type="hidden" name="id" value="42" />
<input type="hidden" name="tabela" value="Galeria" />

e na lógica:

public void upload(UploadedFile arquivo, String tabela, Integer id) {
   //...
}
Criado 12 de junho de 2010
Ultima resposta 13 de jun. de 2010
Respostas 3
Participantes 3