该例子主要用来测试servicemix-file组件的使用,每隔一分钟自动检测filepoller目录下是否有文件,如果有,则将文件传送到filesender目录下。
1.创建名为servicemix-file-demo的根目录
2.创建名为file-su-demo的servicemix-service-unit
3.在file-su-demo目录的resources下创建xbean.xml文件
4.在xbean.xml中插入如下代码
- <?xml version="1.0"?>
- <beans xmlns:f="http://servicemix.apache.org/file/1.0" xmlns:proj="http://servicemix.apache.org/samples/filemover">
- <f:sender service="proj:fileSender" endpoint="endpoint"
- directory="file:///E:/FTP/filesender" autoCreateDirectory="true">
- <property name="marshaler">
- <bean class="org.apache.servicemix.components.util.BinaryFileMarshaler" />
- </property>
- </f:sender>
- <f:poller service="proj:filePoller" endpoint="poller"
- file="file:///E:/FTP/filepoller" targetService="proj:fileSender"
- targetEndpoint="endpoint" period="60000" recursive="true"
- autoCreateDirectory="true">
- <property name="marshaler">
- <bean class="org.apache.servicemix.components.util.BinaryFileMarshaler" />
- </property>
- </f:poller>
- </beans>
5.在file-su-demo目录下的pom.xml的dependencies节点下添加依赖
<dependency>
<groupId>org.apache.servicemix</groupId>
<artifactId>servicemix-file</artifactId>
<version>${servicemix-version}</version>
<type>jbi-component</type>
</dependency>
6.创建名为file-sa-demo的servicemix-service-assembly
7.在file-sa-demo目录下的pom.xml的dependencies节点下添加依赖
<dependency>
<groupId>org.apache.servicemix.samples</groupId>
<artifactId>file-su-demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<type>jbi-service-unit</type>
</dependency>
7.在根目录下执行mvn install,如果出现BUILD SUCCESSFUL,则将file-sa-demo/target/file-sa-demo-0.0.1-SNAPSHOT.jar 拷贝到ServiceMix-Home/hotdeploy目录下,启动ServiceMix,测试文件发送......