Hi
You can convert that yourself in a processor / bean
// use iterator to walk the XML
Iterator it = exchange.getIn().getBody(Iterator.class);
while (it.hasNext()) {
Object value = it.next();
String s = exchange.getContext().getTypeConverter().convertTo(String.class,
value);
// now add the str to something
}
// and replace the body
exchange.getIn().setBody(myStringWithXml);
But we should maybe add some default type converter to Camel that can
work with the XPath types
On Thu, Apr 22, 2010 at 11:13 AM, mitul1411 <[email protected]> wrote:
>
> When I do not provide any resultType (i.e. using the default one) , I get the
> following error.
>
> No type converter available to convert from type:
> com.sun.org.apache.xerces.internal.dom.DeferredElementNSImpl to the required
> type: java.io.InputStream with value [cone: null]
>
> The above statement is one of the excerpts from the whole stack trace.
>
>
>
> Claus Ibsen-2 wrote:
>>
>> Do not use resultType="java.lang.String"
>>
>> By default it uses some XPath standard type (NODESET) which is defined in
>> javax.xml.xpath.XPathConstants
>>
>> The NODESET should be able to contain multiple nodes in the result.
>>
>>
>>
>> On Thu, Apr 22, 2010 at 10:56 AM, mitul1411 <[email protected]> wrote:
>>>
>>> Hello everyone,
>>> I am not an advanced user of Camel.
>>> When I use XPath Splitter , I get only one record in the result. How do I
>>> get multiple records ?
>>>
>>> For example :
>>> My XML file is
>>>
>>>
>>> <cone>abc</cone>
>>> <ctwo>xyz</ctwo>
>>>
>>>
>>>
>>> <cone>abc123</cone>
>>> <ctwo>xyz123</ctwo>
>>>
>>>
>>>
>>> <cone>abcqqq</cone>
>>> <ctwo>xyzqqq</ctwo>
>>>
>>>
>>> </c>
>>>
>>> I use the following configuration in the xml file :
>>>
>>> <camelContext xmlns="http://camel.apache.org/schema/spring"
>>> id="xpathrouter">
>>> <route>
>>> <from uri="activemq:queue:myqueue" />
>>> <split>
>>> <xpath
>>> resultType="java.lang.String">/a/b/cone</xpath>
>>> <to uri="file:/abc/messages/test" />
>>> </split>
>>> </route>
>>> </camelContext>
>>>
>>> The result I get is : abc
>>>
>>> I also want abc123 and abcqqq in the result.
>>>
>>> Can anyone help me out ?
>>>
>>> Thank You.
>>> --
>>> View this message in context:
>>> http://old.nabble.com/XPath-Spliiter-Problem-tp28325959p28325959.html
>>> Sent from the Camel - Users mailing list archive at Nabble.com.
>>>
>>>
>>
>>
>>
>> --
>> Claus Ibsen
>> Apache Camel Committer
>>
>> Author of Camel in Action: http://www.manning.com/ibsen/
>> Open Source Integration: http://fusesource.com
>> Blog: http://davsclaus.blogspot.com/
>> Twitter: http://twitter.com/davsclaus
>>
>>
>
> --
> View this message in context:
> http://old.nabble.com/XPath-Spliiter-Problem-tp28325959p28326122.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>
>
--
Claus Ibsen
Apache Camel Committer
Author of Camel in Action: http://www.manning.com/ibsen/
Open Source Integration: http://fusesource.com
Blog: http://davsclaus.blogspot.com/
Twitter: http://twitter.com/davsclaus