java camel <from uri_apache-camel

我有一个骆驼应用程序,其计时器路由定义如下:

String timerURI = "timer:/MyApplication?period=5m";

我意识到URI语法可能不正确。 Apache Camel网站上显示的正确语法应为:

String timerURI = timer://MyApplication?period=5m";

但是,我注意到日志中有一些奇怪的行为。 在第一个实例中,我显示了骆驼将URI记录为:

(route1) from(timer:///MyApplication?period=5m) --> bean[com.mypackage.....]

在第二种情况下,日志显示为:

(route1) from(timer://MyApplication?period=5m) --> bean[com.mypackage.....]

我尝试了第三种选择

String timerURI = timer:MyApplication?period=5m";

它在日志中显示为:

(route1) from(timer://MyApplication?period=5m) --> bean[com.mypackage.....]

当我用单个/定义URI时,如在第一种情况下,我看到这样的异常:

org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: direct: due to: Expected scheme-specific part at index 7: direct:

at org.apache.camel.impl.DefaultCamelContext.normalizeEndpointUri(DefaultCamelContext.java:601)

at org.apache.camel.impl.DefaultCamelContext.getEndpoint(DefaultCamelContext.java:483)

at org.apache.camel.util.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:63)

at org.apache.camel.util.ExchangeHelper.resolveEndpoint(ExchangeHelper.java:88)

at org.apache.camel.processor.RecipientListProcessor.resolveEndpoint(RecipientListProcessor.java:223)

at org.apache.camel.processor.RecipientListProcessor.createProcessorExchangePairs(RecipientListProcessor.java:163)

at org.apache.camel.processor.MulticastProcessor.process(MulticastProcessor.java:208)

at org.apache.camel.processor.RecipientList.sendToRecipientList(RecipientList.java:153)

at org.apache.camel.processor.RecipientList.process(RecipientList.java:112

::::::::::::::::::::::::::::::::

Caused by: java.net.URISyntaxException: Expected scheme-specific part at index 7: direct:

at java.net.URI$Parser.fail(URI.java:2829)

at java.net.URI$Parser.failExpecting(URI.java:2835)

at java.net.URI$Parser.parse(URI.java:3038)

at java.net.URI.(URI.java:595)

at org.apache.camel.util.URISupport.normalizeUri(URISupport.java:448)

at org.apache.camel.impl.DefaultCamelContext.normalizeEndpointUri(DefaultCamelContext.java:599)

... 51 more

因此,只有在第一个实例中只有一个/时,我才看到此异常,但其他两个似乎都很好。 即使是陌生人,错误也不会经常重复。 我从未在本地工作区中看到它,但在Dev测试服务器中看到了两次,而在Integration测试服务器中看到了一次。 即使此异常失败,它也会在计时器5分钟后运行时在下次运行。 有谁知道骆驼如何解释这些URL,为什么它几次失败了?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值