I follow the example in "Upload Files with JSF and MyFaces" from ONJava.com to do the file upload. I am having problem on UploadedFile null pointer. The UploadedFile always return null. actually, the setter-setMyFile never even get called.
Here is what I have in my jsp: <[EMAIL PROTECTED] uri="http://java.sun.com/jsf/core" prefix="f"%> <[EMAIL PROTECTED] uri="http://java.sun.com/jsf/html" prefix="h"%> <%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t"%> <f:subview id="sendJobsub"> <h:form id="sendJob" enctype="multipart/form-data"> <h:messages globalOnly="true" styleClass="message"/> <h:panelGrid columns="3" border="0" cellspacing="5"> <h:outputLabel for="myFileId" value="File: "/> <t:inputFileUpload id="myFileId" value="#{SendJobBean.myFile}" storage="file" required="true"/> <h:outputLabel for="myParamId" value="Param: "/> <h:selectOneMenu id="myParamId" value="#{SendJobBean.myParam}" required="true"> <f:selectItem itemLabel="" itemValue=""/> <f:selectItem itemLabel="MD5" itemValue="MD5"/> <f:selectItem itemLabel="SHA-1" itemValue="SHA-1"/> <f:selectItem itemLabel="SHA-256" itemValue="SHA-256"/> <f:selectItem itemLabel="SHA-384" itemValue="SHA-384"/> <f:selectItem itemLabel="SHA-512" itemValue="SHA-512"/> </h:selectOneMenu> <h:message for="myParamId"/> <h:outputText value=" "/> <h:commandButton value="Upload XML File" action="#{SendJobBean.processXMLFile}"/> <h:outputText value=" "/> </h:panelGrid> </h:form> </f:subview> Here is my web.xml: <filter> <filter-name>ExtensionsFilter</filter-name> <filter-class>org.apache.myfaces.webapp.filter.ExtensionsFilter</filter-class> <init-param> <param-name>uploadMaxFileSize</param-name> <param-value>100m</param-value> </init-param> <init-param> <param-name>uploadThresholdSize</param-name> <param-value>100k</param-value> </init-param> </filter> <filter-mapping> <filter-name>ExtensionsFilter</filter-name> <servlet-name>Faces Servlet</servlet-name> </filter-mapping> <filter-mapping> <filter-name>ExtensionsFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> My bean is very simple: ........ private UploadedFile myFile; ........ public void setMyFile(UploadedFile myFile){ System.out.println("setting uploaded file"); this.myFile=myFile; } public UploadedFile getMyFile(){ System.out.println("getting uploaded file"); return this.myFile; } public void processXMLFile() throws Exception { String myResult=""; try { MessageDigest md = MessageDigest.getInstance(myParam); InputStream in = new BufferedInputStream(myFile.getInputStream()); try { byte[] buffer = new byte[64 * 1024]; int count; while ((count = in.read(buffer)) > 0) md.update(buffer, 0, count); } finally { in.close(); } byte hash[] = md.digest(); StringBuffer buf = new StringBuffer(); for (int i = 0; i < hash.length; i++) { int b = hash[i] & 0xFF; int c = (b >> 4) & 0xF; c = c < 10 ? '0' + c : 'A' + c - 10; buf.append((char) c); c = b & 0xF; c = c < 10 ? '0' + c : 'A' + c - 10; buf.append((char) c); } myResult = buf.toString(); System.out.println(myResult); } catch (Exception x) { x.printStackTrace(); FacesMessage message = new FacesMessage( FacesMessage.SEVERITY_FATAL, x.getClass().getName(), x.getMessage()); FacesContext.getCurrentInstance().addMessage( null, message); } } It always always catch null pointer on UploadedFile, and the UploadedFile(myFile) getter being call when I load that page, but the setter never being called. Please help. I've been struggling on this for days. :-( -- View this message in context: http://www.nabble.com/tomahawk-1.1.6-UploadedFile-not-working.-tp15100128p15100128.html Sent from the MyFaces - Users mailing list archive at Nabble.com.

