该例子使用servicemix-camel等待3秒后每隔10秒发送一条Hello World消息。
1.创建名为servicemix-camel-demo的项目根目录
2.创建名为camel-su-demo的servicemix-camel-service-unit
3.修改resources目录下的camel-context.xml文件如下
- <?xml version="1.0" encoding="UTF-8"?>
- <beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="
- http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
- http://activemq.apache.org/camel/schema/spring http://activemq.apache.org/camel/schema/spring/camel-spring.xsd
- ">
- <camelContext id="camel"
- xmlns="http://activemq.apache.org/camel/schema/spring">
- <package>org.apache.servicemix.samples</package>
- </camelContext>
- </beans>
4.修改java目录下的MyRouteBuilder文件如下
- package org.apache.servicemix.samples;
- import org.apache.camel.builder.RouteBuilder;
- public class MyRouteBuilder extends RouteBuilder {
- public void configure() {
- from("timer://test?fixedRate=true&delay=3000&period=10000").setBody(
- constant("Hello World!")).to("log:test");
- }
- }
5.创建名为camel-sa-demo的servicemix-service-assembly
6.在camel-sa-demo目录下的pom.xml的dependencies节点下添加依赖
<dependency>
<groupId>org.apache.servicemix.samples</groupId>
<artifactId>camel-su-demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<type>jbi-service-unit</type>
</dependency>
7.执行mvn install,出现BUILD SUCCESSFUL后,将camel-sa-demo/target目录下的camel-sa-demo-0.0.1-SNAPSHOT.jar拷贝到ServiceMix-Home/hotdeploy,启动ServiceMix,执行成功后会出现如下界面