Apache Camel 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Apache Camel 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
Apache Camel 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
Apache Camel 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
Apache Camel 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 Apache-2.0
开发语言 Java
操作系统 跨平台
软件类型 开源软件
开源组织 Apache
地区 不详
投 递 者 不详
适用人群 未知
收录时间 2008-09-21

软件简介

Apache Camel 是一个非常强大的基于规则的路由以及媒介引擎,该引擎提供了一个基于POJO的 企业应用模式(Enterprise Integration Patterns)的实现,你可以采用其异常强大且十分易用的API (可以说是一种Java的领域定义语言 Domain Specific Language)来配置其路由或者中介的规则。 通过这种领域定义语言,你可以在你的IDE中用简单的Java Code就可以写出一个类型安全并具有一定智能的规则描述文件。这与那种复杂的XML配置相比极大简化了规则定义开发。 当然Apache Camel也提供了一个对Spring 配置文件的支持。

Apache Camel 采用URI来描述各种组件,这样你可以很方便地与各种传输或者消息模块进行交互,其中包含的模块有  HTTP, ActiveMQ, JMS, JBI, SCA, MINA or CXF Bus API。 这些模块是采用可插拔的方式进行工作的。Apache Camel的核心十分小巧你可以很容易地将其集成在各种Java应用中。

目前Apache Camel作为一个路由以及媒介引擎可以与如下项目集成。
Apache ActiveMQ
Apache CXF
Apache MINA
Apache ServiceMix

展开阅读全文

评论 (5)

加载中
学习中……
2018/01/05 18:49
回复
举报
打分: 力荐
强大稳定的企业级路由规则引擎
2017/07/24 14:25
回复
举报
getContext().getShutdownStrategy().setTimeout(10); 这句代码是什么意思? #Apache Camel#
2015/07/23 11:35
回复
举报
ExchangePattern.OutIn 和 ExchangePattern.InOut 有什么区别? #Apache Camel#
2015/08/27 09:50
回复
举报
想要尝试下。。。 #Apache Camel#
2015/11/25 20:45
回复
举报
更多评论
10/14 07:20

Apache Camel 3.11.3 正式发布

Apache Camel 3.11.3 现已发布。Apache Camel 是一个开源的面向消息的中间件框架,它有一个基于规则的路由和调解引擎,提供了一个基于 Java 对象的企业集成模式的实现,使用应用编程接口来配置路由和调解规则。在面向服务的架构项目中,Camel 经常与 Apache ServiceMix、Apache ActiveMQ 和 Apache CXF 一起使用。 主要更新内容 bug 修复 camel-rest-openapi - 端点查询参数未转发到底层组件端点 Camel-AWS2-S3:当 includeBod...

0
5
10/05 07:01

Apache Camel 3.12.0 发布

Apache Camel 是一个开源的面向消息的中间件框架,它有一个基于规则的路由和调解引擎,提供了一个基于 Java 对象的企业集成模式的实现,使用应用编程接口来配置路由和调解规则。 在面向服务的架构项目中,Camel 经常与 Apache ServiceMix、Apache ActiveMQ 和 Apache CXF 一起使用。 Apache Camel 3.12.0 更新内容如下: Bug 修复: CAMEL-17008 okStatusCodeRange 不允许使用单一状态代码 CAMEL-17007 camel-aws2-lambda: Get...

0
7
09/14 06:47

Apache Camel 3.11.2 发布

Apache Camel 3.11.2 现已发布。这是一个基于已知企业集成模式的开源集成框架,支持 50 多种数据格式,允许开发者集成产生和消费数据的系统。本次更新是一个 LTS 版本,包含 22 改进和错误修复。 主要更新内容 Bug 指定 OpenAPI 许可证和联系信息导致 NullPointerException StringHelper.removeLeadingAndEndingQuotes() 可能导致 IndexOutOfBoundsException KafkaSpanDecorator 有时会设置错误的 message_bus.destination 标签...

0
3
08/08 06:53

Apache Camel 3.11.1 发布

Apache Camel 3.11.1 现已发布。这是一个基于已知企业集成模式的开源集成框架,支持 50 多种数据格式,允许开发者集成产生和消费数据的系统。本次更新是一个 LTS 版本,包含 33 个新特性、改进和错误修复。 主要更新内容 camel-jpa:不丢失头文件 camel-core:OGNL "properties" 变量应使用 "allProperties" camel-core:Kamelet 在 #class local bean 中增加对工厂方法的支持 在 platform-http-vertx 中改进对 Vert.x Buffer ...

0
2
发表了资讯
07/14 07:21

Apache Camel 3.7.5 (LTS) 发布

Apache Camel 发布了长期支持版本(LTS) 3.7.5,此版本是 3.7.x LTS 分支的一个补丁版本,包含 17 个错误修复和功能改进,主要如下: CAMEL-16718 修复与 Netty TCP + Resilience4J 断路器的冲突 CAMEL-16707 修复 camel-rabbitmq 连接在“声明”过程中出现泄露错误的问题 CAMEL-16699 修复 HttpProducer 在桥接端点上跳过查询参数的请求 header,被常见类型而损坏的问题 CAMEL-16785 camel 3.7.x - 依赖升级 CAMEL-16619 camel-...

0
2
07/06 08:45

Apache Camel 3.11.0 发布

Apache Camel 3.11.0 现已发布。这是一个基于已知企业集成模式的开源集成框架,支持 50 多种数据格式,允许开发者集成产生和消费数据的系统。本次更新是一个 LTS 版本,包含 101 个新特性、改进和错误修复。 主要更新内容 bug 修复 接收者列表不会等待接收者处理交换,并在处理路由时忽略聚合策略 修复了与 Netty TCP + Resilience4J circuit breaker 的冲突 修复了 camel-mongodb streamFilter 组件选项不被认可的问题 camel-...

2
3
05/29 06:19

Apache Camel 2.25.4 发布

Apache Camel 2.25.4 已经发布。Apache Camel 是一个开源的集成框架,可以帮助用户迅速而方便地整合各种系统消耗或生产数据。本次更新包含 10 个错误修复和改进。 主要更新内容 验证器组件因 java.lang.IllegalArgumentException 而失败:protocol = https host = null 修复 camel-maven-plugin 在 Camel 2.25.x 上失败的问题 修复 camel-jsonpath - $.concat(...) 的结果在后续调用中被缓存的问题 camel-cxfrs 生产者不应该尝试...

0
2
03/31 07:15

Apache Camel 3.9.0 发布

Apache Camel 3.9.3 已经发布。Apache Camel 是一个开源的集成框架,可以帮助用户迅速而方便地整合各种系统消耗或生产数据。本次更新包含 189 个错误修复和改进。 主要更新内容 修复无法禁用 Infinispan 组件上自动连线的问题 修复 camel-main 无法从环境变量加载组件属性的问题 修复 Kafka 消费者组件总是在关闭时提交最新的偏移量(即使 autoCommitOnStop == none)的问题 修复 LoginCallbackHandler 在 OSGi 上导致 ClassNot...

2
8
03/12 07:10

Apache Camel 3.7.3 发布

Apache Camel 3.7.3 已经发布。Apache Camel 是一个开源的集成框架,可以帮助用户迅速而方便地整合各种系统消耗或生产数据。本次更新是 LTS 3.7.x 分支的修补程序版本,其中包含 36 个错误修复和改进。 主要更新内容 修复 camel-servicenow-maven-plugin 生成的模型类无法编译问题 修复交易被启用时,Splitter 不调用聚合策略的问题 当使用 transacted 时,使用 AggregationStrategy 进行拆分会被忽略 修复了错误的端点 URI 破坏...

0
2
发表于开发技能专区
2020/10/22 11:22

Apache Camel 3.6.0 发布

本次更新的新功能如下: 新功能 camel-rabbitmq 在消费者级别添加对重新排队的支持 升级到 JAXB impl 2.3.3 Optaplanner 使用 SolverManager 升级组件 camel-azure-eventhubs:支持生产者发送事件列表 LambdaRouteBuilderTemplate 允许通过 lambda 样式定义路由模板 camel-api-component 在生成的配置类中为 api 方法添加标签限定符 Kinesis-Firehose:在生产者端添加更多操作 创建一个 Eventbridge 组件 调用定制程序作为服务初...

1
6
发表于软件架构专区
2019/12/03 07:33

Apache Camel 3.0.0 发布,十年来首个主要版本

Apache Camel 3.0.0 发布了,这是自 2009 年 8 月 25 日发布以来,该项目十年来第一个主要版本。 Camel 是一个基于规则的路由以及媒介引擎,它提供了一个基于 POJO 的企业集成模式的实现,开发者可以采用其强大且十分易用的 API(Java 领域特定语言)配置其路由或中介的规则,通过这种领域特定语言,可以在 IDE 中用简单的 Java 代码写出一个类型安全并具有一定智能的规则描述文件。 此版本一共解决了 1000+ 问题,主要关注将 ...

9
23
发表于服务端专区
2018/12/01 07:29

Apache Camel 2.23 发布,支持 Spring Boot 2.1

Apache Camel 2.23 已发布,最值得关注的新功能是支持 Spring Boot 2.1 ,此外还改进了 starter 组件,并针对已改进的 Spring Boot 自动配置进行了再次优化。 此版本包含 262 项修复和改进,并添加了以下新组件: AWS IAM - for managing Amazon IAM Corda - to interactive with corda nodes FHIR - to work with the fhir standard (health care) Google Big Query Standard SQL - Google bigdata warehouse analytics Googl...

0
3
发表于开发技能专区
2018/07/06 07:20

开源规则引擎 Apache Camel 2.22,支持 Spring Boot 2

Apache Camel 的最新版本 2.22.0 已发布,这是第一个完全正式支持 Spring Boot 2 的版本。 官方表示,这是一项重大工作,因为像 Apache Camel 这样的大型框架将 Spring Boot v1 升级到 v2 需要很多的付出。因此对 Spring Boot 2 的支持是此版本的主要目标。 当你使用 Spring Boot 2 时,Spring 团队已经更新了他们的 start.spring.io 网站,现在包括 Apache Camel。如果你使用的是 Spring Boot 1,那么之前版本的 Apache Camel...

4
33
发表于软件架构专区
2018/03/18 07:20

Apache Camel 2.21 发布,开源规则引擎

Apache Camel 2.21 发布了。Apache Camel 是一个非常强大的基于规则的路由以及媒介引擎,该引擎提供了一个基于POJO的 企业应用模式(Enterprise Integration Patterns)的实现,你可以采用其异常强大且十分易用的API (可以说是一种Java的领域定义语言 Domain Specific Language)来配置其路由或者中介的规则。 通过这种领域定义语言,你可以在你的IDE中用简单的Java Code就可以写出一个类型安全并具有一定智能的规则描述文件。这与...

2
16
发表了资讯
2017/10/13 12:01

Apache Camel 2.20 发布,对 Java 9 技术预览支持

Apache Camel 2.20 发布了。 该版本有以下改进: Java 9 技术预览支持 改善启动时间 优化核心,减少冗余 改进了 Spring Boot 的支持,正在准备 Spring Boot 2 的实现 改进了Spring 的生命周期 支持 JMS 2.0 消息头更快的遍历实现 Health-Check API Cluster API RouteController API 更多组件 完整的更新内容,请点击此处查看。 Apache Camel 是一个非常强大的基于规则的路由以及媒介引擎,该引擎提供了一个基于POJO的 企业应用模...

0
15
发表了资讯
2016/10/11 00:00

Apache Camel 2.18.0 发布,开源规则引擎

Apache Camel 2.18.0 发布了。 Apache Camel 是一个非常强大的基于规则的路由以及媒介引擎,该引擎提供了一个基于POJO的 企业应用模式(Enterprise Integration Patterns)的实现,你可以采用其异常强大且十分易用的API (可以说是一种Java的领域定义语言 Domain Specific Language)来配置其路由或者中介的规则。 通过这种领域定义语言,你可以在你的IDE中用简单的Java Code就可以写出一个类型安全并具有一定智能的规则描述文件。这...

2
28
发表了资讯
2016/05/09 00:00

Apache Camel 2.17.1 发布,路由以及媒介引擎

Apache Camel 2.17.1 发布了,一些提升及新特性: [CAMEL-9574] - Be able to force one-way operation when using camel-cxf transport [CAMEL-9883] - Add a SpringCache based idempotent repository [CAMEL-9332] - Support @MockEndpoint and @MockEndpointAndSkip in Spring Boot [CAMEL-9549] - camel-schematron - More fine grained error messages when compiling the schema [CAMEL-9735] - camel-tarfile throws Ou...

2
8
发表了资讯
2016/03/27 00:00

Apache Camel 2.17.0 发布,开源规则引擎

Apache Camel 2.17.0 发布了,本次更新共有450+处改进,修复并在过去几个月中对Camel主分支应用了新特性。 详细记录请查阅发行说明 下载地址: http://camel.apache.org/download.html Apache Camel 是一个非常强大的基于规则的路由以及媒介引擎,该引擎提供了一个基于POJO的 企业应用模式(Enterprise Integration Patterns)的实现,你可以采用其异常强大且十分易用的API (可以说是一种Java的领域定义语言 Domain Specific Lang...

3
49
发表了资讯
2016/01/28 00:00

Apache Camel 2.16.2 发布,开源规则引擎

Apache Camel 2.16.2 发布,该版本修复了超过 70 个 bug,详细记录请看发行说明。 Apache Camel 是一个非常强大的基于规则的路由以及媒介引擎,该引擎提供了一个基于POJO的 企业应用模式(Enterprise Integration Patterns)的实现,你可以采用其异常强大且十分易用的API (可以说是一种Java的领域定义语言 Domain Specific Language)来配置其路由或者中介的规则。 通过这种领域定义语言,你可以在你的IDE中用简单的Java Code就可以...

0
31
发表了资讯
2015/12/01 00:00

Apache Camel 2.15.5 发布,规则引擎

Apache Camel 2.15.5 发布,此版本更新内容如下: Bug 修复 [CAMEL-9161] - Camel spring-boot not finding routes when using spring-cloud [CAMEL-9202] - Flatpack: Body reader never closed [CAMEL-9233] - ZipFileDataFormat doesn't take exchange's charset into account [CAMEL-9236] - Tokenize with regex grouping has a small bug [CAMEL-9238] - NPE while GenericFile.changeFileName [CAMEL-9243] - Invocatio...

2
23
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
发表了问答
2014/03/19 20:38

请问apache camel如何实现webservice的转发?

@滄海一夢 你好,想跟你请教个问题:你好,我想实现一个webservice转发,不知道apache camel能否实现? 访问流程大概是这样的:客户端发起一个webservice请求到服务器A,A得到请求后,A向B服务器请求真实的webservice请求,最后通过A将数据返回给客户 。A服务器相当于实现一个对webservice的代理 谢谢。。。

20
3
发表了问答
2015/09/06 10:01

请问camel中的 routingSlip 和 recipientList 有什么区别?

@滄海一夢 你好,想跟你请教个问题: 看到你在OSC上回答了很多关于camel的问题,感觉你很强大。 想问你一下 请问camel中的 routingSlip 和 recipientList 有什么区别? <route>   <from uri="direct:a" />   <recipientList delimiter="," ignoreInvalidEndpoints="true">     <header>myHeader</header>   </recipientList> </route> <route>   <from uri="direct:a" />   <routingSlip uriDelimiter="," ignoreInvalidEndpoints="tr...

5
0
发表了问答
2016/01/05 17:17

业务规则引擎,大家都用哪一个呢

业务规则引擎,大家都用哪一个呢? Drools、Camel、JRules 或者其他...大家都在用什么呢?

4
0
发表了问答
2015/08/14 10:12

关于用camel调用web service的问题?

<cxf:cxfEndpoint id="cxf-to" address="http://10.4.18.4:8021/ICheck/checkInfo" serviceClass="com.xxx.xxx.IXxxx"> </cxf:cxfEndpoint> <route id="count"> <from uri="timer://foo?fixedRate=true&period=100000" /> <setHeader headerName="operationName"> <simple>checkLength</simple> </setHeader> <setBody> <simple>2555555</simple> </setBody> <to uri="cxf-to" /> </route> 这是配置用camel调用web service...

1
0
发表了问答
2013/09/23 14:33

apache camel 如何调用webservice

公司项目在实际运行环境中会调用其他厂家的webservice,来导入数据。各个地方提供数据源的厂家不同,使用的webservie框架也肯定各不相同(axis2,cxf等都遇到过)。 公司最近准备做技术整合,想用apache camel做ESB来整合项目资源。看了几天camel的官网文档,只看到如何用camel做webservice,不知道如何来做客户端调用其他厂家的webservice,希望做过的大神给点思路。...

19
3
发表了问答
2015/06/03 21:02

apache camel日志问题

最近在做一个ftp文件同步功能。要记录同步的日志,但是camel的from().to().log(${file:path})即使加上fileExists=Ignored,仍然会在每次开启的时候,输出所有已经同步过的文件日志。 请问有什么办法可以只输出同步的文件日志。

2
0
发表了问答
2015/09/18 11:35

blueprint里面如何获取整个容器里面的所有camelContext

如何拿到整个blueprint容器(karaf)的所有(所有bundle的)camelContext BlueprintContainer.getComponentIds()这个拿不到其他bundle的camelContext, 只能拿到自己bundle的所有camelContext PS : 比如说:我向karaf的deploy目录仍了一个blueprint-restlet-config.xml 内容如下 <?xml version="1.0" encoding="UTF-8"?> <blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" xmlns:camel-cxf="http://ca...

5
0
发表了问答
2015/11/14 22:18

camel的rest组件如何配置ssl

@滄海一夢 你好,想跟你请教个问题: <restConfiguration component="restlet" contextPath="/" port="7722" scheme="https" /> <rest>   <get uri="/admin">     <to uri="direct:aaa" />   </get> </rest> 我配置了scheme为https,但是,没有找到在哪里配置证书(证书已经准备好了) 请问,接下来怎么做?...

1
0
发表了问答
2014/12/11 09:35

apache camel怎么实现http转soap?

apache camel怎么实现http转soap?就是webservice服务转成普通http服务?

4
0
发表了问答
2014/12/24 10:51

camel怎么调用webservice?

camel怎么调用webservice?

2
0
发表了问答
2015/09/17 13:30

camel-http4无法忽略https证书调用

camel的配置如下: <bean id="sslConfig" class="com.pp.bean.SSLHttpClientConfigurer" /> <route>   <from uri="direct://start-http" />   <setHeader headerName="CamelHttpMethod">     <constant>POST</constant>   </setHeader>   <setHeader headerName="CamelHttpUri">     <constant>https://www.xxxxx.com/api/v1/rest.do</constant>   </setHeader>   <setProperty propertyName="CamelCharsetName">     <constant>UTF-8</co...

4
0
发表了问答
2015/09/16 09:06

camel中的restConfiguration、camel-cxf:cxfEndpoint如何抽取出来

@滄海一夢 你好,想跟你请教个问题: 现在blueprint.xml里面都有如下的配置 <camel-cxf:cxfEndpoint id="webserviceEndpoint"   address="http://0.0.0.0:9909/soa/product/service"   serviceClass="com.qq.mall.api.ProductService"   bindingId="http://www.w3.org/2003/05/soap/bindings/HTTP/">   <camel-cxf:properties>     <entry key="dataFormat" value="POJO" />   </camel-cxf:properties> </camel-cxf:cxfEndpoint> <ca...

3
0
发表了问答
2015/09/06 17:20

Camel中的dynamicRouter为啥会死循环执行method的方法?

<bean id="bean1" class="com.pp.bean.Bean1" /> <bean id="methodSlip" class="com.pp.bean.MethodSlip" /> <route autoStartup="true">   <from uri="direct:dynamicRouter" />   <dynamicRouter uriDelimiter=",">     <method ref="methodSlip" method="slip" />   </dynamicRouter> </route> package com.pp.bean; import java.util.Map; import org.apache.camel.Headers; public class MethodSlip {   public String slip(@H...

6
0
发表了问答
2015/09/05 21:45

Apache Camel中的multicast,没什么效果?

<from uri="direct:multicast" /> <multicast> <to uri="direct:s1" /> <to uri="direct:s2" /> <to uri="direct:s3" /> </multicast> 和 <from uri="direct:multicast" /> <to uri="direct:s1" /> <to uri="direct:s2" /> <to uri="direct:s3" /> 感觉是一样的,既然如此,multicast是干啥的?...

4
0
发表了问答
2014/09/25 17:49

Apache camel 如何通过dsl做到根据exchange中的body去判断调用哪几个route

Apache camel 如何通过dsl做到根据exchange中的body去判断调用哪几个route

2
0
发表了问答
2015/07/30 18:05

camel中的direct是干什么的?

官方的解释是: The direct: component provides direct, synchronous invocation of any consumers when a producer sends a message exchange. This endpoint can be used to connect existing routes in the same camel context. 但是,看不懂 官方网站上有这么个例子: from("direct:start").to("mock:result"); 请问,什么意思? 这里的start是干啥的,整个又是什么意思?...

1
0
发表了问答
2015/07/27 22:18

Camel中的direct,vm这两个Component是干啥的?

from("direct:foo").to("vm:bar"); from一般代表从哪里来, to代表到哪里去 那么请问,这里的direct,vm是什么意思?

1
0
发表了问答
2015/04/28 09:25

springMVC 整合camel-ftp启动时报错

我的代码在 https://github.com/winfan/springMVC-camel-ftp org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [classpath*:spring-core.xml] Offending resource: ServletContext resource [/WEB-INF/spring-servlet.xml]; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingExce...

2
1
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
5 评论
363 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部