On Wed, Mar 6, 2013 at 10:26 AM, Jean Francois LE BESCONT <jflebesc...@gmail.com> wrote: > My mistake ...I used resource.getOut().getBody(); instead > od resource.getIn().getBody(); >
Yeah see this FAQ http://camel.apache.org/using-getin-or-getout-methods-on-exchange.html > > public Exchange aggregate(Exchange original, Exchange resource) { > > AED originalBody = (AED)original.getIn().getBody(); > Object resourceResponse = (Object) resource.getIn().getBody(); > > LOG.info("originalBody " + originalBody ) ; > LOG.info("resourceResponse " + resourceResponse ) ; > // do stuff with > > return resource; > } > > Thanks raul for the help ! :) > > > 2013/3/6 Jean Francois LE BESCONT <jflebesc...@gmail.com> > >> Thanks Raul ! >> >> I haven't found simple example enrich here ( >> http://camel.apache.org/content-enricher.html, direct:resource in never >> explains ). Perharps that I haven't understand fondamental but it's a >> huge framework and learning needs time :) >> >> So I have a querie : >> >> from("direct:refreshReferentielDynamic") >> .setBody(constant("SELECT * FROM TEST")) >> .to("jdbc:dataSource") >> .to("direct:ds") >> .end(); >> >> Plus : >> >> from("direct:ds").to("log:dans.directds").end(); >> >> Otherwise it doesn't works. >> >> >> And an " main route " : >> >> from("file://....") >> .split() >> .tokenize("\n") >> .enrich("direct:ds", new AggregationStrategyRessource()) >> >> With : >> >> >> public class AggregationStrategyRessource implements AggregationStrategy { >> >> >> public Exchange aggregate(Exchange original, Exchange resource) { >> >> return resource; // for the moment >> } >> >> } >> >> But original is always null ... >> >> Do you see with ? >> >> >> >> >> >> >> >> 2013/3/6 Jean Francois LE BESCONT <jflebesc...@gmail.com> >> >>> Hey ! >>> >>> A picture is sometime better than explication :) I try to make a really >>> simple test ( equivalent of MAP with lookup in ETL) : >>> >>> >>> ------------------------- >>> | TABLE TEST | >>> ------------------------- >>> | COL1 | COL2 | >>> | jack | 2 | >>> | bob | 3 | >>> ------------------------ >>> | >>> | >>> | >>> | >>> | >>> ---------------- ---------------------- >>> ------------------------ >>> | FILE INPUT | | ENRICH ? | >>> | FILE OUTPUT | >>> ---------------- ---------------------- >>> ----------------------- >>> | jack | cool | >>>>>>>>> | | >>>>>>>>> | jack >>> | cool | 2 | >>> | bob | foo | | | >>> | bob | foo | 3 | >>> ---------------- ----------------------- >>> ------------------------ >>> >>> >>> >>> >>> >>> >>> >>> 2013/3/6 Jean Francois LE BESCONT <jflebesc...@gmail.com> >>> >>>> If i do: >>>> public class AggregationStrategyRessource implements AggregationStrategy >>>> { >>>> >>>> @Override >>>> public Exchange aggregate(Exchange original, Exchange resource) { >>>> int i = 1 / 0; >>>> return original; >>>> } >>>> } >>>> >>>> no exception are thows. >>>> >>>> >>>> >>>> 2013/3/6 Jean Francois LE BESCONT <jflebesc...@gmail.com> >>>> >>>>> thks Raul >>>>> >>>>> For the moment it's a simple : >>>>> >>>>> public class AggregationStrategyRessource implements >>>>> AggregationStrategy { >>>>> >>>>> @Override >>>>> public Exchange aggregate(Exchange original, Exchange resource) { >>>>> return original; >>>>> } >>>>> >>>>> } >>>>> >>>>> If I put a debug point on it, it is never fired .... >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> 2013/3/6 Raúl Kripalani <r...@evosent.com> >>>>> >>>>>> Can we see the code of AggregationStrategyRessource? >>>>>> >>>>>> Regards, >>>>>> Raúl. >>>>>> >>>>>> On Mar 5, 2013, at 23:30, Jean Francois LE BESCONT wrote: >>>>>> >>>>>> > Hey, >>>>>> > >>>>>> > I have this > >>>>>> > >>>>>> http://camel.465427.n5.nabble.com/Enrich-message-with-data-from-dynamic-sql-query-td5329427.html >>>>>> > >>>>>> > But I haven't found a solution to my question. >>>>>> > >>>>>> > How can enrich my stream with data from a queries ? >>>>>> > >>>>>> > I have a a route called from the start : >>>>>> > >>>>>> > from("direct:refreshReferentielDynamic") >>>>>> > // >>>>>> > .setBody(constant("SELECT * FROM TEST")) >>>>>> > // >>>>>> > .to("jdbc:dataSource") >>>>>> > // >>>>>> > .to("direct:ds") >>>>>> > // >>>>>> > .end(); >>>>>> > >>>>>> > >>>>>> > End I would like to acces data in memory in direct:ds from an other >>>>>> route. >>>>>> > I have try this : >>>>>> > >>>>>> > from("foo"). >>>>>> > [...] >>>>>> > .enrich("direct:ds", new AggregationStrategyRessource()) >>>>>> > >>>>>> > But code in AggregationStrategyRessource is not called ... and body >>>>>> is >>>>>> > replace by the content of the query. >>>>>> > >>>>>> > Thks ! >>>>>> > >>>>>> > Thks ! >>>>>> >>>>>> >>>>> >>>> >>> >> -- Claus Ibsen ----------------- Red Hat, Inc. FuseSource is now part of Red Hat Email: cib...@redhat.com Web: http://fusesource.com Twitter: davsclaus Blog: http://davsclaus.com Author of Camel in Action: http://www.manning.com/ibsen