Faça o upload de vários arquivos de uma só vez para uma @Ação Struts2
Eu preciso fazer o upload de "1000 arquivos" ou "um arquivo zip incluindo todos os arquivos" ao mesmo tempo usando o Struts2. (Por 1000 arquivos ou um arquivo zip, quero dizer que eu preciso de todos os arquivos para ser carregado no sistema, não importa se o usuário escolher todos os 1000 arquivos de uma só vez ou zip-los e fazer o upload como um único arquivo, então eu estou procurando aquele que é mais fácil de implementar e mais eficiente)
Eu li as seguintes respostas, mas nenhuma delas atende ao propósito.
Upload de arquivo Struts2Como posso selecionar e carregar vários arquivos com HTML e PHP, usando HTTP POST?Usando o seguinte código, quando eu uso um simples arquivo de lista; Ele mostra o nome das listas, mas quando eu uso arquivos de lista, ele não mostra nada e eu não posso fazer o upload dos arquivos.
upload.jsp
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<form action="upload" enctype="multipart/form-data" method="post">
<input name="files" type="file" multiple/>
<button type="submit"/>
</form>
</body>
</html>
upload.java
@Action
public class upload implements Addresses {
private List <File> files = new ArrayList <File> ();
public String execute(){
return "success";
}
public upload() {
System.out.println("in upload 1");
for(int i=0;i<files.size();i++)
System.out.println(i + ")" + files.get(i));
System.out.println("in upload 2");
}
public List <File> getFiles() {
return files;
}
public void setFiles(List <File> files) {
this.files = files;
for(int i=0;i<files.size();i++)
System.out.println(i + ")" + files.get(i));
// File fileToCreate = new File("c:\image", files.get(i).toString());
// FileUtils.copyFile(files.get(i), fileToCreate);
}
}
Saída
in upload 1
in upload 2