当前位置: 首页 > 知识库问答 >
问题:

Spring aws-cloud SNS httpendpoint确认订阅不工作

杜俊爽
2023-03-14
[Request processing failed; nested exception is java.lang.IllegalArgumentException: Invoked method public abstract void org.springframework.cloud.aws.messaging.endpoint.NotificationStatus.confirmSubscription() is no accessor method!] with root cause
    java.lang.IllegalArgumentException: Invoked method public abstract void org.springframework.cloud.aws.messaging.endpoint.NotificationStatus.confirmSubscription() is no accessor method!
        at org.springframework.util.Assert.notNull(Assert.java:115) ~[spring-core-4.2.4.RELEASE.jar!/:4.2.4.RELEASE]
        at org.spring
     @NotificationSubscriptionMapping
        public void handleSubscriptionMessage( NotificationStatus status)   throws IOException {
            //Confirming SNS subscription
            status.confirmSubscription();
        }
     <dependency>
          <groupId>org.springframework.cloud</groupId>
          <artifactId>spring-cloud-aws-messaging</artifactId>
          <version>1.0.4.RELEASE</version>
        </dependency>

        <!-- For Spring AWS autoconfiguration-->
        <dependency>
          <groupId>org.springframework.cloud</groupId>
          <artifactId>spring-cloud-aws-autoconfigure</artifactId>
          <version>1.0.4.RELEASE</version>
        </dependency>

共有1个答案

安建木
2023-03-14

是否指定自定义冲突解决程序:

<mvc:annotation-driven>
    <mvc:argument-resolvers>
        <ref bean="notificationResolver" />
    </mvc:argument-resolvers>
</mvc:annotation-driven>

<aws-messaging:notification-argument-resolver id="notificationResolver" />

另外,我看不到控制器映射,但在教程中有一条语句:

目前,无法在方法级别上定义映射URL,因此RequestMapping必须在类型级别上完成,并且必须包含endpoint的完整路径。

 类似资料:
  • 我创建了一个亚马逊SNS主题,并添加了2个订阅。 确认后正常工作的电子邮件id。 amazon ec2实例的HTTP URL。

  • 我正在开发一个利用websockets功能的Spring应用程序。为了使它更健壮,我使用了STOMP/SimpleBrokerMessageHandler,如文档中所述。一切进展顺利,我已经能够非常快速地连接javasctipt客户端,所以我转而使用“AndroidSync”库在Android客户端上工作。 我发现的事实是,Android客户端(我想其他客户端也是如此)在服务器处理订阅请求后没有收

  • 我已经设置了AWS SNS设置与一个主题说'a'。我正在使用Http订阅这个SNS主题(尝试了手动使用AWS控制台联机和使用Java代码)。在这两种情况下,我得到的都是“待确认”。但是,SNS不向提供的URL发送初始“SubscriptionConfironment”。 请注意,我的endpoint已准备好接收http POST通知。当我从我的身边手动发布一个帖子时,我会看到我的servlet正在

  • 我正在尝试建立一个基本的SNS订阅,但它看起来像AWS从来没有发送确认,无论是通过控制台或使用SDK。 我已使用AWS控制台设置了一个主题 我已经使用AWS控制台和ruby SDK向ngrok隧道URL和公共web服务器URL添加了HTTP订阅 我允许每个人通过编辑AWS控制台中的主题策略订阅主题 通过跟踪本地主机和公共web服务器上的日志,我可以看到没有任何请求被发送到endpoint。 我在这

  • 嗨,我不能收到确认订阅请求从亚马逊,尝试了一切。我的endpointurl是:。我尝试了以下代码片段来接收响应:1)-> 2)-> 请帮助我如何接收来自amazon的响应,也请指出我是否在代码中做错了什么或者我遗漏了任何一步。多谢了。

  • 我正在尝试设置Amazon Ses通知到我的SQS队列。我正在遵循如何创建SQS队列,然后是SNS主题,并将一个订阅到另一个。 但是,在管理控制台中,订阅出现“挂起确认”。 我使用的是.NET AWS SDK,如何确认订阅?或者更好,为什么我要确认?文件上说