I managed to get that working.

I have another question on the route configuration:

Assuming the following xml snippet:

<pss:info>
    <personFile>098765432.txt</personFile>
    <address>
        <street>xyz</street>
        <city>Frankfurt</city>
    </address>
    <persons>
    <person>
        <name>joe</name>
        <age>32</age>
        <country>Germany</country>
    </person>

    <person>
        <name>sam</name>
        <age>32</age>
        <country>Germany</country>
    </person>
    </persons>
</pss:info>

The task was to get the List of Person which I managed to extract using
xpath. I would also want to get the fileName value and set that as a header
in my Exchange. My route definition is as below:

        from("file://C:/folders/inbox?noop=true")

.setFileNameHeader(ns.xpath("/SOAP:Envelope/SOAP:Body/pss:info/personFile/text()"))
            .split(ns.xpath("//SOAP:Envelope/SOAP:Body/pss:info/persons"))
            .bean(new PersonProcessor())
        .to("file://C:/folders/inbox");

But I get the following error message shown:

The method setFileNameHeader(XPathExpression) is undefined for the type
RouteDefinition

The setHeader also seems to be wrong.

Regards,
Jothi

On Fri, Aug 24, 2012 at 9:35 PM, Christian Müller <
christian.muel...@gmail.com> wrote:

> Yes, should be possible.
>
> Sent from a mobile device
> Am 24.08.2012 13:56 schrieb "Joe San" <codeintheo...@gmail.com>:
>
> > The most common language to use is XPath, which allows you to evaluate
> > XPath
> > expressions on the message body. For example, suppose the message
> contains
> > the following
> > XML document:
> >
> > <order customerId="123">
> >     <status>in progress</status>
> > </order>
> >
> > By using XPath expressions, you can extract parts of the document and
> bind
> > them to
> > parameters, like this:
> >
> > public void updateStatus(@XPath("/order/@customerId") Integer customerId,
> > @XPath("/order/status/text()") String status) {
> >     ....
> >     ....
> > }
> >
> > The above snippet is from the Camel in Action book. Can I use the @XPath
> to
> > evaluate to a List < Person >?
> >
> > My xml would look like this:
> >
> > <info>
> >     <address>
> >         <street>xyz</street>
> >         <city>Frankfurt</city>
> >     </address>
> >
> >     <person>
> >         <name>joe</name>
> >         <age>32</age>
> >         <country>Germany</country>
> >     </person>
> >
> >     <person>
> >         <name>sam</name>
> >         <age>32</age>
> >         <country>Germany</country>
> >     </person>
> >
> > </info>
> >
> > The XPath should evaluate the fetch the List of Person objects!
> >
> > Regards,
> > Jothi
> >
>

Reply via email to