camel-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Willem Jiang (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (CAMEL-1760) Unable to read post params from request
Date Thu, 25 Jun 2009 16:09:36 GMT

     [ 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.


Mime
View raw message