`
killko
  • 浏览: 105072 次
  • 性别: Icon_minigender_1
  • 来自: 广州
博客专栏
Group-logo
Servicemix&Fu...
浏览量:0
社区版块
存档分类
最新评论

Apache Servicemix入门之二

阅读更多
ServiceMix正常运行后,我们尝试编写一个Blueprint XML文档:
<?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>
</camelContext>  
  
</blueprint>   


将以上内容保存成example1.xml,并将此文件拷贝到<ServiceMix Home>/deploy/文件夹下。

到ServiceMix的console里输入命令list,可以看到:




可以看到最后一行那个ID为178的项,名字为example1.xml,它的Blueprint容器状态为Created,证明这个文档已被正常解析了。

再检查一下电脑的C盘,是否多了个inbox的文件夹?

现在,尝试随意复制任意一个文件(假设为log.txt)到C:\inbox文件夹下。

再看看,C盘是否又多了一个C:\outbox文件夹,而且文件夹有一个文件(log.txt)?

这是怎么发生的呢?

我们看回刚才的example1.xml,里面有个<camelContext>,里面嵌套一个<route>,<route>标签里又嵌套一个<from>和<to>,这就定义了一个camel路由。

这个Camel路由从<from>标签取出信息,然后交由<to>标签消费。那么这个信息是什么东西呢?这就要看<from>和<to>标签中指定的uri属性了。

在这里,uri分别是file:c:/inbox和file:c:/outbox,它就是代表当有<from>的uri所代表的file endpoint的数据产生(将log.txt文件拷入inbox文件夹)后,camel路由就开始工作:endpoint从inbox文件夹里取出log.txt,交由<to>的uri(file:c:/outbox)代表的file endpoint处理(将log.txt写入c:\outbox文件夹内)。


那么endpoint在这里是什么概念呢?这个endpoint是属于camel的概念,首先camel项目定义了一系列针对不同功能的Component,这些Component用不同格式的URI来代表,比如:
file:directoryName[?options]


当我们将这些Component用于定义Camel路由时,Component就相当于一个实例工厂,在有信息需要处理时,这个工厂就产生一个实例来处理这些信息,而这个实例就是叫做一个endpoint。

如果理解了Camel的Component、URI、Endpoint的概念和他们之间的关系,那么恭喜你,你基本上就算入了Camel的门了。


  • 大小: 28.1 KB
6
0
分享到:
评论
3 楼 xajava 2013-10-10  
刚才说错了。状态是active,blue print是GracePeriod level是80
2 楼 xajava 2013-10-10  
linux下,serviceMi4.5.2没有成功!
list查看,状态为GracePeriod

不知到什么原因?
1 楼 buffering 2013-06-15  
真好,学到东西了,谢谢。

相关推荐

    快速入门指南 中文版 ServiceMix4

    Apache ServiceMix快速入门指南旨在帮助用户在20分钟内熟悉并开始使用这款开源企业服务总线(ESB)。ServiceMix是基于OSGi的Java应用程序,它提供了集成多种不同技术和服务的能力,如Java消息服务(JMS)、Web服务、...

    蓝眼睛ServiceMix教程

    2. **企业集成模式(EIP)**:ServiceMix内置了众多企业级集成模式,如消息路由、消息转换等,这有助于简化复杂系统的集成工作。 3. **协议支持**:ServiceMix支持多种通信协议,包括HTTP、FTP等,可以方便地与其他...

    SERVICEMIX学习笔记最终版.pdf

    #### 一、ServiceMix安装及入门 - **ServiceMix简介**:ServiceMix是一款开源的企业服务总线(ESB),基于Java Business Integration (JBI) 规范构建,用于实现企业级应用和服务的集成。它是Apache软件基金会的一个...

    ServiceMix学习笔记

    1. **ServiceMix 安装与入门** ServiceMix 的安装非常简单,只需从Apache官网下载对应的压缩包,解压后进入bin目录,运行ServiceMix.bat即可启动。为了添加或发布服务,你可以将组件拷贝至hotdeploy目录,...

    JBI开发指南(Servicemix开发指南)

    总的来说,JBI开发指南(ServiceMix开发指南)是一份珍贵的资源,为开发者提供了一条学习JBI和ServiceMix的入门之路。通过这份指南,开发者可以掌握JBI规范的核心概念,包括JBI定义的消息交换模式和应用程序接口。而...

    Apache Camel USER GUIDE Version 2.3.0

    7. **适用于多个项目:** 可以作为路由和中介引擎用于 Apache ServiceMix(最流行和强大的分布式开源企业服务总线和 JBI 容器)、Apache ActiveMQ(最流行和强大的开源消息代理)、Apache CXF(智能 Web 服务套件)...

    camel-manual-2.8.0

    - **Apache ServiceMix**:最流行和强大的分布式开源ESB(企业服务总线)和JBI(Java Business Integration)容器。 - **Apache ActiveMQ**:最受欢迎和强大的开源消息代理。 - **Apache CXF**:一个智能的Web服务...

    camel2.2.0 手册

    - Apache ServiceMix:最流行且强大的分布式开源企业服务总线(ESB)和 JBI 容器。 - Apache ActiveMQ:最受欢迎的开源消息代理。 - Apache CXF:一套智能 Web 服务套件(JAX-WS)。 - Apache MINA:网络框架。 ###...

    camel-manual-1.5.0.pdf

    - **Apache ServiceMix**:最流行且功能强大的分布式开源企业服务总线(ESB)和JBI容器之一。 #### 二、架构与特性 Apache Camel的设计旨在提供一种灵活且强大的集成解决方案。其核心架构特点包括: 1. **URI驱动**...

    WebService CXF学习-入门篇.pdf

    3. **部署灵活性**:可在轻量级容器如Tomcat、Spring,JBI容器如ServiceMix,或J2EE应用服务器如Geronimo、JBoss、WebLogic、WebSphere上部署。 4. **多语言支持**:不仅限于Java,还支持JavaScript、E4X、CORBA等。...

    camel-manual-2.4.0, 用户手册

    - **Apache ServiceMix**:这是最受欢迎且功能强大的分布式开源 ESB 和 JBI 容器。 - **Apache ActiveMQ**:这是最受欢迎且功能强大的开源消息代理。 - **Apache CXF**:这是一个智能 Web 服务套件(JAX-WS)。 - **...

    camel-manual-2.10.4.pdf

    - Apache ServiceMix:一个流行的分布式开源ESB和JBI。 - Apache ActiveMQ:一个成熟且广泛使用的开源消息代理。 - Apache CXF:一个智能的Web服务套件(包括JAX-WS和JAX-RS)。 - Apache Karaf:一个小型的基于OSGi...

    CAMEL核心开发指南

    - **Apache ServiceMix**:这是一个流行的分布式开源ESB(Enterprise Service Bus)和JBI(Java Business Integration)容器。 - **Apache ActiveMQ**:这是一个成熟的、广泛使用的开源消息代理。 - **Apache CXF...

    cxf开发指南

    二、CXF 入门实例 1. HelloWorld 示例: * 服务端代码: + HelloWorldService.java * 客户端代码: + HelloWorldClient.java 2. CXF 提供了多种方式来发布 WebService,包括: * 通过 CXF 提供的简单的 Java...

    OSGI in Action

    - 企业级应用服务器:许多Java EE应用服务器,如Apache Karaf和Apache ServiceMix,都是基于OSGI技术构建的。 - 插件系统:OSGI常用于实现应用程序的插件系统,如Eclipse IDE和Jetty Web服务器都使用OSGI来实现其...

    jbpm5安装、配置、示例入门

    - `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运行时的...

    CXF-WebService-开发指南、技术文档.docx

    **二、CXF 入门示例** **HelloWorldService** 是一个经典的入门示例,展示了如何创建和发布一个简单的Web服务。 1. **服务器端代码**: - 使用了JDK5的注解(Annotation),如`@WebService`和`@SOAPBinding`。 -...

    CXF_WebService_开发指南、技术文档

    - **集成能力**:CXF能够很好地与各种应用服务器集成,比如内置的Jetty应用服务器,同时还支持通过Yoko实现CORBA的支持,通过Tuscany支持SCA,通过ServiceMix支持JBI。 #### 二、CXF环境搭建与配置 CXF的安装非常...

    WebService_CXF范例.

    【WebService CXF详解与入门】 WebService是一种允许不同系统之间进行通信和交互的标准协议,它基于HTTP协议,使得应用程序可以无视具体实现细节地调用互联网上的服务。这种技术使得分布式应用程序的发展成为可能,...

Global site tag (gtag.js) - Google Analytics