[ https://issues.apache.org/activemq/browse/CAMEL-1760?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Willem Jiang resolved CAMEL-1760. --------------------------------- Resolution: Fixed Fix Version/s: 2.0.0 1.6.2 trunk http://svn.apache.org/viewvc?rev=788393&view=rev camel-1.x branch http://svn.apache.org/viewvc?rev=788406&view=rev > Unable to read post params from request > --------------------------------------- > > Key: CAMEL-1760 > URL: https://issues.apache.org/activemq/browse/CAMEL-1760 > Project: Apache Camel > Issue Type: Bug > Components: camel-jetty > Affects Versions: 1.6.0 > Reporter: Andres > Assignee: Willem Jiang > Fix For: 1.6.2, 2.0.0 > > > If consuming messsages from jetty endpoint there is no way to read *post* > parameters from HttpServletRequest. > In example getting HttpServletRequest from body : > HttpServletRequest req = exchange.getIn().getBody(HttpServletRequest.class); > req.getParameterMap() returns allways empty map > The problem is that jetty Request.extractParameters() method is trying to > read post parameters from Request.getInputStream(). But unfortunately > someone strips the input stream before and req.getInputStream() returns > allways 0 bytes > The workaround for me is to extend DefaultHttpBinding as described in: > http://camel.apache.org/jetty.html > {code:title= MyHttpBinding .java|borderStyle=solid} > public class MyHttpBinding extends DefaultHttpBinding { > > public void readRequest(HttpServletRequest request, HttpMessage message) { > request.getParameterMap(); > super.readRequest(request,message); > } > } > {code} > calling request.getParameterMap() will cache parameters inside jetty > Request and it's possible to query params later, without having inputStream -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.