You can try use RAW for this big and ugly regexp
http://camel.apache.org/how-do-i-configure-endpoints.html

On Wed, Aug 21, 2013 at 4:00 PM, Chris <cwolf.a...@gmail.com> wrote:
> When I try to use the "include" option when defining an SFTP endpoint,
> sometimes it works, other times the endpoint URI gets totally scrambled,
> depending on the regular express for "include". The point at which the URI
> gets scrambled is after URISupport.normalizeUri(uri)  is called.  I tried
> pre-URI-encoding the regular expression, but then it gets URI-encoded twice
> in that case.
>
> Any ideas or corrections as to how I'm using the "include" option?
>
> BTW, I this is a runtime-generated endpoint, so I can't use a
> GenericFileFilter<T> instance because I have yet to find an easy way to
> programmatically add objects to the Springframework bean factory (Camel
> registry) at runtime.
>
> Thanks,
>
> Chris
>
> Parameters:
> port=21000, binary=true, username=adpt5, host=localhost,
> localWorkDirectory=target/res/tmp/local, idempotent=true, scheme=sftp,
> directory=target/res/home, password=adpt5, move=archive/${file:name},
> separator=UNIX,
> include=(^[\w|\W&&[^_]]+)(_MKT_)(\d\d\d\d\d\d\d\d)(_(HISTORY))?(_(.[^\.]+))?\..+}
>
> URI before  URISupport.normalizeUri(uri) is called:
>
> sftp://localhost:21000?username=adpt5&binary=true&idempotent=true&localWorkDirectory=target%2Fres%2Ftmp%2Flocal&directory=target%2Fres%2Fhome&password=adpt5&separator=UNIX&move=archive%2F%24%7Bfile%3Aname%7D&include=%28%5E%5B%5Cw%7C%5CW%26%26%5B%5E_%5D%5D%2B%29%28_MKT_%29%28%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%29%28_%28HISTORY%29%29%3F%28_%28.%5B%5E%5C.%5D%2B%29%29%3F%5C..%2B
>
> URI, scrambled after URISupport.normalizeUri(uri) is called:
>
> Failed to resolve endpoint:
> sftp://localhost:21000?&%5B%5E_%5D%5D%2B%29%28_MKT_%29%28%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%5Cd%29%28_%28HISTORY%29%29%3F%28_%28.%5B%5E%5C.%5D%2B%29%29%3F%5C..%2B&binary=true&directory=target%2Fres%2Fhome&idempotent=true&include=%28%5E%5B%5Cw%7C%5CW&localWorkDirectory=target%2Fres%2Ftmp%2Flocal&move=archive%2F%24%7Bfile%3Aname%7D&password=adpt5&separator=UNIX&username=adpt5
> due to: There are 2 parameters that couldn't be set on the endpoint. Check
> the uri if the parameters are spelt correctly and that they are properties
> of the endpoint. Unknown parameters=[{=null,
> [^_]]+)(_MKT_)(\d\d\d\d\d\d\d\d)(_(HISTORY))?(_(.[^\.]+))?\..+=null}
>



-- 
Claus Ibsen
-----------------
Red Hat, Inc.
Email: cib...@redhat.com
Twitter: davsclaus
Blog: http://davsclaus.com
Author of Camel in Action: http://www.manning.com/ibsen

Reply via email to