0

I need to migrate spring-cloud-aws-messaging to another compatible lib with new Spring Version.

Because the last version of spring-cloud-aws-messaging has javax.servlet » javax.servlet-api as Provided Dependencies (1), and the new Spring Version uses Jakarta instead of Javax.

(1) https://mvnrepository.com/artifact/io.awspring.cloud/spring-cloud-aws-messaging/2.4.4

Another problem is that I have the error:

Caused by: java.lang.NoClassDefFoundError: org/springframework/messaging/handler/annotation/support/PayloadArgumentResolver
    at io.awspring.cloud.messaging.listener.QueueMessageHandler.initArgumentResolvers(QueueMessageHandler.java:118)
    at org.springframework.messaging.handler.invocation.AbstractMethodMessageHandler.afterPropertiesSet(AbstractMethodMessageHandler.java:237)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1816)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1766)
    ... 161 more

Because PayloadArgumentResolver class was removed from Spring and QueueMessageHandler class tried to use It.

I tried to use this two libs, but It didnt work:

<artifactId>spring-cloud-aws-starter-sns</artifactId>
<artifactId>spring-cloud-aws-sqs</artifactId>
Computered
  • 440
  • 1
  • 7
  • 21
  • If you want to write a Java app that invokes AWS SQS, then look at using the official AWS SQS Java API. A benefit of using the AWS Java SDK is you get support you do not get from using a 3rd party API . See: https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/sqs/SqsClient.html – smac2020 Jun 05 '23 at 21:54
  • 1
    Version 3.0.1. see https://docs.awspring.io/spring-cloud-aws/docs/3.0.1/reference/html/index.html Spring Cloud AWS uses the AWS Java sdk – spencergibb Jun 05 '23 at 23:04

0 Answers0