Hi, i have a jsp which uploads a file to a server. I uses <t:inputFileUpload> to select a file. Here is the simle code:
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%> <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%> <%@ taglib uri="http://myfaces.apache.org/tomahawk" prefix="t" %> <f:view> <html> <head> </head> <body> <h:form id="uploadForm" enctype="multipart/form-data"> <t:inputHidden binding="#{myBean.fileStatusUI}" value="#{myBean.fileStatusVal}" id="fileStatus"/> <h:panelGrid columns="3" border="0" cellspacing="5"> <h:outputLabel for="myFileId" value="File: "/> <t:inputFileUpload id="myFileId" value="#{myBean.myFile}" storage="file" required="true"/> <h:outputText value=" "/> <t:commandButton value="Submit" action="#{myBean.processMyFile}"/> <h:outputText value=" "/> </h:panelGrid> </h:form> </body> </html> </f:view> When i click on commandbutton once, nothing happens. I dont see the managed bean's println's in the console. Now when I click button again first following error will come up: MultipartRequestWrapper.parseRequest(96) | Exception while uploading file. org.apache.commons.fileupload.FileUploadException: Processing of multipart/form-data request failed. Stream ended unexpectedly at org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:429) at org.apache.myfaces.webapp.filter.MultipartRequestWrapper.parseRequest(MultipartRequestWrapper.java:85) at org.apache.myfaces.webapp.filter.MultipartRequestWrapper.getParameter(MultipartRequestWrapper.java:181) at javax.servlet.ServletRequestWrapper.getParameter(ServletRequestWrapper.java:203) at com.sun.faces.context.RequestParameterMap.get(ExternalContextImpl.java:697) at com.sun.faces.renderkit.ResponseStateManagerImpl.getTreeStructureToRestore(ResponseStateManagerImpl.java:135) at org.ajax4jsf.application.AjaxStateManager.restoreStateFromSession(AjaxStateManager.java:183) at org.ajax4jsf.application.AjaxStateManager.restoreView(AjaxStateManager.java:163) at com.sun.faces.application.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:250) at org.ajax4jsf.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:116) at org.ajax4jsf.application.AjaxViewHandler.restoreView(AjaxViewHandler.java:154) at oracle.adfinternal.view.faces.application.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:232) at org.ajax4jsf.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:116) at org.ajax4jsf.application.AjaxViewHandler.restoreView(AjaxViewHandler.java:154) at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:177) at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213) at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64) at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:147) at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15) at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:141) at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:281) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:619) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368) at com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866) at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448) at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:117) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:110) at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260) at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:239) at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:34) at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:880) at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303) at java.lang.Thread.run(Thread.java:552) But the code in managed bean is executed correctly and the file is getting uploaded. I don't understand this behavior. I want the page to be submitted correctly on single click of button. Any pointers will be very helpful. Thank! -- View this message in context: http://www.nabble.com/Button-action-is-called-on-double-click-tf4393457.html#a12527023 Sent from the MyFaces - Users mailing list archive at Nabble.com.

