FILEUPLOAD! de fotos - help -

1 resposta
D

Olá pessoal! alguém já fez upload de mais de um arquivo ao mesmo tempo no FILEUPLOAD?
para um arquivo está funcionando blz. mas não sei como fazer o servlet receber vários arquivos ou seja quero inserir 4 fotos no mesmo jsp. No meu servlet este método recebe o arquivo (1), não sei o que adaptar para receber mais de um, não achei na net, agradeço e preciso mesmo desta dica. Obrigado!

if(!item.isFormField()){

setFilename(item.getName());

if((getFilename()!=null)&&(!getFilename().equals(""))){

if(isPermission(getFilename())){

setFilename((new File(getFilename())).getName());

String[] nomeSplit = getFilename().split("\.");

setFilename(nomeData()+"."+nomeSplit[1]);

item.write(new File(getPath() +getFilename()));

setMsg(getFilename()+" - Arquivo enviado com sucesso!");

}

else{

setMsg(Arquivo não permitido para upload);

imprimir(request, response);

}

}

}

1 Resposta

J

Dae mano... vê se isso te ajuda!

if (ServletFileUpload.isMultipartContent(request)) {
                FileItemFactory fac = new DiskFileItemFactory();
                ServletFileUpload upload = new ServletFileUpload(fac);
                List files = null;
                try {
                    files = upload.parseRequest(request);
                } catch (FileUploadException e) {
                    throw new ServletException("Erro ao submeter arquivo " + e.getMessage());
                }

                // Recupera o nome da pasta onde os arquivos serão salvos - Para o meu caso
                String path = new AlResource().getProperty("path_pasta_servidor");
                if (path == null || "".equals(path)) {
                    throw new ServletException("Diretório de arquivos nulo");
                }
                this.path = path;

                // Se o diretório não existir, ele cria
                File directory = new File(path);
                if (!directory.exists()) {
                    directory.mkdirs();
                }
                //Percorre a lista, checando para cada item se ele é um campo de formulario ou o
                //conteudo de um arquivo que foi baixado!
                for (int i = 0; i < files.size(); i++) {

                    // Pega cada ítem da requisição
                    FileItem item = (FileItem) files.get(i);
                    //Checa se campo é um campo simples ou arquivo em upload
                    boolean isFormField = item.isFormField();

                    // Verifica ser o campo é do tipo form ou file
                    if (isFormField) {
                        isErrorForm = this.processForm(item, documento, listaError, isErrorForm, request);
                    } else {

			// Fazo tratamento para cada arquivo
     

                        listaFiles.add(item);
                    }
                }

            } else {
                throw new ServletException("Página não pode ser acessada diretamente");
            }
        }

Abraço!!

Criado 19 de fevereiro de 2008
Ultima resposta 19 de fev. de 2008
Respostas 1
Participantes 2