You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@camel.apache.org by alexcpn <al...@gmail.com> on 2010/09/15 12:49:43 UTC

Re: camel aggregator 2.2 xpath based routing not working

I just printed out the body of the exchange in the camel aggregator and it is
returning null !
 I guess this is one reason why the xpath is not working during aggregation.
Could this be a bug in camel 2.2 ?

Here are two snippets; one just printing the expected body as is , and the
second which routes it through the aggregator
-------------------------------------------------------------------------------------------------------
public class MyRouteBuilder extends RouteBuilder {

   public void configure() {
	System.out.println("In MyRouteBuilder------------------");
       	
	Namespaces ns = new Namespaces("p", "http://nsn.com/obs/mw/medfra/snmpbc")
       	.add("xsd", "http://www.w3.org/2001/XMLSchema");
		
from("jbi:service:http://servicemix.apache.org/test/camel-receiver")
   	.to("log:tutorial");  

-------------------------------------------------------------------------------------------------------
INFO  - AutoDeploymentService          - Directory: hotdeploy: Finished
installation of archive:  inmc-snmp-sa-1.0-SNAPSHOT.jar
INFO  - tutorial                       -
Exchange[BodyType:javax.xml.transform.stream.StreamSource,
 Body:<p:snmp-getResponse xmlns:p="http://nsn.com/obs/mw/medf
ra/snmpbc" xmlns:xsi="http://www.w3.org/2001/XMLSchema">
  <p:NE ipaddr="10.58.128.10"/>
  <p:get-response> 1.3.6.1.6.3.1.1.4.1.0
    <p:variable-bindings>
      <p:varBinding name="1.3.6.1.6.3.1.1.4.1.0">noSuchObject</p:varBinding>
     </p:variable-bindings>
  </p:get-response>
</p:snmp-getResponse>
------------------------------------------------------------------------------------------------------------------

public class MyRouteBuilder extends RouteBuilder {
		
    public void configure() {
 	from("jbi:service:http://servicemix.apache.org/test/camel-receiver")
       	.aggregate(new MyAggregationStrategy()) //camel 2
    	//.aggregator(new MyAggregationStrategy()) //camel 1.6
    	.header("*")
    	//.xpath("string(/p:snmp-getResponse/p:NE/@ipaddr)",String.class, ns)
    	//.completedPredicate(header("completed").isEqualTo("true")) //camel
1.6
		.completionPredicate(header("completed").isEqualTo("true")) //camel 2
	
//.to("jbi:endpoint:http://servicemix.apache.org/test/file_sender_getbulk/endpoint"); 
// 3 
		.to("log:tutorial");  

-------------------------------------------------------------------------------------------------------

public class MyAggregationStrategy implements AggregationStrategy {

public Exchange aggregate(Exchange oldExchange, Exchange newExchange) {


String oldBody = oldExchange.getIn().getBody(String.class);
String newBody = newIn.getBody(String.class);

System.out.println("---------------------------");
System.out.println("New Body "+newBody);
System.out.println("Old Body "+oldBody);
System.out.println("---------------------------");

String oldBody2 = oldExchange.getOut().getBody(String.class);
String newBody2 = newExchange.getOut().getBody(String.class);

System.out.println("---------------------------");
System.out.println("New Body Out "+newBody2);
System.out.println("Old Body  Out "+oldBody2);
System.out.println("---------------------------");

-------------------------------------------------------------------------------------
INFO  - AutoDeploymentService          - Directory: hotdeploy: Finis
tion of archive:  inmc-snmp-sa-1.0-SNAPSHOT.jar
Going in aggregate 123i4
Exception in Aggregator
java.lang.NullPointerException
Going in aggregate 123i4
---------------------------
New Body null
Old Body null
---------------------------
---------------------------
New Body Out null
Old Body  Out null
---------------------------
getIp - inXMLnull
Exception caught getIp java.lang.NullPointerException
Ip-->
Status-->
Exception in Aggregator
java.lang.NumberFormatException: For input string: ""

-- 
View this message in context: http://camel.465427.n5.nabble.com/camel-aggregator-2-2-xpath-based-routing-not-working-tp2840127p2840432.html
Sent from the Camel - Users mailing list archive at Nabble.com.