Java camel 2.4到3.4迁移后不会创建文件组件路由

Java camel 2.4到3.4迁移后不会创建文件组件路由,java,apache-camel,Java,Apache Camel,我使用的是camel core 2.4版本,带有下面的XML路由定义,它按预期工作。但是,当我将版本从2.4更改为3.4时,我得到了以下错误。有人能告诉我文件组件3.x版本的任何更改导致此问题吗?提前谢谢 <dataFormats> <json id="jack" library="Jackson" prettyPrint="true"/> </dataFormats> <route

我使用的是camel core 2.4版本,带有下面的XML路由定义,它按预期工作。但是,当我将版本从2.4更改为3.4时,我得到了以下错误。有人能告诉我文件组件3.x版本的任何更改导致此问题吗?提前谢谢

<dataFormats>
    <json id="jack" library="Jackson" prettyPrint="true"/> </dataFormats>

<route id="FileReadRoute">
    <from uri="file:///c:/data?noop=true$amp;idempotent=false&amp;delay=30s" />
    <split streaming="true">
        <tokenize token="\n"/>
        <unmarshal><csv delimiter="|"/></unmarshal>
        <marshal> <custom ref="jack" /> </marshal>

真的
$amp转义序列在以前的版本中是否有效?它应该是
&@Bedla-太棒了,谢谢你!。。您是正确的,因为从“$”更改为“&”后,它的工作非常完美。但为了更新您的问题,是的,它在2.4版本中使用了“$”。我无法接受这个答案。你能回答这个问题吗?这样我就可以接受了。
<marshal ref="jack"/> 
<marshal> <custom ref="jack" /> </marshal>
<properties>
    <java.version>1.8</java.version>
    <camel.used.version>3.4.0</camel.used.version>
</properties>

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-core</artifactId>
    <version>${camel.used.version}</version>
</dependency>

<dependency>
    <groupId>org.apache.camel</groupId>
    <artifactId>camel-file</artifactId>
    <version>${camel.used.version}</version>
</dependency>
java.lang.IllegalStateException: Failed to execute ApplicationRunner
    at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:778) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:765) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:322) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1215) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    at com.project.orchestratorengine.demo.DemoApplication.main(DemoApplication.java:12) [classes/:na]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_45]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_45]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_45]
    at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_45]
    at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49) [spring-boot-devtools-2.2.6.RELEASE.jar:2.2.6.RELEASE]
Caused by: org.apache.camel.FailedToCreateRouteException: Failed to create route FileReadRoute: Route(FileReadRoute)[From[file:///c:xxxxxx@edda9dc], Log[lin... because of Failed to resolve endpoint: file:///c:/data?delay=30s&noop=true%24amp%3Bidempotent%3Dfalse due to: Error binding property (noop=true$amp;idempotent=false) with name: noop on bean: file:///c:/data?delay=30s&noop=true%24amp%3Bidempotent%3Dfalse with value: true$amp;idempotent=false
    at org.apache.camel.reifier.RouteReifier.createRoute(RouteReifier.java:123) ~[camel-core-engine-3.4.0.jar:3.4.0]
    at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:368) ~[camel-core-engine-3.4.0.jar:3.4.0]
    at org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:342) ~[camel-core-engine-3.4.0.jar:3.4.0]
    at org.apache.camel.impl.engine.AbstractCamelContext.doInit(AbstractCamelContext.java:2612) ~[camel-base-3.4.0.jar:3.4.0]
    at org.apache.camel.support.service.BaseService.init(BaseService.java:83) ~[camel-api-3.4.0.jar:3.4.0]
    at org.apache.camel.impl.engine.AbstractCamelContext.init(AbstractCamelContext.java:2435) ~[camel-base-3.4.0.jar:3.4.0]
    at org.apache.camel.support.service.BaseService.start(BaseService.java:111) ~[camel-api-3.4.0.jar:3.4.0]
    at org.apache.camel.impl.engine.AbstractCamelContext.start(AbstractCamelContext.java:2452) ~[camel-base-3.4.0.jar:3.4.0]
    at org.apache.camel.spring.SpringCamelContext.start(SpringCamelContext.java:121) ~[camel-spring-3.4.0.jar:3.4.0]
    at org.apache.camel.spring.CamelContextFactoryBean.start(CamelContextFactoryBean.java:381) ~[camel-spring-3.4.0.jar:3.4.0]
    at org.apache.camel.spring.CamelContextFactoryBean.onApplicationEvent(CamelContextFactoryBean.java:428) ~[camel-spring-3.4.0.jar:3.4.0]
    at org.apache.camel.spring.CamelContextFactoryBean.onApplicationEvent(CamelContextFactoryBean.java:96) ~[camel-spring-3.4.0.jar:3.4.0]
    at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
    at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
    at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:403) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:360) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:897) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:553) ~[spring-context-5.2.5.RELEASE.jar:5.2.5.RELEASE]
    at com.project.alpha.msgtransform.framework.base.MsgTransformService.loadContextFromDatabase(MsgTransformService.java:85) ~[fmk-msgtransform-framework-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT]
    at com.project.alpha.msgtransform.framework.config.AutoLoadCamelConfiguration.run(AutoLoadCamelConfiguration.java:57) ~[fmk-msgtransform-framework-0.0.1-SNAPSHOT.jar:0.0.1-SNAPSHOT]
    at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:775) [spring-boot-2.2.6.RELEASE.jar:2.2.6.RELEASE]
    ... 10 common frames omitted
Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: file:///c:/data?delay=30s&noop=true%24amp%3Bidempotent%3Dfalse due to: Error binding property (noop=true$amp;idempotent=false) with name: noop on bean: file:///c:/data?delay=30s&noop=true%24amp%3Bidempotent%3Dfalse with value: true$amp;idempotent=false
    at org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:878) ~[camel-base-3.4.0.jar:3.4.0]
    at org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint(AbstractCamelContext.java:768) ~[camel-base-3.4.0.jar:3.4.0]
    at org.apache.camel.support.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:58) ~[camel-support-3.4.0.jar:3.4.0]
    at org.apache.camel.reifier.AbstractReifier.resolveEndpoint(AbstractReifier.java:177) ~[camel-core-engine-3.4.0.jar:3.4.0]
    at org.apache.camel.reifier.RouteReifier.doCreateRoute(RouteReifier.java:259) ~[camel-core-engine-3.4.0.jar:3.4.0]
    at org.apache.camel.reifier.RouteReifier.createRoute(RouteReifier.java:117) ~[camel-core-engine-3.4.0.jar:3.4.0]
    ... 31 common frames omitted
Caused by: org.apache.camel.PropertyBindingException: Error binding property (noop=true$amp;idempotent=false) with name: noop on bean: file:///c:/data?delay=30s&noop=true%24amp%3Bidempotent%3Dfalse with value: true$amp;idempotent=false
    at org.apache.camel.support.PropertyBindingSupport.doBindProperties(PropertyBindingSupport.java:567) ~[camel-support-3.4.0.jar:3.4.0]
    at org.apache.camel.support.PropertyBindingSupport.access$000(PropertyBindingSupport.java:77) ~[camel-support-3.4.0.jar:3.4.0]
    at org.apache.camel.support.PropertyBindingSupport$Builder.bind(PropertyBindingSupport.java:264) ~[camel-support-3.4.0.jar:3.4.0]
    at org.apache.camel.support.DefaultEndpoint.setProperties(DefaultEndpoint.java:433) ~[camel-support-3.4.0.jar:3.4.0]
    at org.apache.camel.support.DefaultEndpoint.configureProperties(DefaultEndpoint.java:401) ~[camel-support-3.4.0.jar:3.4.0]
    at org.apache.camel.support.ScheduledPollEndpoint.configureProperties(ScheduledPollEndpoint.java:114) ~[camel-support-3.4.0.jar:3.4.0]
    at org.apache.camel.support.DefaultComponent.setProperties(DefaultComponent.java:453) ~[camel-support-3.4.0.jar:3.4.0]
    at org.apache.camel.component.file.GenericFileComponent.createEndpoint(GenericFileComponent.java:68) ~[camel-file-3.4.0.jar:3.4.0]
    at org.apache.camel.component.file.GenericFileComponent.createEndpoint(GenericFileComponent.java:38) ~[camel-file-3.4.0.jar:3.4.0]
    at org.apache.camel.support.DefaultComponent.createEndpoint(DefaultComponent.java:237) ~[camel-support-3.4.0.jar:3.4.0]
    at org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:846) ~[camel-base-3.4.0.jar:3.4.0]
    ... 36 common frames omitted
Caused by: java.lang.IllegalArgumentException: Cannot convert the String value: true$amp;idempotent=false to type: boolean as the value is not true or false
    at org.apache.camel.support.component.PropertyConfigurerSupport.property(PropertyConfigurerSupport.java:85) ~[camel-support-3.4.0.jar:3.4.0]
    at org.apache.camel.component.file.FileEndpointConfigurer.configure(FileEndpointConfigurer.java:115) ~[camel-file-3.4.0.jar:3.4.0]
    at org.apache.camel.support.PropertyBindingSupport.doBindProperties(PropertyBindingSupport.java:562) ~[camel-support-3.4.0.jar:3.4.0]
    ... 46 common frames omitted