Hi, I am trying to do an aggregation pattern using camel

Here is my java code  and here is the camel-context.xml

    <camelContext id="camel"
xmlns="http://activemq.apache.org/camel/schema/spring";>
         <routeBuilder ref="myBuilder" /> 
        </camelContext>
        <bean id="myBuilder" class="com.nsn.hiq.test.MyRouteBuilder"/>



public class MyRouteBuilder extends RouteBuilder {

    public void configure() {

        // TODO create Camel routes here. For example:-
        //
        // from("activemq:test.MyQueue").to("file://test");
                
                
/*from("timer://tutorial?fixedRate=true&delay=3000&period=10000")   // 1
                     .setBody(constant("<message>Hello world!</message>"))      
                     
// 2 
                          .to("log:tutorial");  
                */
                        
                
from("jbi:service:http://servicemix.apache.org/test/camel-receiver";)
                        .aggregate().xpath("/p:snmp-getResponse/p:NE/@ipaddr", 
String.class)
                        .completionSize(1)      
           
//.to("jbi:endpoint:http://servicemix.apache.org/test/file_sender_getbulk/endpoint";);
 
// 3 
                        .to("log:tutorial");  
                
                        

    }
}

To compile the java code I need camel-core at least 2.3.0

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-core</artifactId>
    <version>2.3.0</version>
        </dependency>
        <dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-core</artifactId>
    <version>2.5.6</version>
</dependency>
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>2.5.6</version>
</dependency>

However the moment I give this came-core 2.3.0 and try to deploy it in
servicemix 3.3.1 I get a depolyment error.

I tried to use the se\pring xml without the java code, but I have not
figured how to get the correlationExpression proper as I am getting no
result out of it. Any suggestions appreciated ( I cannot change the
servicemix version as this is outside my control)


<component-task-result
xmlns="http://java.sun.com/xml/ns/jbi/management-message";
>
        <component-name>servicemix-camel</component-name>
        <component-task-result-details>
                <task-result-details>
                        <task-id>deploy</task-id>
                        <task-result>FAILED</task-result>
                        <message-type>ERROR</message-type>
                        <task-status-msg>
<msg-loc-info>
<loc-token/>
<loc-message>Could not deploy xbean service unit</loc-message>
</msg-loc-info>
</task-status-msg>
                        <exception-info>
                                <nesting-level>1</nesting-level>
                                <msg-loc-info>
                                        <loc-token/>
                                        <loc-message>Error creating bean
with na
me 'camel:beanPostProcessor': Cannot resolve reference to bean 'camel' while
set
ting bean property 'camelContext'; nested exception is
org.springframework.beans
.factory.BeanCreationException: Error creating bean with name 'camel':
Invocatio
n of init method failed; nested exception is java.lang.NoSuchMethodError:
com.ns
n.hiq.test.MyRouteBuilder.from(Ljava/lang/String;)Lorg/apache/camel/model/RouteD
efinition;</loc-message>
                                       
<stack-trace><![CDATA[org.springframewor
k.beans.factory.BeanCreationException: Error creating bean with name
'camel:bean
PostProcessor': Cannot resolve reference to bean 'camel' while setting bean
prop
erty 'camelContext'; nested exception is
org.springframework.beans.factory.BeanC
reationException: Error creating bean with name 'camel': Invocation of init
meth
od failed; nested exception is java.lang.NoSuchMethodError:
com.nsn.hiq.test.MyR
outeBuilder.from(Ljava/lang/String;)Lorg/apache/camel/model/RouteDefinition;
        at
org.springframework.beans.factory.support.BeanDefinitionValueResolver
.resolveReference(BeanDefinitionValueResolver.java:275)
        at
org.springframework.beans.factory.support.BeanDefinitionValueResolver
.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory$1.run(AbstractAutowireCapableBeanFactory.java:409)
        at java.security.AccessController.doPrivileged(Native Method)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.createBean(AbstractAutowireCapableBeanFactory.java:380)
        at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb
ject(AbstractBeanFactory.java:264)
        at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistr
y.getSingleton(DefaultSingletonBeanRegistry.java:222)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe
an(AbstractBeanFactory.java:261)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:185)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:164)
        at
org.springframework.context.support.AbstractApplicationContext.getBea
n(AbstractApplicationContext.java:880)
        at
org.springframework.context.support.AbstractApplicationContext.regist
erBeanPostProcessors(AbstractApplicationContext.java:605)
        at
org.springframework.context.support.AbstractApplicationContext.refres
h(AbstractApplicationContext.java:365)
        at
org.apache.servicemix.common.xbean.AbstractXBeanDeployer.deploy(Abstr
actXBeanDeployer.java:87)
        at
org.apache.servicemix.camel.CamelSpringDeployer.deploy(CamelSpringDep
loyer.java:77)
        at
org.apache.servicemix.common.BaseServiceUnitManager.doDeploy(BaseServ
iceUnitManager.java:88)
        at
org.apache.servicemix.common.BaseServiceUnitManager.deploy(BaseServic
eUnitManager.java:69)
        at
org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAs
sembly(DeploymentService.java:520)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServi
ceAssembly(AutoDeploymentService.java:349)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchi
ve(AutoDeploymentService.java:255)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDire
ctory(AutoDeploymentService.java:658)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(
AutoDeploymentService.java:63)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoD
eploymentService.java:622)
        at java.util.TimerThread.mainLoop(Timer.java:512)
        at java.util.TimerThread.run(Timer.java:462)
Caused by: org.springframework.beans.factory.BeanCreationException: Error
creati
ng bean with name 'camel': Invocation of init method failed; nested
exception is
 java.lang.NoSuchMethodError:
com.nsn.hiq.test.MyRouteBuilder.from(Ljava/lang/St
ring;)Lorg/apache/camel/model/RouteDefinition;
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1338)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:473)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory$1.run(AbstractAutowireCapableBeanFactory.java:409)
        at java.security.AccessController.doPrivileged(Native Method)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.createBean(AbstractAutowireCapableBeanFactory.java:380)
        at
org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb
ject(AbstractBeanFactory.java:264)
        at
org.springframework.beans.factory.support.DefaultSingletonBeanRegistr
y.getSingleton(DefaultSingletonBeanRegistry.java:222)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBe
an(AbstractBeanFactory.java:261)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:185)
        at
org.springframework.beans.factory.support.AbstractBeanFactory.getBean
(AbstractBeanFactory.java:164)
        at
org.springframework.beans.factory.support.BeanDefinitionValueResolver
.resolveReference(BeanDefinitionValueResolver.java:269)
        ... 27 more
Caused by: java.lang.NoSuchMethodError:
com.nsn.hiq.test.MyRouteBuilder.from(Lja
va/lang/String;)Lorg/apache/camel/model/RouteDefinition;
        at com.nsn.hiq.test.MyRouteBuilder.configure(MyRouteBuilder.java:41)
        at
org.apache.camel.builder.RouteBuilder.checkInitialized(RouteBuilder.j
ava:201)
        at
org.apache.camel.builder.RouteBuilder.getRouteList(RouteBuilder.java:
175)
        at
org.apache.camel.impl.DefaultCamelContext.addRoutes(DefaultCamelConte
xt.java:400)
        at
org.apache.camel.spring.CamelContextFactoryBean.installRoutes(CamelCo
ntextFactoryBean.java:522)
        at
org.apache.camel.spring.CamelContextFactoryBean.afterPropertiesSet(Ca
melContextFactoryBean.java:266)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1369)
        at
org.springframework.beans.factory.support.AbstractAutowireCapableBean
Factory.initializeBean(AbstractAutowireCapableBeanFactory.java:1335)
        ... 37 more
]]></stack-trace>
                                </msg-loc-info>
                        </exception-info>
                </task-result-details>
        </component-task-result-details>
</component-task-result>
</jbi-task-result>
</jbi-task>

        at
org.apache.servicemix.jbi.framework.ManagementSupport.failure(Managem
entSupport.java:125)
        at
org.apache.servicemix.jbi.framework.ManagementSupport.failure(Managem
entSupport.java:111)
        at
org.apache.servicemix.jbi.framework.DeploymentService.deployServiceAs
sembly(DeploymentService.java:555)
        at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateServi
ceAssembly(AutoDeploymentService.java:349)
        ... 6 more


Here is the spring xml for camel which does not throw any errors, but does
not seem to work properly

 <camelContext id="camel" 
xmlns="http://activemq.apache.org/camel/schema/spring";>
    <route>
      <from
uri="jbi:service:http://servicemix.apache.org/test/camel-receiver"; />

           <aggregate completionSize="1" groupExchanges="true" >
         <correlationExpression>
                   <jxpath>/p:snmp-getResponse/p:NE/@ipaddr</jxpath>
                   
                </correlationExpression> 
                <to
uri="jbi:endpoint:http://servicemix.apache.org/test/file_sender_getbulk/endpoint";
/>
                <to uri="log:tutorial"/>  
       </aggregate>
    </route>
  </camelContext>
-- 
View this message in context: 
http://servicemix.396122.n5.nabble.com/servicemix-3-3-1-and-camel-core-2-3-0-tp1624310p1624310.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to