[
https://issues.apache.org/jira/browse/SLING-316?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12576896#action_12576896
]
Felix Meschberger commented on SLING-316:
-----------------------------------------
The SlingBindings object when created from a request wraps the original request
with another one which only acquires a reader when really reading. The same is
not implemented for the InputStream, thus this message.
> DefaultSlingScript calls request.getReader() which collides with multipart
> post parsing later
> ---------------------------------------------------------------------------------------------
>
> Key: SLING-316
> URL: https://issues.apache.org/jira/browse/SLING-316
> Project: Sling
> Issue Type: Bug
> Components: Scripting
> Reporter: Tobias Bocanegra
> Assignee: Felix Meschberger
>
> The DefaultSlingScript calls ServletRequest.getReader() in it's service
> method. When the underlying 'POST' script tries to access a request parameter
> of a multipart post, it fails because the 'reader' is already obtained:
> java.lang.IllegalStateException: getReader() already called
> at
> com.day.j2ee.servletengine.RequestImpl.getInputStream(RequestImpl.java:941)
> at
> javax.servlet.ServletRequestWrapper.getInputStream(ServletRequestWrapper.java:145)
> at
> org.apache.commons.fileupload.servlet.ServletRequestContext.getInputStream(ServletRequestContext.java:92)
> at
> org.apache.commons.fileupload.FileUploadBase.parseRequest(FileUploadBase.java:329)
> at
> org.apache.sling.core.impl.parameters.ParameterSupport.parseMultiPartPost(ParameterSupport.java:163)
> at
> org.apache.sling.core.impl.parameters.ParameterSupport.getRequestParameterMapInternal(ParameterSupport.java:107)
> at
> org.apache.sling.core.impl.parameters.ParameterSupport.getRequestParameter(ParameterSupport.java:84)
> at
> org.apache.sling.core.impl.parameters.ParameterSupport.getParameter(ParameterSupport.java:65)
> at
> org.apache.sling.core.impl.SlingHttpServletRequestImpl.getParameter(SlingHttpServletRequestImpl.java:131)
> at
> javax.servlet.ServletRequestWrapper.getParameter(ServletRequestWrapper.java:157)
> at
> org.apache.sling.scripting.jsp.JspServletWrapperAdapter.preCompile(JspServletWrapperAdapter.java:88)
> at
> org.apache.sling.scripting.jsp.JspServletWrapperAdapter.service(JspServletWrapperAdapter.java:58)
> at
> org.apache.sling.scripting.jsp.JspScriptEngineFactory.callJsp(JspScriptEngineFactory.java:131)
> at
> org.apache.sling.scripting.jsp.JspScriptEngineFactory.access$000(JspScriptEngineFactory.java:72)
> at
> org.apache.sling.scripting.jsp.JspScriptEngineFactory$JspScriptEngine.eval(JspScriptEngineFactory.java:279)
> at
> org.apache.sling.scripting.resolver.impl.DefaultSlingScript.eval(DefaultSlingScript.java:118)
> at
> org.apache.sling.scripting.resolver.impl.DefaultSlingScript.service(DefaultSlingScript.java:184)
> at
> org.apache.sling.core.impl.request.RequestData.service(RequestData.java:447)
> at
> org.apache.sling.core.impl.SlingMainServlet.processRequest(SlingMainServlet.java:396)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.