I don't know if there is a way to do exactly what you want, but here is another solution that you can use:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:rich="http://richfaces.org/rich" xmlns:a4j="http://richfaces.org/a4j" xmlns:st="http://spectotechnologies.com/jsf" xmlns:t="http://myfaces.apache.org/tomahawk"> ... <h:form enctype="multipart/form-data"> ... your fields ... <t:inputFileUpload value="#{bean.document}" /> <h:commandButton value="Submit" actionListener="#{bean.onButtonSubmitClick}" /> </h:form> </html>
and bean:
@ManagedBean @RequestScoped public class Bean { private UploadedFile m_oDocument; public void setDocument(UploadedFile p_oDocument) { m_oDocument = p_oDocument; } @UploadedFileNotEmpty @UploadedFileSize(max="10000000") @UploadedFileExtension(accept="doc,docx,pdf,txt,rtf,xls,xlsx,zip,rar,jpg,jpeg,jpe,bmp,gif,png,csv,ppt,pptx,odp,pic,odt,ods") public UploadedFile getDocument() { return m_oDocument; } public void onButtonSubmitClick(ActionEvent p_oEvent) { ... } }
Hope this helps!
source share