There is a really good page for the old upload
https://struts.apache.org/core-developers/file-upload.html
But the << back to Core Developers Guide does not make it easy to find
it again.
##
https://struts.apache.org/core-developers/action-file-upload-interceptor
would benefit a similar detail page, updated and with the stream stuff.
return this.uploadedFiles.stream().map(UploadedFile::getContentType).toArray();
otherwise without streams
List<UploadedFile<File>>uploads =this.uploadedFiles;
if(uploads !=null&&uploads.size()>0){
for(inti =0;i <uploads.size();i++){
String file uploads.get(i).getOriginalName();
// destroy the temporary file created
uploads.get(i).delete();
}
}
On 12/03/2024 19:48, Lukasz Lenart wrote:
pon., 26 lut 2024 o 12:08 Greg Huber<gregh3...@gmail.com> napisał(a):
The documentation only lists one file
|public void withUploadedFiles(List<UploadedFile> uploadedFiles) { if
(!uploadedFiles.isEmpty()) { this.uploadedFile = uploadedFiles.get(0);
this.fileName = uploadedFile.getName(); this.contentType =
uploadedFile.getContentType(); this.originalName =
uploadedFile.getOriginalName(); } }|
For multiple files these need populating
privateFile[]uploadedFiles=null;
privateString[]uploadedFilesContentType=null;
privateString[]uploadedFilesFileName=null;
We have to loop and do it ourselves now?
Basically it would be better to stop using additional fields if not
needed. You can achieve the same behaviour just exposing getters
extracting what's needed from "uploadedFiles", eg:
public void withUploadedFiles(List<UploadedFile> uploadedFiles) {
this.uploadedFiles = uploadedFiles;
}
public String[] getUploadedFilesContentType() {
return
this.uploadedFiles.stream().map(UploadedFile::getContentType).toArray();
}
etc.
Cheers
Lukasz
---------------------------------------------------------------------
To unsubscribe, e-mail:dev-unsubscr...@struts.apache.org
For additional commands, e-mail:dev-h...@struts.apache.org