[ https://issues.apache.org/jira/browse/CMIS-844?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14145337#comment-14145337 ]
Florian Müller commented on CMIS-844: ------------------------------------- I'm not concerned about the developers who know what they are doing. But I already see the bug reports that creating folders and updating properties doesn't work as expected. I'm in the process of reworking this code and will add this patch. But I'm pretty sure it will fire back at some point. Btw. I looked at org.apache.catalina.connector.Request#parseParameters and it's not sufficient for the Browser Binding use case because it ignores the "_charset_" parameter. > POSTHttpServletRequestWrapper should accommodate prior consumption of request > body by a filter > ---------------------------------------------------------------------------------------------- > > Key: CMIS-844 > URL: https://issues.apache.org/jira/browse/CMIS-844 > Project: Chemistry > Issue Type: Bug > Components: opencmis-server > Affects Versions: OpenCMIS 0.12.0 > Reporter: Ron Gavlin > Assignee: Florian Müller > > POSTHttpServletRequestWrapper should accommodate prior consumption of the > request body by a filter. > The 0.7.0 release provided this accommodation. This appears to have been > broken by the major post-0.7.0 refactoring. > The following POSTHttpServletRequestWrapper constructor modification fixes > the problem: > {code} > ... > if (isMultipart) { > ... > } else { > // form data processing > StringBuilder sb = new StringBuilder(); > InputStreamReader sr = new > InputStreamReader(request.getInputStream(), IOUtils.UTF8); > char[] buffer = new char[4096]; > int c = 0; > while ((c = sr.read(buffer)) > -1) { > sb.append(buffer, 0, c); > } > if (sb.length() < 3) { > @SuppressWarnings("unchecked") > Map<String, String[]> parameterMap = > request.getParameterMap(); > getParameterMap().putAll(parameterMap); > } else { > parseFormData(sb.toString()); > } > } > ... > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)