camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sergey Beryozkin <sberyoz...@gmail.com>
Subject Re: JAX-RS and Camel - Except 1st QueryParameter all others are null
Date Fri, 01 Nov 2013 12:44:09 GMT
Hi,

Can you please double check that

camelMessage.getHeader(Exchange.HTTP_QUERY, String.class)

returns the complete query string ?

I wonder if it's an issue with SimpleCxfRsBinding#bindParameters ?

Raul, can you please comment ?

Thanks, Sergey


On 01/11/13 02:53, arunodhaya80 wrote:
> Hi, I am referring to the following link (specially the Simple Binding style)
> http://camel.apache.org/cxfrs.html
>
> What I am trying to do is basic - pass three query parameters and receive
> them in the REST implementation class.  For some reason, the second and the
> subsequent Query Parameters are just null.  The first one works perfectly
> fine.  I am using Camel+JAX-RS (CXF). This is just a GET request. The URL I
> am using is
>
> `http://localhost:8181/cxf/coreservices/search?q=health&start=100&size=924`
>
> I guess this information is not useful - I am running this on top of Karaf.
>
> **Here is my Interface declaration**
>
> @Path("search")
> public interface SearchRestService {
>
>
>      @GET
>      @Produces(MediaType.APPLICATION_JSON)
>      public String searchGet(@QueryParam ("q") String q, @DefaultValue("0")
> @QueryParam("start") String start, @DefaultValue("10") @QueryParam("size")
> String size );
>
>
>
> **Implementation**
>
>
>      public SearchResult<WikiSearchHit> searchGet(String q, String start,
> String size){
>
>          logger.info("Inside wiki GET method: " +q + " start:"+start + "
> size:"+ size);
>
>
> The `q` parameter comes in fine as `health` but the start and the size
> parameters are just null. Surprisingly, the default values aren't getting
> picked up too.
>
> I am afraid I am doing something wrong in my camel routing.
>
> **Router**
>
>      @Override
>      public void configure() throws Exception {
>
>          from("cxfrs://bean://rsServer?bindingStyle=SimpleConsumer")
>                  .multicast()
>                  .parallelProcessing()
>                  .aggregationStrategy(new CoreSearchResponseAggregator())
>                  .beanRef("searchRestServiceImpl", "searchGet")
>                   ...
>
> The relevant blueprint declarations are :
>
>      <cxf:bus id="coreServicesBus">
>      </cxf:bus>
>
>      <jaxrs:server address="/coreservices" id="rsServer">
>          <jaxrs:serviceBeans>
>              <ref component-id="searchRestServiceImpl" />
>          </jaxrs:serviceBeans>
>      </jaxrs:server>
>
>
> I am pretty sure I am doing something really stupid.  I'll be really
> grateful for any clues on what I am doing wrong.
>
>
>
>
>
> --
> View this message in context: http://camel.465427.n5.nabble.com/JAX-RS-and-Camel-Except-1st-QueryParameter-all-others-are-null-tp5742470.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>



Mime
View raw message