I've tested to wrap secret with RAW as you mentioned. It did not take an effect.
But I read S3 documentation again and have revealed, that this exception relates to access rights to perform list-bucket. But I have checked my access rights and I have the right to perform list-bucket. On Wed, 2021-07-28 at 07:21 +0000, Andrea Cosentino wrote: > If your accessKey or secretKey contains special characters like + or > /, you need to prepend RAW > > Like > > secretKey=RAW(<secretKey>) > > This seems to be a problem with your credentials at first sight. > > -- > Andrea Cosentino > ---------------------------------- > Apache Camel PMC Chair > Apache Karaf Committer > Apache Servicemix PMC Member > Email: [email protected] > Twitter: @oscerd2 > Github: oscerd > > > > > > > On Wednesday, July 28, 2021, 09:14:19 AM GMT+2, > [email protected] <[email protected]> wrote: > > > > > > Hello! > > I'm trying to send file to AWS S3 bucket and getting the following > exception. > > Caused by: org.apache.camel.RuntimeCamelException: > software.amazon.awssdk.services.s3.model.S3Exception: null (Service: > S3, Status Code: 400, Request ID: null, Extended Request ID: > na7tn3NqtzpxOnMvVw8wc4vEMSYn6ZvQvVZx709dq0q75++wwWxgBfSk4DFgtgYPV9hic > In > 8M98=) > > What does it mean? > > My code is similar to: > > --- > from("direct://send-file") > .process((exchange) -> > ) > .to("aws2-s3://BUCKET-NAME?accessKey=***&secretKey=***®ion=EU- > NORTH-1") > > // sender: > > context.createproducerTemplate().sendBody("direct://send-file", > "TEST"); > --- > > Here is the stacktrace: > > Caused by: org.apache.camel.FailedToStartRouteException: Failed to > start route route1 because of null > at > org.apache.camel.impl.engine.RouteService.warmUp(RouteService.java:12 > 3) > > at > org.apache.camel.impl.engine.InternalRouteStartupManager.doWarmUpRout > es > > (InternalRouteStartupManager.java:306) > at > org.apache.camel.impl.engine.InternalRouteStartupManager.safelyStartR > ou > > teServices(InternalRouteStartupManager.java:189) > at > org.apache.camel.impl.engine.InternalRouteStartupManager.doStartOrRes > um > > eRoutes(InternalRouteStartupManager.java:147) > at > org.apache.camel.impl.engine.AbstractCamelContext.doStartCamel(Abstra > ct > > CamelContext.java:3166) > at > org.apache.camel.impl.engine.AbstractCamelContext.doStartContext(Abst > ra > > ctCamelContext.java:2846) > at > org.apache.camel.impl.engine.AbstractCamelContext.doStart(AbstractCam > el > > Context.java:2797) > at > org.apache.camel.spring.boot.SpringBootCamelContext.doStart(SpringBoo > tC > > amelContext.java:43) > at > org.apache.camel.support.service.BaseService.start(BaseService.java:1 > 19 > > ) > at > org.apache.camel.impl.engine.AbstractCamelContext.start(AbstractCamel > Co > > ntext.java:2494) > at > org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.j > av > > a:245) > at > org.apache.camel.spring.SpringCamelContext.start(SpringCamelContext.j > av > > a:119) > at > org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringC > am > > elContext.java:151) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.d > oI > > nvokeListener(SimpleApplicationEventMulticaster.java:176) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.i > nv > > okeListener(SimpleApplicationEventMulticaster.java:169) > at > org.springframework.context.event.SimpleApplicationEventMulticaster.m > ul > > ticastEvent(SimpleApplicationEventMulticaster.java:143) > at > org.springframework.context.support.AbstractApplicationContext.publis > hE > > vent(AbstractApplicationContext.java:421) > at > org.springframework.context.support.AbstractApplicationContext.publis > hE > > vent(AbstractApplicationContext.java:378) > at > org.springframework.context.support.AbstractApplicationContext.finish > Re > > fresh(AbstractApplicationContext.java:938) > at > org.springframework.context.support.AbstractApplicationContext.refres > h( > > AbstractApplicationContext.java:586) > at > org.springframework.boot.SpringApplication.refresh(SpringApplication. > ja > > va:782) > at > org.springframework.boot.SpringApplication.refresh(SpringApplication. > ja > > va:774) > at > org.springframework.boot.SpringApplication.refreshContext(SpringAppli > ca > > tion.java:439) > at > org.springframework.boot.SpringApplication.run(SpringApplication.java > :3 > > 39) > at > org.springframework.boot.test.context.SpringBootContextLoader.loadCon > te > > xt(SpringBootContextLoader.java:123) > at > org.springframework.test.context.cache.DefaultCacheAwareContextLoader > De > > legate.loadContextInternal(DefaultCacheAwareContextLoaderDelegate.jav > a: > > 99) > at > org.springframework.test.context.cache.DefaultCacheAwareContextLoader > De > > legate.loadContext(DefaultCacheAwareContextLoaderDelegate.java:124) > ... 92 more > Caused by: org.apache.camel.RuntimeCamelException: > software.amazon.awssdk.services.s3.model.S3Exception: null (Service: > S3, Status Code: 400, Request ID: null, Extended Request ID: > na7tn3NqtzpxOnMvVw8wc4vEMSYn6ZvQvVZx709dq0q75++wwWxgBfSk4DFgtgYPV9hic > In > > 8M98=) > at > org.apache.camel.RuntimeCamelException.wrapRuntimeCamelException(Runt > im > > eCamelException.java:51) > at > org.apache.camel.support.ChildServiceSupport.start(ChildServiceSuppor > t. > > java:67) > at > org.apache.camel.support.service.ServiceHelper.startService(ServiceHe > lp > > er.java:113) > at > org.apache.camel.support.service.ServiceHelper.startService(ServiceHe > lp > > er.java:130) > at > org.apache.camel.impl.engine.DefaultChannel.doStart(DefaultChannel.ja > va > > :126) > at > org.apache.camel.support.service.BaseService.start(BaseService.java:1 > 19 > > ) > at > org.apache.camel.support.service.ServiceHelper.startService(ServiceHe > lp > > er.java:113) > at > org.apache.camel.support.service.ServiceHelper.startService(ServiceHe > lp > > er.java:116) > at > org.apache.camel.support.service.ServiceHelper.startService(ServiceHe > lp > > er.java:130) > at > org.apache.camel.processor.Pipeline.doStart(Pipeline.java:221) > at > org.apache.camel.support.service.BaseService.start(BaseService.java:1 > 19 > > ) > at > org.apache.camel.support.service.ServiceHelper.startService(ServiceHe > lp > > er.java:113) > at > org.apache.camel.support.processor.DelegateAsyncProcessor.doStart(Del > eg > > ateAsyncProcessor.java:89) > at > org.apache.camel.support.service.BaseService.start(BaseService.java:1 > 19 > > ) > at > org.apache.camel.support.service.ServiceHelper.startService(ServiceHe > lp > > er.java:113) > at > org.apache.camel.impl.engine.RouteService.startChildServices(RouteSer > vi > > ce.java:396) > at > org.apache.camel.impl.engine.RouteService.doWarmUp(RouteService.java: > 19 > > 3) > at > org.apache.camel.impl.engine.RouteService.warmUp(RouteService.java:12 > 1) > > ... 118 more > Caused by: software.amazon.awssdk.services.s3.model.S3Exception: null > (Service: S3, Status Code: 400, Request ID: null, Extended Request > ID: > na7tn3NqtzpxOnMvVw8wc4vEMSYn6ZvQvVZx709dq0q75++wwWxgBfSk4DFgtgYPV9hic > In > > 8M98=) > at > software.amazon.awssdk.protocols.xml.internal.unmarshall.AwsXmlPredic > at > > edResponseHandler.handleErrorResponse(AwsXmlPredicatedResponseHandler > .j > > ava:156) > at > software.amazon.awssdk.protocols.xml.internal.unmarshall.AwsXmlPredic > at > > edResponseHandler.handleResponse(AwsXmlPredicatedResponseHandler.java > :1 > > 06) > at > software.amazon.awssdk.protocols.xml.internal.unmarshall.AwsXmlPredic > at > > edResponseHandler.handle(AwsXmlPredicatedResponseHandler.java:84) > at > software.amazon.awssdk.protocols.xml.internal.unmarshall.AwsXmlPredic > at > > edResponseHandler.handle(AwsXmlPredicatedResponseHandler.java:42) > at > software.amazon.awssdk.awscore.client.handler.AwsSyncClientHandler$Cr > c3 > > 2ValidationResponseHandler.handle(AwsSyncClientHandler.java:94) > at > software.amazon.awssdk.core.internal.handler.BaseClientHandler.lambda > $s > > uccessTransformationResponseHandler$6(BaseClientHandler.java:270) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.HandleRespo > ns > > eStage.execute(HandleResponseStage.java:40) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.HandleRespo > ns > > eStage.execute(HandleResponseStage.java:30) > at > software.amazon.awssdk.core.internal.http.pipeline.RequestPipelineBui > ld > > er$ComposingRequestPipelineStage.execute(RequestPipelineBuilder.java: > 20 > > 6) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ApiCallAtte > mp > > tTimeoutTrackingStage.execute(ApiCallAttemptTimeoutTrackingStage.java > :7 > > 3) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ApiCallAtte > mp > > tTimeoutTrackingStage.execute(ApiCallAttemptTimeoutTrackingStage.java > :4 > > 2) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.TimeoutExce > pt > > ionHandlingStage.execute(TimeoutExceptionHandlingStage.java:78) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.TimeoutExce > pt > > ionHandlingStage.execute(TimeoutExceptionHandlingStage.java:40) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ApiCallAtte > mp > > tMetricCollectionStage.execute(ApiCallAttemptMetricCollectionStage.ja > va > > :50) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ApiCallAtte > mp > > tMetricCollectionStage.execute(ApiCallAttemptMetricCollectionStage.ja > va > > :36) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.RetryableSt > ag > > e.execute(RetryableStage.java:64) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.RetryableSt > ag > > e.execute(RetryableStage.java:34) > at > software.amazon.awssdk.core.internal.http.pipeline.RequestPipelineBui > ld > > er$ComposingRequestPipelineStage.execute(RequestPipelineBuilder.java: > 20 > > 6) > at > software.amazon.awssdk.core.internal.http.StreamManagingStage.execute > (S > > treamManagingStage.java:56) > at > software.amazon.awssdk.core.internal.http.StreamManagingStage.execute > (S > > treamManagingStage.java:36) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ApiCallTime > ou > > tTrackingStage.executeWithTimer(ApiCallTimeoutTrackingStage.java:80) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ApiCallTime > ou > > tTrackingStage.execute(ApiCallTimeoutTrackingStage.java:60) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ApiCallTime > ou > > tTrackingStage.execute(ApiCallTimeoutTrackingStage.java:42) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ApiCallMetr > ic > > CollectionStage.execute(ApiCallMetricCollectionStage.java:48) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ApiCallMetr > ic > > CollectionStage.execute(ApiCallMetricCollectionStage.java:31) > at > software.amazon.awssdk.core.internal.http.pipeline.RequestPipelineBui > ld > > er$ComposingRequestPipelineStage.execute(RequestPipelineBuilder.java: > 20 > > 6) > at > software.amazon.awssdk.core.internal.http.pipeline.RequestPipelineBui > ld > > er$ComposingRequestPipelineStage.execute(RequestPipelineBuilder.java: > 20 > > 6) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ExecutionFa > il > > ureExceptionReportingStage.execute(ExecutionFailureExceptionReporting > St > > age.java:37) > at > software.amazon.awssdk.core.internal.http.pipeline.stages.ExecutionFa > il > > ureExceptionReportingStage.execute(ExecutionFailureExceptionReporting > St > > age.java:26) > at > software.amazon.awssdk.core.internal.http.AmazonSyncHttpClient$Reques > tE > > xecutionBuilderImpl.execute(AmazonSyncHttpClient.java:193) > at > software.amazon.awssdk.core.internal.handler.BaseSyncClientHandler.in > vo > > ke(BaseSyncClientHandler.java:135) > at > software.amazon.awssdk.core.internal.handler.BaseSyncClientHandler.do > Ex > > ecute(BaseSyncClientHandler.java:161) > at > software.amazon.awssdk.core.internal.handler.BaseSyncClientHandler.la > mb > > da$execute$1(BaseSyncClientHandler.java:114) > at > software.amazon.awssdk.core.internal.handler.BaseSyncClientHandler.me > as > > ureApiCallSuccess(BaseSyncClientHandler.java:169) > at > software.amazon.awssdk.core.internal.handler.BaseSyncClientHandler.ex > ec > > ute(BaseSyncClientHandler.java:95) > at > software.amazon.awssdk.core.client.handler.SdkSyncClientHandler.execu > te > > (SdkSyncClientHandler.java:45) > at > software.amazon.awssdk.awscore.client.handler.AwsSyncClientHandler.ex > ec > > ute(AwsSyncClientHandler.java:55) > at > software.amazon.awssdk.services.s3.DefaultS3Client.headBucket(Default > S3 > > Client.java:4863) > at > org.apache.camel.component.aws2.s3.AWS2S3Endpoint.doStart(AWS2S3Endpo > in > > t.java:101) > at > org.apache.camel.support.service.BaseService.start(BaseService.java:1 > 19 > > ) > at > org.apache.camel.support.service.ServiceHelper.startService(ServiceHe > lp > > er.java:113) > at > org.apache.camel.processor.SendProcessor.doStart(SendProcessor.java:2 > 41 > > ) > at > org.apache.camel.support.service.BaseService.start(BaseService.java:1 > 19 > > ) > at > org.apache.camel.support.service.ServiceHelper.startService(ServiceHe > lp > > er.java:113) > at > org.apache.camel.support.service.ServiceHelper.startService(ServiceHe > lp > > er.java:130) > at > org.apache.camel.processor.errorhandler.RedeliveryErrorHandler.doStar > t( > > RedeliveryErrorHandler.java:1638) > at > org.apache.camel.support.ChildServiceSupport.start(ChildServiceSuppor > t. > > java:60) > ... 134 more > > _________________ > Vyacheslav Boyko, > mailto:[email protected] > -- _________________ Vyacheslav Boyko, mailto:[email protected]
