apache-camel 相关问题

Apache Camel是一个功能强大的开源集成框架,基于已知的企业集成模式和强大的Bean集成

骆驼分裂机加工顺序

如果我在camel中拆分List时不指定parallelProcessing(),Camel会按顺序处理项目吗?

回答 2 投票 0

当deleteAfterRead为假时,幂等Camel AWS2-S3消费者无法从存储桶中检索所有文件

我将 Camel AWS2-S3 与基于 MemoryIdempotRepository 的幂等消费者一起使用,并尝试使用 Camel AWS2-S3 版本 3.14.2 读取 AWS/S3 存储桶中的所有文件。目的是保持...

回答 2 投票 0

Apache Camel - 如何在 split(body()).streaming().aggregate 之后使用丰富()?

Camel 3.21 & String Boot 2.7.15 公共无效配置()抛出异常{ AggregationStrategy arrayListStrategy = AggregationStrategies.flexible(Document.class) .

回答 1 投票 0

Apache Camel Springboot 测试:AssertionError:mock://checks 收到的消息计数。预期:<1> 但实际是:<0>

我在 Spring Boot 应用程序中有以下路线 @Slf4j @成分 公共类 LogRoute 扩展 RouteBuilder { @覆盖 公共无效配置(){ 来自(“直接:log&q...

回答 1 投票 0

如何将 Camel ConvertBodyTo 与列表一起使用

我有一个类型 A 的列表,我想将其转换为类型 B 的列表。 让我们想象一下: // ...调用数据库并获取映射到列表的几行 .to("jdbc:...") .convertBodyTo(L...

回答 1 投票 0

OpenApi 与 apache camel-cxfrs 集成

我想根据我的 cxf 服务生成 openApi 文档。 我使用了以下资源: https://cxf.apache.org/docs/openapifeature.html 当我在不使用camel-cxfrs的情况下启动服务时 -

回答 1 投票 0

不能在同一个测试类中两次建议同一个端点

我有一个测试类,它有一个 String isMockEndpointsAndSkip() { return ("*") } 用于测试一些东西,这使得其他类抱怨以下异常 java.lang。

回答 1 投票 0

Camel 和 JMS 组件与 IBM MQ 的使用

为我关于使用 Camel 和 JMS 组件的问题设置上下文: • 目前面向消息中间件支持的Camel 组件有ActiveMQ、AMQ 和JMS。 •

回答 1 投票 0

使用camel上传ftp文件

我正在尝试使用camel通过ftp上传文件。我的代码如下 公共静态无效主(字符串... args)抛出异常{ CamelContext 上下文 = new DefaultCamelContext(); 上下文。

回答 1 投票 0

java.lang.IllegalArgumentException:组件netty不是RestConsumerFactory

我正在尝试使用netty组件,但我遇到了以下错误。我也尝试了jeety。但它不起作用。我使用camel 3.21.0,java版本是17。任何帮助都是有用的。 其余配置定义

回答 1 投票 0

尝试使用 Apache Camel“Vault”函数访问名称中包含“/”的 AWS 密钥

我正在使用 Apache Camel 功能从 AWS Secrets Manager 加载密钥: https://camel.apache.org/blog/2022/03/secrets-properties-functions/ 只要我使用没有...的测试秘密,这就有效。

回答 0 投票 0

Apache Camel ConsumerCount - 它是如何工作的?

根据文档,“连接到 kafka 服务器的消费者数量。每个消费者都在单独的线程上运行,用于检索和处理传入数据”。 所以如果我有 5 个 kafka 分区...

回答 1 投票 0

为什么Quartz找不到CamelContext?

我有一个使用 Camel 和 Quartz 的简单 Springboot 应用程序: org.springframework.boot spring-boot-starter-parent 我有一个简单的 Springboot 应用程序,使用 Camel 和 Quartz: <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.14</version> <relativePath/> <!-- lookup parent from repository --> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-quartz</artifactId> </dependency> <dependency> <groupId>org.apache.camel.springboot</groupId> <artifactId>camel-spring-boot-starter</artifactId> <version>3.20.6</version> </dependency> <dependency> <groupId>org.apache.camel.springboot</groupId> <artifactId>camel-quartz-starter</artifactId> <version>3.20.6</version> </dependency> <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> <scope>runtime</scope> </dependency> </dependencies> 我建立了与数据库的连接: spring.datasource.url=jdbc:postgresql://localhost:5432/schedule_module spring.datasource.username=postgres spring.datasource.password=1111 spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect spring.jpa.hibernate.ddl-auto=update spring.quartz.job-store-type=jdbc spring.quartz.properties.org.quartz.jobStore.driverDelegateClass=org.quartz.impl.jdbcjobstore.PostgreSQLDelegate spring.quartz.properties.org.quartz.jobStore.tablePrefix=qrtz_ spring.quartz.properties.org.quartz.jobStore.isClustered=true 并写出了最简单的路线: import org.apache.camel.builder.RouteBuilder; import org.springframework.stereotype.Component; @Component public class SimpleRouter extends RouteBuilder { @Override public void configure() throws Exception { from("quartz://simpleRouterScheduler?trigger.repeatInterval=5000") .routeId("SimpleRouter") .log("SimpleRouter Hello"); } } 首次启动应用程序时,将启动路线并将其时间表存储在数据库中: 2023-07-31 10:49:08.940 INFO 4744 --- [ main] r.s.n.p.s.ScheduleApp03Application : Starting ScheduleApp03Application using Java 17.0.6 on DESKTOP-6SHGJTA with PID 4744 (C:\work\dev\testsapps\camel\schedule-app03\target\classes started by baa in C:\work\dev\testsapps\camel\schedule-app03) 2023-07-31 10:49:08.942 INFO 4744 --- [ main] r.s.n.p.s.ScheduleApp03Application : No active profile set, falling back to 1 default profile: "default" 2023-07-31 10:49:10.309 INFO 4744 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2023-07-31 10:49:10.468 INFO 4744 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2023-07-31 10:49:10.498 INFO 4744 --- [ main] o.f.c.internal.license.VersionPrinter : Flyway Community Edition 7.15.0 by Redgate 2023-07-31 10:49:10.499 INFO 4744 --- [ main] o.f.c.i.database.base.BaseDatabaseType : Database: jdbc:postgresql://localhost:5432/schedule_module01 (PostgreSQL 9.6) 2023-07-31 10:49:10.536 INFO 4744 --- [ main] o.f.core.internal.command.DbValidate : Successfully validated 2 migrations (execution time 00:00.015s) 2023-07-31 10:49:10.549 INFO 4744 --- [ main] o.f.c.i.s.JdbcTableSchemaHistory : Creating Schema History table "public"."flyway_schema_history" ... 2023-07-31 10:49:10.584 INFO 4744 --- [ main] o.f.core.internal.command.DbMigrate : Current version of schema "public": << Empty Schema >> 2023-07-31 10:49:10.603 INFO 4744 --- [ main] o.f.core.internal.command.DbMigrate : Migrating schema "public" to version "1 - Init DB" 2023-07-31 10:49:10.768 INFO 4744 --- [ main] o.f.core.internal.command.DbMigrate : Migrating schema "public" to version "2 - Insert DB" 2023-07-31 10:49:10.774 INFO 4744 --- [ main] o.f.core.internal.command.DbMigrate : Successfully applied 2 migrations to schema "public", now at version v2 (execution time 00:00.194s) 2023-07-31 10:49:10.889 INFO 4744 --- [ main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor 2023-07-31 10:49:10.905 INFO 4744 --- [ main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl 2023-07-31 10:49:10.905 INFO 4744 --- [ main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created. 2023-07-31 10:49:10.908 INFO 4744 --- [ main] o.s.s.quartz.LocalDataSourceJobStore : Using db table-based data access locking (synchronization). 2023-07-31 10:49:10.910 INFO 4744 --- [ main] o.s.s.quartz.LocalDataSourceJobStore : JobStoreCMT initialized. 2023-07-31 10:49:10.911 INFO 4744 --- [ main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. NOT STARTED. Currently in standby mode. Number of jobs executed: 0 Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. Using job-store 'org.springframework.scheduling.quartz.LocalDataSourceJobStore' - which supports persistence. and is clustered. 2023-07-31 10:49:10.911 INFO 4744 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. 2023-07-31 10:49:10.911 INFO 4744 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2 2023-07-31 10:49:10.911 INFO 4744 --- [ main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@55f4887d 2023-07-31 10:49:10.961 INFO 4744 --- [ main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now 2023-07-31 10:49:10.982 INFO 4744 --- [ main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started. 2023-07-31 10:49:11.136 INFO 4744 --- [ main] .c.i.e.DefaultAutowiredLifecycleStrategy : Autowired property: scheduler on component: quartz as exactly one instance of type: org.quartz.Scheduler (org.quartz.impl.StdScheduler) found in the registry 2023-07-31 10:49:11.186 INFO 4744 --- [ main] o.a.c.impl.engine.AbstractCamelContext : Apache Camel 3.20.6 (camel-1) is starting 2023-07-31 10:49:11.225 INFO 4744 --- [ main] o.a.c.component.quartz.QuartzEndpoint : Job Camel_camel-1.simpleRouterScheduler (cron=null, triggerType=SimpleTriggerImpl, jobClass=CamelJob) is scheduled. Next fire date is 2023-07-31T10:49:11.693+0300 2023-07-31 10:49:11.237 INFO 4744 --- [ main] o.a.c.impl.engine.AbstractCamelContext : Routes startup (started:1) 2023-07-31 10:49:11.237 INFO 4744 --- [ main] o.a.c.impl.engine.AbstractCamelContext : Started SimpleRouter (quartz://simpleRouterScheduler) 2023-07-31 10:49:11.237 INFO 4744 --- [ main] o.a.c.impl.engine.AbstractCamelContext : Apache Camel 3.20.6 (camel-1) started in 242ms (build:51ms init:141ms start:50ms) 2023-07-31 10:49:11.240 INFO 4744 --- [ main] o.a.c.component.quartz.QuartzComponent : The Quartz scheduler: org.quartz.impl.StdScheduler@315c081 has already been started 2023-07-31 10:49:11.244 INFO 4744 --- [ main] r.s.n.p.s.ScheduleApp03Application : Started ScheduleApp03Application in 2.641 seconds (JVM running for 2.994) 2023-07-31 10:49:11.709 INFO 4744 --- [eduler_Worker-1] SimpleRouter : SimpleRouter Hello 2023-07-31 10:49:16.698 INFO 4744 --- [eduler_Worker-2] SimpleRouter : SimpleRouter Hello 2023-07-31 10:49:21.700 INFO 4744 --- [eduler_Worker-3] SimpleRouter : SimpleRouter Hello 但是当我停止应用程序并重新启动它时,我收到以下消息: 2023-07-31 10:51:04.883 INFO 21732 --- [ main] r.s.n.p.s.ScheduleApp03Application : Starting ScheduleApp03Application using Java 17.0.6 on DESKTOP-6SHGJTA with PID 21732 (C:\work\dev\testsapps\camel\schedule-app03\target\classes started by baa in C:\work\dev\testsapps\camel\schedule-app03) 2023-07-31 10:51:04.885 INFO 21732 --- [ main] r.s.n.p.s.ScheduleApp03Application : No active profile set, falling back to 1 default profile: "default" 2023-07-31 10:51:06.040 INFO 21732 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... 2023-07-31 10:51:06.168 INFO 21732 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed. 2023-07-31 10:51:06.209 INFO 21732 --- [ main] o.f.c.internal.license.VersionPrinter : Flyway Community Edition 7.15.0 by Redgate 2023-07-31 10:51:06.210 INFO 21732 --- [ main] o.f.c.i.database.base.BaseDatabaseType : Database: jdbc:postgresql://localhost:5432/schedule_module01 (PostgreSQL 9.6) 2023-07-31 10:51:06.251 INFO 21732 --- [ main] o.f.core.internal.command.DbValidate : Successfully validated 2 migrations (execution time 00:00.022s) 2023-07-31 10:51:06.260 INFO 21732 --- [ main] o.f.core.internal.command.DbMigrate : Current version of schema "public": 2 2023-07-31 10:51:06.261 INFO 21732 --- [ main] o.f.core.internal.command.DbMigrate : Schema "public" is up to date. No migration necessary. 2023-07-31 10:51:06.375 INFO 21732 --- [ main] org.quartz.impl.StdSchedulerFactory : Using default implementation for ThreadExecutor 2023-07-31 10:51:06.385 INFO 21732 --- [ main] org.quartz.core.SchedulerSignalerImpl : Initialized Scheduler Signaller of type: class org.quartz.core.SchedulerSignalerImpl 2023-07-31 10:51:06.385 INFO 21732 --- [ main] org.quartz.core.QuartzScheduler : Quartz Scheduler v.2.3.2 created. 2023-07-31 10:51:06.388 INFO 21732 --- [ main] o.s.s.quartz.LocalDataSourceJobStore : Using db table-based data access locking (synchronization). 2023-07-31 10:51:06.391 INFO 21732 --- [ main] o.s.s.quartz.LocalDataSourceJobStore : JobStoreCMT initialized. 2023-07-31 10:51:06.392 INFO 21732 --- [ main] org.quartz.core.QuartzScheduler : Scheduler meta-data: Quartz Scheduler (v2.3.2) 'quartzScheduler' with instanceId 'NON_CLUSTERED' Scheduler class: 'org.quartz.core.QuartzScheduler' - running locally. NOT STARTED. Currently in standby mode. Number of jobs executed: 0 Using thread pool 'org.quartz.simpl.SimpleThreadPool' - with 10 threads. Using job-store 'org.springframework.scheduling.quartz.LocalDataSourceJobStore' - which supports persistence. and is clustered. 2023-07-31 10:51:06.392 INFO 21732 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler 'quartzScheduler' initialized from an externally provided properties instance. 2023-07-31 10:51:06.392 INFO 21732 --- [ main] org.quartz.impl.StdSchedulerFactory : Quartz scheduler version: 2.3.2 2023-07-31 10:51:06.393 INFO 21732 --- [ main] org.quartz.core.QuartzScheduler : JobFactory set to: org.springframework.scheduling.quartz.SpringBeanJobFactory@93824eb 2023-07-31 10:51:06.433 INFO 21732 --- [ main] o.s.s.quartz.SchedulerFactoryBean : Starting Quartz Scheduler now 2023-07-31 10:51:06.450 INFO 21732 --- [ main] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: detected 1 failed or restarted instances. 2023-07-31 10:51:06.451 INFO 21732 --- [ main] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: Scanning for instance "NON_CLUSTERED"'s failed in-progress jobs. 2023-07-31 10:51:06.458 INFO 21732 --- [ main] o.s.s.quartz.LocalDataSourceJobStore : ClusterManager: ......Freed 1 acquired trigger(s). 2023-07-31 10:51:06.459 INFO 21732 --- [ main] org.quartz.core.QuartzScheduler : Scheduler quartzScheduler_$_NON_CLUSTERED started. 2023-07-31 10:51:06.530 ERROR 21732 --- [eduler_Worker-1] o.a.camel.component.quartz.CamelJob : Failed to execute CamelJob. org.quartz.JobExecutionException: No CamelContext could be found with name: camel-1 at org.apache.camel.component.quartz.CamelJob.getCamelContext(CamelJob.java:103) ~[camel-quartz-3.20.6.jar:3.20.6] at org.apache.camel.component.quartz.CamelJob.execute(CamelJob.java:60) ~[camel-quartz-3.20.6.jar:3.20.6] at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[quartz-2.3.2.jar:na] at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) ~[quartz-2.3.2.jar:na] 2023-07-31 10:51:06.531 INFO 21732 --- [eduler_Worker-1] org.quartz.core.JobRunShell : Job Camel_camel-1.simpleRouterScheduler threw a JobExecutionException: org.quartz.JobExecutionException: No CamelContext could be found with name: camel-1 at org.apache.camel.component.quartz.CamelJob.getCamelContext(CamelJob.java:103) ~[camel-quartz-3.20.6.jar:3.20.6] at org.apache.camel.component.quartz.CamelJob.execute(CamelJob.java:60) ~[camel-quartz-3.20.6.jar:3.20.6] at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[quartz-2.3.2.jar:na] at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) ~[quartz-2.3.2.jar:na] 2023-07-31 10:51:06.615 INFO 21732 --- [ main] .c.i.e.DefaultAutowiredLifecycleStrategy : Autowired property: scheduler on component: quartz as exactly one instance of type: org.quartz.Scheduler (org.quartz.impl.StdScheduler) found in the registry 2023-07-31 10:51:06.654 INFO 21732 --- [ main] o.a.c.impl.engine.AbstractCamelContext : Apache Camel 3.20.6 (camel-1) is starting 2023-07-31 10:51:06.663 INFO 21732 --- [ main] o.a.c.component.quartz.QuartzEndpoint : Job Camel_camel-1.simpleRouterScheduler (cron=null, triggerType=SimpleTriggerImpl, jobClass=CamelJob) is scheduled. Next fire date is null 2023-07-31 10:51:06.672 INFO 21732 --- [ main] o.a.c.impl.engine.AbstractCamelContext : Routes startup (started:1) 2023-07-31 10:51:06.672 INFO 21732 --- [ main] o.a.c.impl.engine.AbstractCamelContext : Started SimpleRouter (quartz://simpleRouterScheduler) 2023-07-31 10:51:06.672 INFO 21732 --- [ main] o.a.c.impl.engine.AbstractCamelContext : Apache Camel 3.20.6 (camel-1) started in 192ms (build:39ms init:136ms start:17ms) 2023-07-31 10:51:06.673 INFO 21732 --- [ main] o.a.c.component.quartz.QuartzComponent : The Quartz scheduler: org.quartz.impl.StdScheduler@7e8279e5 has already been started 2023-07-31 10:51:06.677 INFO 21732 --- [ main] r.s.n.p.s.ScheduleApp03Application : Started ScheduleApp03Application in 2.087 seconds (JVM running for 2.392) 2023-07-31 10:51:06.705 INFO 21732 --- [eduler_Worker-4] SimpleRouter : SimpleRouter Hello 2023-07-31 10:51:11.699 INFO 21732 --- [eduler_Worker-5] SimpleRouter : SimpleRouter Hello 2023-07-31 10:51:16.704 INFO 21732 --- [eduler_Worker-6] SimpleRouter : SimpleRouter Hello 我是否正确理解,Quartz找不到它第一次收到有关路线及其时间表的数据的CamelContext? 如何设置 Camel,以便 Camel 和 Quartz 每次启动时都能协商相同的上下文? 原因是spring-boot-starter-quartz默认启动调度程序。它在配置 Camel 的 Quartz 组件并将 CamelContext 传递到调度程序实例上下文之前执行此操作。 我没有发现文档中明确提到这一点,但问题是你应该让 Camel 控制调度程序的生命周期。为了实现这一点,请通过设置以下属性来禁用调度程序的自动启动 spring: quartz: auto-startup: false

回答 1 投票 0

模拟路线端点时断言不满足,最终调用真实的端点

我定义了以下路线: 来自(直接(路由.SEND_EMAIL_BOP_SINGLE_PER_USER)) .routeId(路由.SEND_EMAIL_BOP_SINGLE_PER_USER) // 将用户名拆分到各个交易所...

回答 1 投票 0

使用Camel通过IMAP协议连接outlook.office365.com

我正在尝试使用 Apache Camel 连接到 Outlook.office365.com。我正在遵循骆驼组件“Mail Microsoft Oauth”的说明 在Azure方面,我创建了“应用程序注册&qu...

回答 1 投票 0

如何在 Apache Camel 框架中检索 multipart/form-data 请求正文的各个部分?

我在 Apache Camel 框架中定义了以下 RouteBuilder: @RequiredArgsConstructor @成分 公共类 FilesRouteBuilder 扩展 RouteBuilder { @覆盖 公共无效配置...

回答 1 投票 0

Json 字符串拆分并使用 Camel 中的 XML DSL 在正文中添加附加对象

在我的一个用例中,我需要根据消息中可用的数组列表将入站 json 消息拆分为多个消息。 例如,在下面的消息中,要采取的拆分...

回答 2 投票 0

使用 LRA 协调器的 Spring Boot Camel saga 实现返回连接被拒绝

我正在尝试为我的 Spring Boot 应用程序实现 Apache Camel Saga EPI,并使用外部 LRA 协调器(在 docker 中使用 Narayana )。 虽然我能够验证 LRA 协调员正在工作......

回答 1 投票 0

Quarkus 与骆驼和 TIBCO EMS

我想使用 Apache Camel 和 TIBCO EMS 构建 quarkus 应用程序。但是,当我尝试为 TIBCO EMS 8.4 版创建连接工厂时,它似乎与我的问题不兼容...

回答 1 投票 0

无法使用 Camel 路由从外部 Artemis 服务器接收 JMS 消息,使用 JMS 组件参数并发消费者超过一个

JBoss EAP 7.4.2 中尝试同时从外部 Artemis 服务器接收 JMS 消息的 Camel 路由设置失败,并显示以下警告。 2023-xx-xx 16:04:37,066 GMT 警告 [org.apache....

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.