Hi,
I just tried out without a processor:
from("direct:merge").aggregator(header("ID")).batchSize(2).to("mock:end");

The problem stays the same, I don't get it aggregated, which means, no
message on mock:end. 


Rob 




Claus Ibsen wrote:
> 
> Hi
> 
> See known issues in the 1.5 release notes (work in progress).
> http://activemq.apache.org/camel/camel-150-release.html
> 
> You can not have anything between from ... aggregator, this is currently
> not supported (bypassed in 1.4). aggregator must be connected directly to
> the consumer, so you should do
> 
> From(x).aggregator = OK
> From(x).process(z).aggregator = NOT OK
> 
> 
> The issue is reported in CAMEL-393
> 
> 
> 
> Med venlig hilsen
>  
> Claus Ibsen
> ......................................
> Silverbullet
> Skovsgårdsvænget 21
> 8362 Hørning
> Tlf. +45 2962 7576
> Web: www.silverbullet.dk
> -----Original Message-----
> From: RobMMS [mailto:[EMAIL PROTECTED] 
> Sent: 21. oktober 2008 10:08
> To: [email protected]
> Subject: Aggregator Problems
> 
> 
> Hi,
> I've implemented a simple test for Aggregator pattern:
> 
> public void testAggregator() throws Exception {
>               cc.addRoutes(new RouteBuilder() {
> 
>                       @Override
>                       public void configure() throws Exception {
>                               from("direct:start").multicast(null, 
> true).to("direct:a", "direct:b");
>                               
>                               from("direct:a").process(new MockProcessor("a: 
> ")).to("direct:merge");
>                               from("direct:b").process(new MockProcessor("b: 
> ")).to("direct:merge");
>                               
>                               from("direct:merge").process(new 
> MockProcessor("MergeIn: "))
>                                       .aggregator(header("ID")).batchSize(2)  
>                 
>                                       .to("mock:end");                        
>         
>                       }                       
>               });
>               
>               pt.sendBodyAndHeader("direct:start", "testMsg", "ID", 1);
>               
>               MockEndpoint mock = (MockEndpoint) cc.getEndpoint("mock:end");
>               mock.expectedMessageCount(1);
>               mock.assertIsSatisfied();               
>       }
> // where cc is a DefaultCamelContext and
> // pt is a ProducerTemplate
> 
> I'm working with Camel 1.4, and to get this above code running, I need to
> import
> camel-core-1.4.jar
> commons-logging-1.1.1.jar
> junit-4.4.jar
> 
> BUT, the problem is, when I'm trying to use this pattern in a bigger
> project, where also some spring-jars are needed it doesn't work anymore.
> It
> seems to time out, i.e. the MockEndpoint doesn't receive any message. 
> I figured out that this weird behaviour occurs when I, in addition to the
> above jars, have imported the following spring-jars into projects
> classpath:
> 
> spring-core-2.5.5.jar
> spring-context-2.5.5.jar
> spring-beans-2.5.5.jar
> spring-aop-2.5.5.jar
> 
> The log says:
> WARNUNG: No getConsumers() available on Producer[direct:merge] for
> Exchange[Message:  aggTest ]
> 
> So it seems that the route 
> from("direct:merge").process(new MockProcessor("MergeIn: "))
>                                       .aggregator(header("ID")).batchSize(2)  
>                 
>                                       .to("mock:end");        
> isn't correctly loaded? 
> 
> There seems to be a (hidden) dependency somewhere, I guess. But I need to
> get it running really urgently, with Camel 1.4 and Spring 2.5.5 actually.
> 
> 
> Thanks,
> Rob
> 
> -- 
> View this message in context:
> http://www.nabble.com/Aggregator-Problems-tp20085385s22882p20085385.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Aggregator-Problems-tp20085385s22882p20086029.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Reply via email to