ZengCode.Com (The Thai Php Framework)  


Home   Download   Manual   About us    

Facebook   


MAIN MENU
เขียนโปรแกรมบน iPhone ด้วย MonoTouch
News
Php Tips
Ubuntu
Spring+Strut+Hibernate
Android Programming
Design Pattern By PHP
C# Design Pattern
Linux Quick Tips
C# Tips & Technique
C# using Linq น่าใช้จริงๆ
Java & JavaScript Tips
MAVEN
Database & SQL
ZengCode Framework Guide
Mac OSx
Zeng Code Code
Programming
IPhone (Tips and Trick)

Download เอกสารที่น่าสนใจ

     Camel ActiveMQ route and unit test example  (2011-09-23)

ที่มา http://www.andrejkoelewijn.com/wp/2010/10/13/camel-activemq-route-and-unit-test-example/

เห็นว่าน่าจะมีประโยชน์มากๆ สำหรับการ เทสน Camel Active MQ ครับ

ตัวอย่างนี้เป็นการเทส Apache Camel and ActiveMQ จากตัวอย่าง Camel route จะล็อกทุกแมสเซสที่รับมาจาก EVENTS queue  นะครับ

1
2
3
4
5
6
7
import org.apache.camel.builder.RouteBuilder;
public class DispatcherRouteBuilder extends RouteBuilder {
    @Override
    public void configure() throws Exception {
        from("activemq:queue:EVENTS").to("log:Events?showAll=true");
    }
}

๋Junit test จะทำการ start message broker และจะ start camel แล้วจะทำการส่ง message ไปยัง queue

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import org.apache.activemq.broker.BrokerService;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.test.junit4.CamelTestSupport;
import org.junit.BeforeClass;
import org.junit.Test;
 
public class DispatcherRouteBuilderTest extends CamelTestSupport {
    @Override
    protected RouteBuilder createRouteBuilder() throws Exception {
        return new DispatcherRouteBuilder();
    }
    @BeforeClass
    public static void setUpClass() throws Exception {
        BrokerService brokerSvc = new BrokerService();
        brokerSvc.setBrokerName("TestBroker");
        brokerSvc.addConnector("tcp://localhost:61616");
        brokerSvc.start();
    }
    @Test
    public void testConfigure() throws Exception {
        template.sendBody("activemq:queue:EVENTS", "HelloWorld!");
        Thread.sleep(3000);
    }
}

 dependencies ที่ใช้ใน Maven:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<dependencies>
  <dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-core</artifactId>
    <version>2.4.0-fuse-00-00</version>
  </dependency>
  <dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-test</artifactId>
    <version>2.4.0-fuse-00-00</version>
    <scope>test</scope>
  </dependency>
  <dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-jms</artifactId>
    <version>2.4.0-fuse-00-00</version>
  </dependency>
  <dependency>
    <groupId>org.apache.activemq</groupId>
    <artifactId>activemq-camel</artifactId>
    <version>5.4.0-fuse-00-00</version>
    <scope>test</scope>
  </dependency>
  <dependency>
    <groupId>org.apache.activemq</groupId>
    <artifactId>activemq-core</artifactId>
    <version>5.4.0-fuse-00-00</version>
    <scope>test</scope>
  </dependency>
</dependencies>


Comment
Name
Comment
Security CodeCAPTCHA Image

web hit counter

This page took 0.218793 seconds to load.