You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@camel.apache.org by "Bryan Brouckaert (Jira)" <ji...@apache.org> on 2021/01/28 11:12:00 UTC

[jira] [Commented] (CAMEL-16101) doneFileName=${file:name} not working for file component

    [ https://issues.apache.org/jira/browse/CAMEL-16101?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17273504#comment-17273504 ] 

Bryan Brouckaert commented on CAMEL-16101:
------------------------------------------

Line 54 of FileComponent checks if there is the $\{ start token present; but doesn't filter out the doneFileName where it perfectly legal.

> doneFileName=${file:name} not working for file component
> --------------------------------------------------------
>
>                 Key: CAMEL-16101
>                 URL: https://issues.apache.org/jira/browse/CAMEL-16101
>             Project: Camel
>          Issue Type: Bug
>          Components: came-core
>    Affects Versions: 3.7.1
>            Reporter: Bryan Brouckaert
>            Priority: Major
>
> When using the "doneFileName=${[file:name|file://name/]}.done" option for the file component, camel throws the following error:
>  
> {{Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: file:///Data/contactdb/upload/xx2cin&charset=utf8&delete=true&doneFileName=$%7Bfile:name%7D.done due to: Invalid directory: /Data/contactdb/upload/xx2cin&charset=utf8&delete=true&doneFileName=${file:name}.done. Dynamic expressions with ${ } placeholders is not allowed. Use the fileName option to set the dynamic expression.Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve endpoint: file:///Data/contactdb/upload/xx2cin&charset=utf8&delete=true&doneFileName=$%7Bfile:name%7D.done due to: Invalid directory: /Data/contactdb/upload/xx2cin&charset=utf8&delete=true&doneFileName=${file:name}.done. Dynamic expressions with ${ } placeholders is not allowed. Use the fileName option to set the dynamic expression. at org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:913) at org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint(AbstractCamelContext.java:794) at org.apache.camel.support.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:58) at org.apache.camel.reifier.AbstractReifier.resolveEndpoint(AbstractReifier.java:177) at org.apache.camel.reifier.RouteReifier.doCreateRoute(RouteReifier.java:93) at org.apache.camel.reifier.RouteReifier.createRoute(RouteReifier.java:73) ... 13 moreCaused by: java.lang.IllegalArgumentException: Invalid directory: /Data/contactdb/upload/xx2cin&charset=utf8&delete=true&doneFileName=${file:name}.done. Dynamic expressions with ${ } placeholders is not allowed. Use the fileName option to set the dynamic expression. at org.apache.camel.component.file.FileComponent.buildFileEndpoint(FileComponent.java:55) at org.apache.camel.component.file.GenericFileComponent.createEndpoint(GenericFileComponent.java:58) at org.apache.camel.component.file.GenericFileComponent.createEndpoint(GenericFileComponent.java:38) at org.apache.camel.support.DefaultComponent.createEndpoint(DefaultComponent.java:170) at org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:879) ... 18 more}}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)