我是Camel的新手,并试图学习习语和最佳实践.我正在编写需要处理几种不同错误情况的Web服务.这是我的错误处理和路由: onException(JsonParseException.class).inOut("direct:syntaxError").handled(true); onException(UnrecognizedPropertyException.class).inOut("direct:syntaxE
我有一个时髦的剧本,我正试着去;它的工作是读取一个消息队列,然后将消息重新排队到我们正在运行的一组新MQ中. 这是代码: @Grab(group='org.apache.camel', module='camel-core', version='2.11.0') @Grab(group='org.apache.activemq', module='activemq-core', version='
我想在我的路线中计算步骤的时间.我正在寻找使用驼峰AOP启动计时器,运行步骤,停止并记录计时器.但是AOP现在已被弃用了,我看过使用拦截机制,但它之前只添加了“建议”,我之后也需要它.有干净的方法吗?解决方法:你在这里有很多选择,包括追求你最初的想法 1)你可以很容易地挂钩到Camel
我正在使用Camel 2.15.2,Spring 4.1.7.RELEASE,CXF 3.0.4,Junit 4.12. 当我运行以下测试时,加载Spring应用程序上下文失败: @RunWith(CamelSpringJUnit4ClassRunner.class) @BootstrapWith(CamelTestContextBootstrapper.class) @ContextConfiguration(locations= {
我创建了这个Camel路线 from("direct:pageExtraction") .bean(PageManager.class, "setProperties(*, ${headers})") .filter().method(PageManager.class, "exists").to("seda:pagePostProcessing").end()
我正在为HTTP组件的正确设置遇到一些麻烦.目前,微服务从提供商处提取JSON内容,处理它并将其发送到下一个服务以进行进一步处理.主要问题是这个微服务创建了大量的CLOSE_WAIT套接字连接.我知道“KEEP-ALIVE”的整个概念应保持连接打开,直到我关闭它,但服务器可能会因某些原因丢弃连
我们正在考虑使用事件驱动架构(EDA)集成一些粗粒度业务服务,并且这些服务(REST)的服务器端在Java和.NET(C#)中实现.我们最初想到使用RabbitMQ(和AMQP协议)作为中立和开放的手段(在这两种语言中具有良好的客户端支持),但它意味着必须支持另一个运行时(Erlang)以及Java和CLR.我们也在
这是使用Camel 2.5.0 路线很简单.起点是一个码头://…/web/service/path,路由的结尾是http://real-webservice-host/web/service/path.我遇到的问题是,当远程Web服务被调用时,它不会被调用正确. 具体来说,当我在http组件上使用bridgeEndpoint = true选项时,不会设置Content-Type标头
我在一个带有spring camel上下文,一个路由和一个测试的小项目上使用Fuse IDE(Eclipse).我添加了一个额外的xml来定义测试执行环境. 当我运行测试时,它失败,类型不匹配,加载上下文bean信息(当实例化bean上下文的PropertyDescriptor类时,setter类型是org.apache.camel.spring.SpringC
有没有办法在Camel上下文中添加onCompletion上下文范围的“处理程序”? Camel onCompletion documentation显示了如何使用Spring XML DSL完成它,我无法找到以编程方式执行此操作的方法.解决方法: // define a global on completion that is invoked when the exchange is complete o
我看到一些使用Spring和Apache Camel的非常简单的Java应用程序的奇怪行为. 我在我的应用程序上下文中定义了下面的spring bean: <camel:camelContext id="camelContext" xmlns="http://camel.apache.org/schema/spring"> <camel:endpoint id="incoming" uri="activemq
首先是一个类似的未回答的问题Joining routes into single aggregator 我们有一些消费者路线(ftp,file,smb)从远程系统读取文件. 简化为使用直接路由进行测试,但与批量使用者的行为类似: from("direct:"+routeId).id(routeId) .setProperty(AGGREGATION_PROPERTY, constant(routeI
我有一个Web应用程序,它将在MQ消息队列上启动消息(比如启动处理).我有一个使用Camel Spring DSL定义的消费者和生产者配置.我想从Web应用程序中推送消息,只有该会话和客户端才能获得响应.我可以使用jsessionid和其他一些随机消息ID来设置消息,以便只有该客户端才能获得响应吗? 例如.
我正在研究Java / Camel应用程序.我已经通过XML文件配置了camel,这导致了一个 <camelContext id="CamelContext" xmlns="http://camel.apache.org/schema/spring"> <proxy id="someProcessor" serviceInterface="some.Processor"
我必须每天在不同的固定时间执行/运行相同的任务.时间间隔不一样. 例如我想在05:30,11:30,15:00,21:00运行路由器. 我用调度程序,石英获得了很多apache camel示例.但所有都是静态时间间隔或只有一次可配置. 有没有办法在apache中配置驼峰?解决方法:尝试这样的事情: <route> <from uri=
我正在使用camel线程池并使用池大小和最大池大小.我的理解是每个请求都将由一个线程处理,如果请求>池大小,将使用最大池大小在池中创建新的一个线程.为了确保我的理解,我在POC之下做了. public class FileMoverRoute extends SpringRouteBuilder { @Override public void
我有一个授权服务器[Simple Class with @SpringBootApplication, @ RestController,@ Configuration,@ EnableAuthorizationServer& oauth2安全]在端口8081上运行,工作正常&使用POST方法从POSTMAN请求时提供访问令牌以及键值对形式的必要参数,http:// localhost:8080 / oauth / token
为了更好地理解ActiveMQ和Camel,我正在为事务回滚编写单元测试.它似乎不适合我,这意味着我做错了什么!这是代码: public class MyTest extends CamelTestSupport { @Override protected JndiRegistry createRegistry() throws Exception { JndiRegistry reg = super.createRegis
我是Apache Camel概念的新手.我曾尝试使用apache camel API编写示例代码 尝试运行代码时,我收到以下异常. 任何人都可以帮我解决这个问题吗? 这是示例代码和异常, 示例代码: CamelContext context = new DefaultCamelContext(); context.addRoutes(new RouteBuilder() { public
我在使用Hibernate的JPA实现的事务中遇到问题(我在Camel Tracer example之前) 我正在使用Hibernate JPA实现: <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <version>4.3.5.Final</version> <
我们有一个弹簧启动应用程序,由于集成需求而变得越来越复杂 – 比如在你执行此操作后发送电子邮件,或者在你之后播放jms消息等.在寻找更高级别的抽象时,我遇到了apache camel(避风港)从来没有使用过骆驼.我的问题是我如何处理spring boot应用程序?该应用程序具有标准弹簧控制器,服务
如何使用Java DSL和Main对象配置属性文件的使用? 根据this page,我应该可以这样称呼: main.setPropertyPlaceholderLocations("example.properties"); 然而,这根本行不通.似乎在Camel 2.18和我运行2.17.1之前没有添加选项. 让应用程序以独立形式运行时,设置属性文件的原始方法是什
我对Camel路线及其两个端点感到困惑:Direct和Seda.好吧,假设我有这样的路线: public void configure() { from("direct:services") .process(//Some processing here) .to("http://ThirdPartyServers") } 除此之外,我有一个休息Web服务,它接收几个请求,进行一些处理,然后将消
我正在我的项目中积极使用ActiveMQ.虽然生产使用独立的ActiveMQ实例,但我的测试需要嵌入式ActiveMQ实例.执行特定测试方法后,ActiveMQ在队列中保存未处理的消息.我想在每次测试后消灭ActiveMQ实例.我试图使用JMX连接到本地ActiveMQ实例并清除队列,但它是重量级的解决方案.谁能建议
每当我从文件URI启动Camel路由时,我看到Camel在文件上获得“锁定”.例如,如果文件名为myinput.xml,则Camel会在同一目录中创建一个名为myinput.xml.camelLock的“锁定文件”. >这是什么以及为什么Camel使用它? > Camel什么时候“释放”锁定文件(删除它)?>最重要的是,有没有办法将文件