Hi,

thanks for your recommendation, but it does not work.

I tried to URL encode the password: 41%29%26fail

With the encoded password, I do not get the “Failed to resolve endpoint” error 
below, but the password is wrong when connecting to the server.
It seems that the password is not URL decoded before it is used by the Camel 
SftpConsumer and hence it is wrong.

Any ideas?


Thx and regards,
Flo

Von: Pasquale Congiusti <pasquale.congiu...@gmail.com>
Gesendet: Freitag, 16. Juli 2021 16:37
An: users@camel.apache.org
Betreff: {EXT} Re: SFTP component possible bug with URL parameter including 
char sequence “)&”

Hi there,
you can try to urlencode the problematic characters and see if it solves.

Pasquale.

On Fri, Jul 16, 2021 at 12:39 PM EIBL Florian (ICS460-BAI) 
<florian.e...@spar-ics.com<mailto:florian.e...@spar-ics.com>> wrote:
Hello,

I‘m using Camel v3.10.0 and openjdk 14.0.1

Camel has a problem building this route:


<https://www.spar-ics.com/>

Florian EIBL
Software Engineer
Business Automation & Integration
Phone:
+43 664 6259733
Mobile:
+43 664 6259733
E-Mail:
florian.e...@spar-ics.com<mailto:florian.e...@spar-ics.com>

SPAR Business Services GmbH
Information & Communication Services
Europastrasse 3, 5015 Salzburg, Austria

____________________________________________________________________________________________________

from("sftp:testserver/../testdir/" +
                "?password=RAW(41)&fail)")
        .log("${body}");
____________________________________________________________________________________________________

It seems that parsing the endpoint URL is a problem, if there is the char 
sequence “)&” in the password.  It does not help to use RAW() syntax for the 
password (moreover Camel does it anyway).
The chars following “)&” are interpreted as a new URL parameter -> “Check the 
uri if the parameters are spelt correctly and that they are properties of the 
endpoint. Unknown parameters=[{fail=}]”

Here the complete stacktrace:

StackTrace:
org.apache.camel.FailedToCreateRouteException: Failed to create route route1: 
Route(route1)[From[sftp:testserver/../testdir/?password=xxxx... because of 
Failed to resolve endpoint: 
sftp://testserver/../testdir/?fail%29=&password=xxxxxx due to: Failed to 
resolve endpoint: sftp://testserver/../testdir/?fail%29=&password=xxxxxx due 
to: There are 1 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=[{fail)=}]
                at 
org.apache.camel.reifier.RouteReifier.createRoute(RouteReifier.java:80) 
~[camel-core-reifier-3.10.0.jar:3.10.0]
                at 
org.apache.camel.impl.DefaultModelReifierFactory.createRoute(DefaultModelReifierFactory.java:49)
 ~[camel-core-engine-3.10.0.jar:3.10.0]
                at 
org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:826)
 ~[camel-core-engine-3.10.0.jar:3.10.0]
                at 
org.apache.camel.impl.DefaultCamelContext.startRouteDefinitions(DefaultCamelContext.java:716)
 ~[camel-core-engine-3.10.0.jar:3.10.0]
                at 
org.apache.camel.impl.engine.AbstractCamelContext.doInit(AbstractCamelContext.java:2756)
 ~[camel-base-engine-3.10.0.jar:3.10.0]
                at 
org.apache.camel.support.service.BaseService.init(BaseService.java:83) 
~[camel-api-3.10.0.jar:3.10.0]
                at 
org.apache.camel.impl.engine.AbstractCamelContext.init(AbstractCamelContext.java:2475)
 ~[camel-base-engine-3.10.0.jar:3.10.0]
                at 
org.apache.camel.support.service.BaseService.start(BaseService.java:111) 
~[camel-api-3.10.0.jar:3.10.0]
                at 
org.apache.camel.impl.engine.AbstractCamelContext.start(AbstractCamelContext.java:2494)
 ~[camel-base-engine-3.10.0.jar:3.10.0]
                at 
org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:245) 
~[camel-core-engine-3.10.0.jar:3.10.0]
                at 
org.apache.camel.spring.SpringCamelContext.start(SpringCamelContext.java:107) 
~[camel-spring-3.10.0.jar:3.10.0]
                at 
org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:139)
 ~[camel-spring-3.10.0.jar:3.10.0]
                at 
org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172)
 ~[spring-context-5.3.2.jar:5.3.2]
                at 
org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165)
 ~[spring-context-5.3.2.jar:5.3.2]
                at 
org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139)
 ~[spring-context-5.3.2.jar:5.3.2]
                at 
org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:426)
 ~[spring-context-5.3.2.jar:5.3.2]
                at 
org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:383)
 ~[spring-context-5.3.2.jar:5.3.2]
                at 
org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:943)
 ~[spring-context-5.3.2.jar:5.3.2]
                at 
org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591)
 ~[spring-context-5.3.2.jar:5.3.2]
                at 
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:144)
 ~[spring-boot-2.4.1.jar:2.4.1]
                at 
org.springframework.boot.SpringApplication.refresh(SpringApplication.java:767) 
~[spring-boot-2.4.1.jar:2.4.1]
                at 
org.springframework.boot.SpringApplication.refresh(SpringApplication.java:759) 
~[spring-boot-2.4.1.jar:2.4.1]
                at 
org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:426)
 ~[spring-boot-2.4.1.jar:2.4.1]
                at 
org.springframework.boot.SpringApplication.run(SpringApplication.java:326) 
~[spring-boot-2.4.1.jar:2.4.1]
                at 
org.springframework.boot.SpringApplication.run(SpringApplication.java:1309) 
~[spring-boot-2.4.1.jar:2.4.1]
                at 
org.springframework.boot.SpringApplication.run(SpringApplication.java:1298) 
~[spring-boot-2.4.1.jar:2.4.1]
                at 
com.spar_ics.eai.apps.routes.idm_scim_service.IdmScimServiceApplication.main(IdmScimServiceApplication.java:13)
 ~[classes/:na]
Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve 
endpoint: sftp://testserver/../testdir/?fail%29=&password=xxxxxx due to: Failed 
to resolve endpoint: sftp://testserver/../testdir/?fail%29=&password=xxxxxx due 
to: There are 1 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=[{fail)=}]
                at 
org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:962)
 ~[camel-base-engine-3.10.0.jar:3.10.0]
                at 
org.apache.camel.impl.engine.AbstractCamelContext.getEndpoint(AbstractCamelContext.java:844)
 ~[camel-base-engine-3.10.0.jar:3.10.0]
                at 
org.apache.camel.support.CamelContextHelper.getMandatoryEndpoint(CamelContextHelper.java:58)
 ~[camel-support-3.10.0.jar:3.10.0]
                at 
org.apache.camel.reifier.AbstractReifier.resolveEndpoint(AbstractReifier.java:177)
 ~[camel-core-reifier-3.10.0.jar:3.10.0]
                at 
org.apache.camel.reifier.RouteReifier.doCreateRoute(RouteReifier.java:94) 
~[camel-core-reifier-3.10.0.jar:3.10.0]
                at 
org.apache.camel.reifier.RouteReifier.createRoute(RouteReifier.java:74) 
~[camel-core-reifier-3.10.0.jar:3.10.0]
                ... 26 common frames omitted
Caused by: org.apache.camel.ResolveEndpointFailedException: Failed to resolve 
endpoint: sftp://testserver/../testdir/?fail%29=&password=xxxxxx due to: There 
are 1 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=[{fail)=}]
                at 
org.apache.camel.support.DefaultComponent.validateParameters(DefaultComponent.java:299)
 ~[camel-support-3.10.0.jar:3.10.0]
                at 
org.apache.camel.support.DefaultComponent.createEndpoint(DefaultComponent.java:192)
 ~[camel-support-3.10.0.jar:3.10.0]
                at 
org.apache.camel.impl.engine.AbstractCamelContext.doGetEndpoint(AbstractCamelContext.java:928)
 ~[camel-base-engine-3.10.0.jar:3.10.0]
                ... 31 common frames omitted



Thx and regards,
Flo
Sollten Sie diese E-Mail unbeabsichtigt bzw. irrtümlich erhalten haben, so 
weisen wir Sie darauf hin, dass gemäß § 93 Abs 4 TKG der Inhalt sowie die 
Tatsache des Empfangs dieser E-Mail weder aufgezeichnet noch verwertet oder 
Unbefugten mitgeteilt werden dürfen. Wir ersuchen Sie, die Nachricht von Ihrem 
System zu löschen und sich mit uns in Verbindung zu setzen. If you have 
received this email accidentally or in error, we point out that, in accordance 
with § 93 para. 4 TKG (Telecommunications Act), the contents of this email and 
the fact of its receipt must not be recorded, exploited or communicated to 
unauthorized persons. We ask you to delete the message from your system and to 
contact us.

Reply via email to