0

当 STATE_SAVING_METHOD= client . 当我们使用 Servlet 3.0 时,我想使用 BalusC 代码。我面临的问题是当我单击提交按钮时,我收到了这样的 ajax 部分响应

  <?xml version="1.0" encoding="UTF-8" ?>
  <partial-response>
    <changes>
     <update id="javax.faces.ViewState">
      <![CDATA[somejunk]]> 
     </update>
    </changes>
   <extension primefacesCallbackParam="validationFailed">{"validationFailed":false}</extension> 

它从不调用 FileRenderer.java 中的解码方法。如果我删除 enctype,它正在调用 decode 方法并且显然无法在线转换为 MultipartRequest:

 File file = ((MultipartRequest) context.getExternalContext().getRequest()).getFile(clientId);

库:PF 2.2.1 JSF 2.0.9

4

1 回答 1

1

虽然我从 STATE_SAVING_METHOD=server 切换到客户端。我忘了删除org.primefaces.webapp.filter.FileUploadFilter我的 web.xml 中的。所以 PrimefacesFileUploadFilter每次都用部分 ajax 响应来响应。我删除了它,它现在工作正常。

@BalusC,感谢您的精彩代码!

于 2012-04-25T22:28:30.003 回答