[ 
https://issues.apache.org/jira/browse/MYFACES-2688?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12862669#action_12862669
 ] 

Leonardo Uribe commented on MYFACES-2688:
-----------------------------------------

This is not a bug. The spec just doesn't deal with multipart/form-data. Note 
the is no standard h:inputFileUpload. We can't do anything here for now.

Each component library handle this case in a different way. For example, 
trinidad has its own file upload component that requires configure a filter 
that wraps the request object. Tomahawk has the same, but note both file upload 
cannot run at the same time. The one that work depends on which filter is on 
top.

I'll close this issue as invalid

> when form is 'multipart/form-data', form component will never process update.
> -----------------------------------------------------------------------------
>
>                 Key: MYFACES-2688
>                 URL: https://issues.apache.org/jira/browse/MYFACES-2688
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: JSR-314
>    Affects Versions: 2.0.0
>         Environment: mac os x, tomcat.
>            Reporter: Mark Li
>   Original Estimate: 120h
>  Remaining Estimate: 120h
>
> because 'javax.view.id' will not be find in request.getParametersMap, the 
> restore phase executor will stop execute.
> source code:
> package org.apache.myfaces.lifecycle;
> .........
> class RestoreViewExecutor implements PhaseExecutor
> ..........
>   public boolean execute(FacesContext facesContext){
> ..................
>          if (!errorPageRequest && 
> restoreViewSupport.isPostback(facesContext)){
> ................
>           }
> ...............
>   }
> restoreViewSupport.isPostback(facesContext) will call 
> facesContext.getExternalContext().getRequestParameterMap().get(ResponseStateManager.VIEW_STATE_PARAM)
> but  request.parameterMap is empty because of  using 'multipart/form-data'.
>  restoreViewSupport.isPostback(facesContext) will return false,
> then FacesContext.renderResponse() is called. the whole phasing process is 
> stopped.
> suggestion:
> should wrap request.parameterMap from the first place.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to