Better?
https://struts.staged.apache.org/core-developers/action-file-upload
https://struts.staged.apache.org/core-developers/file-upload

czw., 14 mar 2024 o 15:29 Greg Huber <gregh3...@gmail.com> napisał(a):
>
> Sorry, I meant we need to copy/duplicate this page :
>
> https://struts.apache.org/core-developers/file-upload.html
>
> to an *action* version:
>
> https://struts.apache.org/core-developers/action-file-upload.html
>
> and modify it for the new interceptor methods/logic
>
> On Thu, 14 Mar 2024 at 12:42, Łukasz Lenart <lukasz.len...@gmail.com> wrote:
>
> > Done
> > https://github.com/apache/struts-site/pull/231
> >
> > czw., 14 mar 2024 o 11:35 Greg Huber <gregh3...@gmail.com> napisał(a):
> > >
> > > 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
> > > >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
> > For additional commands, e-mail: dev-h...@struts.apache.org
> >
> >

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
For additional commands, e-mail: dev-h...@struts.apache.org

Reply via email to