Stream caching is described here :
http://camel.apache.org/stream-caching.html

On Mon, Oct 27, 2014 at 12:41 PM, Jonathan Vila Lopez <
jonathan.v...@gmail.com> wrote:

> Hi Charles
>
> You are right..... thank you a lot.
>
> Is that explained in any documentation page ? to read the source.....
>
> Kind regards.
>
>
> [image: Inline image 2]
>
> * Jonathan Vila    ** <https://www.twitter.com/jonathan_vila>
> <http://www.linkedin.com/in/jonathanvila>*
>
>
> * jonathan.v...@gmail.com <jonathan.v...@gmail.com>*
>
>
>
>
> On Mon, Oct 27, 2014 at 11:52 AM, Charles Moulliard <ch0...@gmail.com>
> wrote:
>
>> Your syntax is not correct as umarshalling of a jackson stream (coming
>> from
>> the HTTP request) will return a HashMap. To access to this value using the
>> simple language, this syntax has to be used : simple("${body[code]}")
>>
>> Example :
>>
>>         <route streamCache="true">
>>             <from uri="
>>
>> http://gateway.marvel.com/v1/public/comics?dateDescriptor=nextWeek&amp;ts=987&amp;apikey=97f295907072a970c5df30d73d1f3816&amp;hash=abfa1c1d42a73a5eab042242335d805d
>> "/>
>>             <log message=">> Response received : ${body}"/>
>>             <unmarshal>
>>                 <json library="Jackson"/>
>>             </unmarshal>
>>             <log message="Attribute code : ${body[code]}"/>
>>             <log message="Attribute status : ${body[status]}"/>
>>             <log message="Attribute stacopyrighttus :
>> ${body[copyright]}"/>
>>             <log message="Attribute title  : ${body[title]}"/>
>>         </route>
>>
>> On Mon, Oct 27, 2014 at 11:47 AM, Charles Moulliard <ch0...@gmail.com>
>> wrote:
>>
>> > You syntax is not correct as unmarshalling of jackson will return
>> >
>> > On Mon, Oct 27, 2014 at 10:56 AM, Jonathan Vila Lopez <
>> > jonathan.v...@gmail.com> wrote:
>> >
>> >> Hi Charles
>> >>
>> >> Oki, thank you.
>> >>
>> >> But, how can I retrieve 3 attributes from the JSON and print out them ?
>> >> In the line 3 I get nothing in the console, so it seems line 2 in
>> wrong in
>> >> some way....
>> >>
>> >> 1. ​
>> >> unmarshal().json(JsonLibrary.Jackson).
>> >> 2.      setBody(simple("my attributes are : ${body?.code?}")).
>> >> 3.       to("stream:out");
>> >>
>> >> Kind regards.
>> >>
>> >>
>> >> [image: Inline image 2]
>> >>
>> >> * Jonathan Vila    ** <https://www.twitter.com/jonathan_vila>
>> >> <http://www.linkedin.com/in/jonathanvila>*
>> >>
>> >>
>> >> * jonathan.v...@gmail.com <jonathan.v...@gmail.com>*
>> >>
>> >>
>> >>
>> >>
>> >> On Mon, Oct 27, 2014 at 10:48 AM, Charles Moulliard <ch0...@gmail.com>
>> >> wrote:
>> >>
>> >>> Hi Jonathan,
>> >>>
>> >>> Our documentation is not longer up to date as now the http component
>> >>> proposes / provides also a HttpConsumer (= Polling Consumer) which is
>> >>> able
>> >>> every x second to do a HTTP request. So, you can also use this syntax
>> >>> within your Apache Camel route (from("http://";).to("") to poll a HTTP
>> >>> Server.
>> >>>
>> >>> Regards,
>> >>>
>> >>> On Mon, Oct 27, 2014 at 9:48 AM, Jonathan Vila Lopez <
>> >>> jonathan.v...@gmail.com> wrote:
>> >>>
>> >>> > Hello Charles
>> >>> >
>> >>> > But, with that code I used I successfully get the response and
>> >>> > successfully unmarshals it...... in fact, in my code my problem was
>> in
>> >>> the
>> >>> > line of setBody.... I can not get the attributes.
>> >>> >
>> >>> > Anyway I will try your proposal.
>> >>> >
>> >>> > Kind regards.
>> >>> >
>> >>> >
>> >>> > [image: Inline image 2]
>> >>> >
>> >>> > * Jonathan Vila    ** <https://www.twitter.com/jonathan_vila>
>> >>> > <http://www.linkedin.com/in/jonathanvila>*
>> >>> >
>> >>> >
>> >>> > * jonathan.v...@gmail.com <jonathan.v...@gmail.com>*
>> >>> >
>> >>> >
>> >>> >
>> >>> >
>> >>> > On Mon, Oct 27, 2014 at 8:57 AM, Charles Moulliard <
>> ch0...@gmail.com>
>> >>> > wrote:
>> >>> >
>> >>> >> Hi Jonathan,
>> >>> >>
>> >>> >> To call the HTTP Server exposing the REST service the HTTP producer
>> >>> must
>> >>> >> be
>> >>> >> used and not the HTTP Consumer component of Camel (
>> >>> >> http://camel.apache.org/http.html). This syntax is not correct
>> >>> >> (from("http://";) while this one is correct
>> >>> >>
>> >>> >> from("direct:marvel").to("
>> >>> >>
>> >>> >>
>> >>>
>> http://gateway.marvel.com:80/v1/public/comics?dateDescriptor=nextWeek&ts=987&apikey=97f295907072a970c5df30d73d1f3816&hash=abfa1c1d42a73a5eab042242335d805d
>> >>> >> ").
>> >>> >>
>> >>> ​​
>> >>> unmarshal().json(JsonLibrary.Jackson).
>> >>> >>       setBody(simple("my attributes are : ${body?.code?}")).
>> >>> >>       to("stream:out");
>> >>> >>
>> >>> >> Regards,
>> >>> >>
>> >>> >
>> >>> >
>> >>>
>> >>>
>> >>> --
>> >>> Charles Moulliard
>> >>> Apache Committer / Architect @RedHat
>> >>> Twitter : @cmoulliard | Blog :  http://cmoulliard.github.io
>> >>>
>> >>
>> >>
>> >
>> >
>> > --
>> > Charles Moulliard
>> > Apache Committer / Architect @RedHat
>> > Twitter : @cmoulliard | Blog :  http://cmoulliard.github.io
>> >
>> >
>>
>>
>> --
>> Charles Moulliard
>> Apache Committer / Architect @RedHat
>> Twitter : @cmoulliard | Blog :  http://cmoulliard.github.io
>>
>
>


-- 
Charles Moulliard
Apache Committer / Architect @RedHat
Twitter : @cmoulliard | Blog :  http://cmoulliard.github.io

Reply via email to