上节介绍了一个简单的Camel的小例子,在例子中,介绍了Camel的Componet、Endpoint、URI的概念,总结起来就是:
1、Component就是Endpoint的实例工厂;
2、在编排的camel路由中,Componet是用URI来表示的;
3、每个camel路由都有一个信息的来源Endpoint,并通过路由流过/流向目的Endpoint。
上节举了一个file component的例子,下面再举几个其它Component的例子,以开视听:
<?xml version="1.0" encoding="UTF-8"?>
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0;http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd"
default-timeout="0">
<camelContext xmlns="http://camel.apache.org/schema/blueprint">
<route>
<from uri="file:c:/inbox"/>
<to uri="file:c:/outbox"/>
</route>
<route>
<from uri="sftp://username@xxx.xxx.xxx.xxx//home/inbox?password=******&stepwise=false" />
<to uri="file:c:/inbox"/>
</route>
</camelContext>
</blueprint>
上例在上节的例子中的camelContext下增加了一个route,就是定义了第二个路由,这个路由用了camel-ftp component,这个component支持FTP、SFTP和FTPS三种协议,例子用了sftp协议。
由于camel-ftp component并不是ServiceMix默认安装的,所以需要在console运行安装:
karaf@root>feature:install camel-ftp
为了日后自动装有该component,可以在<servicemix_root>/etc/org.apache.karaf.features.cfg里找到
featuresBoot=karaf-framework,config,activemq-broker,activemq-spring,cxf-specs,camel,camel-activemq,camel-cxf,camel-blueprint,war,camel-ftp
在这行后面加上",camel-ftp"。
要运行以上例子,需要找个ssh(Secure Shell)服务器,将例子中的xxx.xxx.xxx.xxx替换成服务器IP,username替换成ssh的登录用户名,******替换成ssh的登录密码,/home/inbox部分则替换成ssh服务器上的某个目录。
部署好后,试试在ssh服务器里,复制一个文件到/home/inbox目录下,你就会在servicemix运行的机器上的C:\outbox下找到那个文件。
整个过程就是:文件被复制到/home/inbox后,就被新的路由定义的camel-ftp endpoint轮询到,用sftp协议下载到C:\inbox下,然后又由于第一个路由定义的“file:/c:/inbox"的endpoint轮询到,交给"file:/c:/outbox"的endpoint复制到C:\outbox目录下。
下次再举个quartz、direct、log和activemq的component的例子。
分享到:
相关推荐
Apache ServiceMix快速入门指南旨在帮助用户在20分钟内熟悉并开始使用这款开源企业服务总线(ESB)。ServiceMix是基于OSGi的Java应用程序,它提供了集成多种不同技术和服务的能力,如Java消息服务(JMS)、Web服务、...
#### 1.2 ServiceMix开发入门 - **了解ServiceMix的核心组件**:ServiceMix集成了多个强大的工具,如Apache Camel、Apache ActiveMQ等,开发者需要熟悉这些组件的基本使用方法。 - **利用Apache Camel进行消息处理*...
#### 一、ServiceMix安装及入门 - **ServiceMix简介**:ServiceMix是一款开源的企业服务总线(ESB),基于Java Business Integration (JBI) 规范构建,用于实现企业级应用和服务的集成。它是Apache软件基金会的一个...
1. **ServiceMix 安装与入门** ServiceMix 的安装非常简单,只需从Apache官网下载对应的压缩包,解压后进入bin目录,运行ServiceMix.bat即可启动。为了添加或发布服务,你可以将组件拷贝至hotdeploy目录,...
总的来说,JBI开发指南(ServiceMix开发指南)是一份珍贵的资源,为开发者提供了一条学习JBI和ServiceMix的入门之路。通过这份指南,开发者可以掌握JBI规范的核心概念,包括JBI定义的消息交换模式和应用程序接口。而...
7. **适用于多个项目:** 可以作为路由和中介引擎用于 Apache ServiceMix(最流行和强大的分布式开源企业服务总线和 JBI 容器)、Apache ActiveMQ(最流行和强大的开源消息代理)、Apache CXF(智能 Web 服务套件)...
- **Apache ServiceMix**:最流行和强大的分布式开源ESB(企业服务总线)和JBI(Java Business Integration)容器。 - **Apache ActiveMQ**:最受欢迎和强大的开源消息代理。 - **Apache CXF**:一个智能的Web服务...
- Apache ServiceMix:最流行且强大的分布式开源企业服务总线(ESB)和 JBI 容器。 - Apache ActiveMQ:最受欢迎的开源消息代理。 - Apache CXF:一套智能 Web 服务套件(JAX-WS)。 - Apache MINA:网络框架。 ###...
- **Apache ServiceMix**:最流行且功能强大的分布式开源企业服务总线(ESB)和JBI容器之一。 #### 二、架构与特性 Apache Camel的设计旨在提供一种灵活且强大的集成解决方案。其核心架构特点包括: 1. **URI驱动**...
3. **部署灵活性**:可在轻量级容器如Tomcat、Spring,JBI容器如ServiceMix,或J2EE应用服务器如Geronimo、JBoss、WebLogic、WebSphere上部署。 4. **多语言支持**:不仅限于Java,还支持JavaScript、E4X、CORBA等。...
- **Apache ServiceMix**:这是最受欢迎且功能强大的分布式开源 ESB 和 JBI 容器。 - **Apache ActiveMQ**:这是最受欢迎且功能强大的开源消息代理。 - **Apache CXF**:这是一个智能 Web 服务套件(JAX-WS)。 - **...
- Apache ServiceMix:一个流行的分布式开源ESB和JBI。 - Apache ActiveMQ:一个成熟且广泛使用的开源消息代理。 - Apache CXF:一个智能的Web服务套件(包括JAX-WS和JAX-RS)。 - Apache Karaf:一个小型的基于OSGi...
- **Apache ServiceMix**:这是一个流行的分布式开源ESB(Enterprise Service Bus)和JBI(Java Business Integration)容器。 - **Apache ActiveMQ**:这是一个成熟的、广泛使用的开源消息代理。 - **Apache CXF...
- 企业级应用服务器:许多Java EE应用服务器,如Apache Karaf和Apache ServiceMix,都是基于OSGI技术构建的。 - 插件系统:OSGI常用于实现应用程序的插件系统,如Eclipse IDE和Jetty Web服务器都使用OSGI来实现其...
- `org.apache.servicemix.bundles.commons-dbcp-1.2.2_3.jar` - `commons-pool-1.4.jar` - `subethasmtp-wiser-1.2.jar` - `slf4j-nop-1.5.8.jar` - 数据库驱动(例如`mysql.jar`) - `btm-1.3.jar` - JBPM运行时的...
- 通过Yoko支持CORBA,通过Tuscany支持SCA,通过ServiceMix支持JBI。 - 内置Jetty应用服务器。 **二、CXF 入门示例** **HelloWorldService** 是一个经典的入门示例,展示了如何创建和发布一个简单的Web服务。 1...
#### 三、CXF WebService入门实例 接下来,我们将通过一个简单的“Hello World”示例来介绍如何使用CXF创建WebService。 **所需jar包**:需要包含CXF的核心jar包以及相关的依赖。 **服务端代码**: ```java ...
【WebService CXF详解与入门】 WebService是一种允许不同系统之间进行通信和交互的标准协议,它基于HTTP协议,使得应用程序可以无视具体实现细节地调用互联网上的服务。这种技术使得分布式应用程序的发展成为可能,...