0

I have the situation, that users have to fill in a formular where they have to upload multiple files. I know that there is multiple upload component in Primefaces but this doesn't fit to my requirement, since I want to know which file is either the photo or some certificate, and the number of files i ask can change, so it can be 2, 3,5 .... files i need to upload.

I try using multiple single and tags but without succes trying to get the data.

this is what i try whit primefaces

private UploadedFile file; private List files;

public UploadedFile getFile() {
    return file;
}

public void setFile(UploadedFile file) {
    this.file = file;
    this.files.add(file);
}

public List<UploadedFile> getFiles() {
    return files;
}

public void setFiles(List<UploadedFile> files) {
    this.files = files;
}

public void save(){
    try{
    for(UploadedFile f : files){
         FacesMessage message = new FacesMessage("Succesful", f.getFileName() + " is uploaded.");
        FacesContext.getCurrentInstance().addMessage(null, message);
    }
    }catch(Exception ex)
    {
        FacesMessage message = new FacesMessage("Error", ex.toString());
        FacesContext.getCurrentInstance().addMessage(null, message);
    }
}

and this is the xhtml

<h:form id="form" enctype="multipart/form-data" >          
                <p:growl id="messages" showDetail="true" />   
                <p:fileUpload value="#{prueba.file}" mode="simple" />   
                <p:fileUpload value="#{prueba.file}" mode="simple" />  
                <p:commandButton type="submit"   action="#{prueba.save()}" update="messages" value="Upload"  />    
            </h:form>

getting this error java.lang.NullPointerException because files is null.

0 Answers0