amazon web services - InvalidParameterException while confirming SNS notification using Java spring cloud aws -


i have sns http end point written using spring-aws-cloud. followed below tutorial. while request confirmation sns topic following error application console. seems status.confirmsubscription() failing. error getting :

zonaws.services.sns.model.invalidparameterexception: invalid parameter: topicarn (service: amazonsns; status code: 400; error code: invalidparameter; request id: d47581bd-789f-58f0-b976-ced91fec6929)         @ com.amazonaws.http.amazonhttpclient.handleerrorresponse(amazonhttpclient.java:1383) ~[aws-java-sdk-core-1.10.61.jar:na]         @ com.amazonaws.http.amazonhttpclient.executeonerequest(amazonhttpclient.java:902) ~[aws-java-sdk-core-1.10.61.jar:na]         @ com.amazonaws.http.amazonhttpclient.executehelper(amazonhttpclient.java:607) ~[aws-java-sdk-core-1.10.61.jar:na]         @ com.amazonaws.http.amazonhttpclient.doexecute(amazonhttpclient.java:376) ~[aws-java-sdk-core-1.10.61.jar:na]         @ com.amazonaws.http.amazonhttpclient.executewithtimer(amazonhttpclient.java:338) ~[aws-java-sdk-core-1.10.61.jar:na]         @ com.amazonaws.http.amazonhttpclient.execute(amazonhttpclient.java:287) ~[aws-java-sdk-core-1.10.61.jar:na]         @ com.amazonaws.services.sns.amazonsnsclient.invoke(amazonsnsclient.java:2459) ~[aws-java-sdk-sns-1.10.7.jar:na]         @ com.amazonaws.services.sns.amazonsnsclient.confirmsubscription(amazonsnsclient.java:284) ~[aws-java-sdk-sns-1.10.7.jar:na]         @ com.amazonaws.services.sns.amazonsnsclient.confirmsubscription(amazonsnsclient.java:1761) ~[aws-java-sdk-sns-1.10.7.jar:na]         @ org.springframework.cloud.aws.messaging.endpoint.notificationstatushandlermethodargumentresolver$amazonsnsnotificationstatus.confirmsubscription(notificationstatushandlermethodargumentresolver.java:62) ~[spring-cloud-aws-messaging-1.0.4.release.jar:1.0.4.release]         @ com.fastretailing.catalogplatformscmproducer.controller.snscontroller.handlesubscriptionmessage(snscontroller.java:73) ~[classes/:na]         @ sun.reflect.nativemethodaccessorimpl.invoke0(native method) ~[na:1.8.0_45]         @ sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl.java:62) ~[na:1.8.0_45]         @ sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl.java:43) ~[na:1.8.0_45]         @ java.lang.reflect.method.invoke(method.java:497) ~[na:1.8.0_45]         @ org.springframework.web.method.support.invocablehandlermethod.doinvoke(invocablehandlermethod.java:222) ~[spring-web-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.method.support.invocablehandlermethod.invokeforrequest(invocablehandlermethod.java:137) ~[spring-web-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.servlet.mvc.method.annotation.servletinvocablehandlermethod.invokeandhandle(servletinvocablehandlermethod.java:110) ~[spring-webmvc-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.invokehandlermethod(requestmappinghandleradapter.java:814) ~[spring-webmvc-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.servlet.mvc.method.annotation.requestmappinghandleradapter.handleinternal(requestmappinghandleradapter.java:737) ~[spring-webmvc-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.servlet.mvc.method.abstracthandlermethodadapter.handle(abstracthandlermethodadapter.java:85) ~[spring-webmvc-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.servlet.dispatcherservlet.dodispatch(dispatcherservlet.java:959) ~[spring-webmvc-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.servlet.dispatcherservlet.doservice(dispatcherservlet.java:893) ~[spring-webmvc-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.servlet.frameworkservlet.processrequest(frameworkservlet.java:969) ~[spring-webmvc-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.servlet.frameworkservlet.dopost(frameworkservlet.java:871) ~[spring-webmvc-4.2.4.release.jar:4.2.4.release]         @ javax.servlet.http.httpservlet.service(httpservlet.java:648) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.springframework.web.servlet.frameworkservlet.service(frameworkservlet.java:845) ~[spring-webmvc-4.2.4.release.jar:4.2.4.release]         @ javax.servlet.http.httpservlet.service(httpservlet.java:729) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:291) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.tomcat.websocket.server.wsfilter.dofilter(wsfilter.java:52) ~[tomcat-embed-websocket-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:239) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.springframework.web.filter.requestcontextfilter.dofilterinternal(requestcontextfilter.java:99) ~[spring-web-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.filter.onceperrequestfilter.dofilter(onceperrequestfilter.java:107) ~[spring-web-4.2.4.release.jar:4.2.4.release]         @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:239) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.springframework.web.filter.httpputformcontentfilter.dofilterinternal(httpputformcontentfilter.java:87) ~[spring-web-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.filter.onceperrequestfilter.dofilter(onceperrequestfilter.java:107) ~[spring-web-4.2.4.release.jar:4.2.4.release]         @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:239) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.springframework.web.filter.hiddenhttpmethodfilter.dofilterinternal(hiddenhttpmethodfilter.java:77) ~[spring-web-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.filter.onceperrequestfilter.dofilter(onceperrequestfilter.java:107) ~[spring-web-4.2.4.release.jar:4.2.4.release]         @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:239) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.springframework.web.filter.characterencodingfilter.dofilterinternal(characterencodingfilter.java:121) ~[spring-web-4.2.4.release.jar:4.2.4.release]         @ org.springframework.web.filter.onceperrequestfilter.dofilter(onceperrequestfilter.java:107) ~[spring-web-4.2.4.release.jar:4.2.4.release]         @ org.apache.catalina.core.applicationfilterchain.internaldofilter(applicationfilterchain.java:239) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.applicationfilterchain.dofilter(applicationfilterchain.java:206) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.standardwrappervalve.invoke(standardwrappervalve.java:212) ~[tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.standardcontextvalve.invoke(standardcontextvalve.java:106) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.authenticator.authenticatorbase.invoke(authenticatorbase.java:502) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.standardhostvalve.invoke(standardhostvalve.java:141) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.valves.errorreportvalve.invoke(errorreportvalve.java:79) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.core.standardenginevalve.invoke(standardenginevalve.java:88) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.catalina.connector.coyoteadapter.service(coyoteadapter.java:521) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.coyote.http11.abstracthttp11processor.process(abstracthttp11processor.java:1096) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.coyote.abstractprotocol$abstractconnectionhandler.process(abstractprotocol.java:674) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.tomcat.util.net.nioendpoint$socketprocessor.dorun(nioendpoint.java:1500) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ org.apache.tomcat.util.net.nioendpoint$socketprocessor.run(nioendpoint.java:1456) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142) [na:1.8.0_45]         @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617) [na:1.8.0_45]         @ org.apache.tomcat.util.threads.taskthread$wrappingrunnable.run(taskthread.java:61) [tomcat-embed-core-8.0.30.jar:8.0.30]         @ java.lang.thread.run(thread.java:745) [na:1.8.0_45] 

my pom.xml below.

<project xmlns="http://maven.apache.org/pom/4.0.0" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"              xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">       <modelversion>4.0.0</modelversion>        <groupid>com.fastretailing.fr-cpf-scm-producer</groupid>       <artifactid>fr-cpf-scm-producer</artifactid>       <version>1.0-snapshot</version>       <packaging>jar</packaging>       <parent>         <groupid>org.springframework.boot</groupid>         <artifactid>spring-boot-starter-parent</artifactid>         <version>1.3.2.release</version>       </parent>        <dependencies>         <dependency>           <groupid>org.springframework.boot</groupid>           <artifactid>spring-boot-starter-web</artifactid>          </dependency>           <!-- spring cloud sns http endpoint-->         <dependency>           <groupid>org.springframework.cloud</groupid>           <artifactid>spring-cloud-aws-messaging</artifactid>           <version>1.0.4.release</version>         </dependency>         <!-- spring aws autoconfiguration-->         <dependency>           <groupid>org.springframework.cloud</groupid>           <artifactid>spring-cloud-aws-autoconfigure</artifactid>           <version>1.0.4.release</version>         </dependency>         <!-- apache commons-->         <dependency>           <groupid>org.apache.commons</groupid>           <artifactid>commons-io</artifactid>           <version>1.3.2</version>         </dependency>         <!-- amazon s3 client-->         <dependency>           <groupid>com.amazonaws</groupid>           <artifactid>aws-java-sdk-s3</artifactid>           <version> 1.10.61</version>         </dependency>          <dependency>           <groupid>org.springframework.boot</groupid>           <artifactid>spring-boot-starter-batch</artifactid>         </dependency>         <!-- mongo client -->         <dependency>           <groupid>org.springframework.data</groupid>           <artifactid>spring-data-mongodb</artifactid>           <version>1.8.4.release</version>         </dependency>          <dependency>           <groupid>org.springframework.boot</groupid>           <artifactid>spring-boot-starter-jdbc</artifactid>         </dependency>            <dependency>           <groupid>org.springframework.batch</groupid>           <artifactid>spring-batch-test</artifactid>           <version>3.0.6.release</version>         </dependency>         <dependency>           <groupid>mysql</groupid>           <artifactid>mysql-connector-java</artifactid>           <version>5.1.38</version>         </dependency>         <dependency>           <groupid>org.apache.kafka</groupid>           <artifactid>kafka_2.10</artifactid>           <version>0.9.0.1</version>           <exclusions>             <exclusion>               <groupid>org.slf4j</groupid>               <artifactid>slf4j-log4j12</artifactid>             </exclusion>           </exclusions>         </dependency>        </dependencies>        <properties>         <java.version>1.8</java.version>         <spring-cloud-version>1.0.0.release</spring-cloud-version>       </properties>         <build>         <resources>           <resource>             <directory>config</directory>           </resource>         </resources>          <plugins>           <plugin>             <groupid>org.springframework.boot</groupid>             <artifactid>spring-boot-maven-plugin</artifactid>           </plugin>         </plugins>       </build>      </project> 

like bill says, need configure region. here's sample code:

return amazonsnsclientbuilder.standard()         .withregion(regions.us_west_2)         .build(); 

for more information, see

http://docs.aws.amazon.com/java-sdk/latest/developer-guide/creating-clients.html


Comments

Popular posts from this blog

java - Run spring boot application error: Cannot instantiate interface org.springframework.context.ApplicationListener -

python - pip wont install .WHL files -

Excel VBA "Microsoft Windows Common Controls 6.0 (SP6)" Location Changes -