问题标签 [spring-camel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
572 浏览

java - 没有找到带有方案的组件:mongodb

我有这样的代码:

配置:

我也有依赖:

它产生跟踪:

我做错了什么以及如何解决?

附言

应用程序也打印到日志:

0 投票
2 回答
307 浏览

apache-camel - 在 Camel 中一个 SOAP 调用需要多少时间

目前我们使用 Apache Camel(带有 Spring Boot)作为集成平台。我们有多个后端系统要集成。大多数情况下,我们使用 Apache CXF 和 CXF RS 来调用这些系统。

我们想记录我们等待后端系统的时间,以及我们的应用程序带来了多少开销。

我们创建了一个EventNotifierSupportbean,我们可以在其中记录以下内容:

  • ExchangeCreatedEventExchangeCompletedEvent事件之间的时间。我认为这是处理请求所需的全部时间。(全职作为我们的开销和后端系统的时间)

  • 我可以记录˙通知的timeTaken属性ExchangeSentEvent

我对后者有问题。在高负载下,我们的应用程序需要花费大量时间来处理 SOAP 响应,并且该时间包含在timeTaken属性中。

衡量我们等待后端系统时间的正确骆驼方法是什么?

0 投票
2 回答
530 浏览

spring-boot - Spock 与 Spring Boot 和 Camel:与分离模拟的零交互

我在使用 spring boot 测试我的骆驼上下文时遇到了一些问题。

我正在使用 spring boot 1.5.6、spock 1.1-groovy-2.4、camel 2.19.2 和 camel-spring-boot-starter 2.19.2。

我正在使用 spock 模拟,并且我DetachedMockFactory@TestConfiguration课堂上使用。我所有的 bean 都使用构造函数注入。我将一个模拟@Repository注入到其中一个处理器@Component中,我还将它注入到我的测试类中以定义交互。

我的测试用@SpringBootTest包括所有Processor实现和所有RouteBuilder扩展的类列表进行了注释。我的TestConfiguration班级也有一个“@Import”。我什至在我的测试中为这个存储库 bean 使用构造函数注入!

但似乎注入测试类的模拟不是正在使用的模拟。有谁知道可能出了什么问题?我试图@DirtiesContext在每次测试之前和之后重新加载上下文,但这没有帮助。

0 投票
1 回答
203 浏览

java - 发生异常时如何防止骆驼从 sftp 重新传递文件

我有以下骆驼配置:

此代码在无限循环中工作并尝试处理相同的文件。

是否可以配置骆驼只是忽略异常?

附言

我也试过

但结果相同

附言

我只想要与此代码提供的行为相同的行为:

0 投票
1 回答
41 浏览

java - 在多个 from 语句的情况下,camel 是否允许理解以前的(源)pipileine?

骆驼路线:

是否可以理解内部process方法 - 是从 REST_FILES 还是从 FTP_FILES 获得的交换?

0 投票
1 回答
35 浏览

java - 如何跟踪骆驼管道之间遗漏的消息?

我有 2 条路线:

第一的:

第二:

但是如果我尝试重复传输相同的文件,camel 不会路由文件。

如果文件没有传递到下一个管道,我想要一个位置(例如回调)。我怎样才能实现它?

附言

我试着写:

但它不会调用

0 投票
1 回答
3700 浏览

java - 如何遍历apache骆驼路由,xml中的arraylist?

我想通过 bean 遍历作为消息头传递给骆驼路由的 java 数组列表,以便每个基本上是 url 的字符串项都可以作为 uri 参数在骆驼路由的标签内传递。

我通过java bean将数组列表作为消息头传递给骆驼路由,如下所示

并且,在骆驼路线中,我想遍历这个列表并一个一个地检索每个列表项,以便我可以在 uri 中传递这些项目。这是我的骆驼路线:

但是我无法遍历在骆驼路线中作为 header.endpoints 接收的列表中的每个项目。

0 投票
2 回答
459 浏览

apache-camel - 如何在camel exec uri中传递+号

我正在使用带有 spring xml 的 Camel。当我尝试通过骆驼的 exec-component 调用 find 时,会出现一些问题来获得正确的参数。

我想调用 'find /somepath/ -mtime +10'

我的骆驼路线有这个元素。

在日志中我得到

我们可以看到 + 号被删除并且 find 命令将由于缺少 + 而失败。我尝试了不同的方法来逃避或编码 + 没有成功。任何人都知道保护 +sign 的方法吗?

0 投票
0 回答
490 浏览

java - 无法通过 Camel 将日期字段保存为 mongo db 中的 ISO 日期(原因:java.lang.IllegalArgumentException:无效的 BSON 字段名称 $date)

我有这样的pojo:

在一些代码库中,我有以下代码:

但是当我在数据库中打开集合时,我看到这样的日期字段:

但我想存储 mongoDB 可识别的常用 ISO 日期。它应该是这样的:

我是如何尝试解决这个问题的?

我读了这个话题

因此,我创建了一个自定义序列化程序:

并正确注册:

但它抛出异常:

然后我需要写:

但看起来producerTemplate没有合适的 API。

0 投票
0 回答
958 浏览

java - 无法通过骆驼将日期字段保存为 mongo db 中的 ISO 日期?

我有这样的pojo:

在一些代码库中,我有以下代码:

但是当我在数据库中打开集合时,我看到这样的日期字段:

但我想存储 mongoDB 可识别的常用 ISO 日期。它应该是这样的:

我是如何尝试解决这个问题的?

1:
我读了这个话题

因此,我创建了一个自定义序列化程序:

并正确注册:

但它抛出异常:

然后我需要写:

但看起来producerTemplate没有合适的 API。

好的,我了解异常的原因。@Neil Lunn说是因为名字以-reserved 开头$

2.

我创建了一个主题无法通过 Camel 将日期字段保存为 mongo db 中的 ISO 日期(原因:java.lang.IllegalArgumentException:无效的 BSON 字段名称 $date)

根据@Neil Lunn的建议,我试图做

a) 模型中的返回日期:

它导致将日期保存为 NumberLong

b) 尝试在序列化程序中更改$datemyDate但它导致将日期保存为通常的字符串

ñ)

我还尝试根据@Neil Lunn advic 在上一个问题中更改序列化程序中的日期格式:

但它仍然不起作用,我看到:

在 mongo-shell 中

请帮助解决这个问题?

附言

当我使用 spring-data - 日期存储时,现在没有额外的动作