Jak przesłać plik p: fileUpload za pomocą przycisku polecenia zamiast przycisku przesyłania

Używam JSF2.1 wraz z primefaces do przesyłania plików. W mojej aplikacji muszę dynamicznie dodawać plik przy tworzeniu rekordu. Ale kiedy używam nie mogę napisać kodu do przesłania mojego pliku podczas zapisywania. Chcę, aby plik został przesłany po kliknięciu tylko Zapisz, a nie podczas przesyłania. Czy ktoś może mi pomóc w realizacji tego

public String handleFileUpload(FileUploadEvent event) throws IOException {  
    FacesMessage msg = new FacesMessage("Succesful", event.getFile().getFileName() + " is uploaded.");
    FacesContext.getCurrentInstance().addMessage(null, msg);  
    UploadedFile file = event.getFile();

    String prefix = FilenameUtils.getBaseName(file.getFileName());
    String suffix = FilenameUtils.getExtension(file.getFileName());


    String path = "C:/apache-tomcat-7.0.47/webapps/ROOT/WEB-INF/images";

     ExternalContext extContext = FacesContext.getCurrentInstance().getExternalContext();


    File fileToDirectory = File.createTempFile(prefix + "-", "." + suffix, new File(path));

    InputStream inputStream = event.getFile().getInputstream();
    String fileName = event.getFile().getFileName();

    OutputStream outputStream = new FileOutputStream(fileToDirectory);

    byte[] buffer = new byte[1024];

    int length;
    //copy the file content in bytes 
    while ((length = inputStream.read(buffer)) > 0){

        outputStream.write(buffer, 0, length);

    }

    inputStream.close();
    outputStream.close();
    return path+fileName;


}

Muszę mieć ten kod podczas zapisywania, ale nie mogę uzyskać zdarzenia podczas zapisywania

questionAnswers(1)

yourAnswerToTheQuestion