实际上当STATE_SAVING_METHOD = client时,用fileuploader来克服issue的primefaces。我想在使用Servlet 3.0发布here时使用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中调用decode方法。如果我删除了enctype,它正在调用decode方法,显然无法在线转换为MultipartRequest:
File file = ((MultipartRequest) context.getExternalContext().getRequest()).getFile(clientId);
库: PF 2.2.1 JSF 2.0.9
答案 0 :(得分:1)
虽然我从STATE_SAVING_METHOD =服务器切换到了客户端。我忘了删除web.xml中的org.primefaces.webapp.filter.FileUploadFilter
。所以Primefaces FileUploadFilter
每次响应部分ajax响应。我把它删除了,现在工作正常。
@BalusC,谢谢您精彩的代码!