#java #amazon-web-services #queue #spring-cloud #amazon-sqs
Вопрос:
Я ожидал бы, что если очередь SQS, указанная в следующей аннотации, не существует, Spring выдаст исключение NonExistentQueue во время запуска.
@SqsListener(value = "nonExistingQueue", deletionPolicy = SqsMessageDeletionPolicy.ALWAYS)
Но почему-то в моем случае не возникает никаких исключений, и приложение будет запущено без очереди. Почему не будет создано никаких исключений? Может ли он быть каким-то образом отключен? Извините, я довольно новичок в AWS. Моя цель состоит в том, чтобы мое приложение даже не могло запуститься без очереди. Если бы было создано исключение, было бы этого достаточно, или, может быть, мне нужно создать метод @PostConstruct, который проверяет наличие и вручную создает исключение?
Мои владения:
cloud.aws.credentials.access-key=accesKey cloud.aws.credentials.secret-key=secretKey cloud.aws.region.auto=false cloud.aws.region.static=eu-central-1 cloud.aws.stack.auto=false
Когда я создаю очередь SQS, которая нужна SqlListened, приложение работает нормально. Вот мой пом, чтобы проверить мои зависимости:
lt;dependencygt; lt;groupIdgt;com.amazonawslt;/groupIdgt; lt;artifactIdgt;aws-java-sdk-s3lt;/artifactIdgt; lt;versiongt;1.11.792lt;/versiongt; lt;/dependencygt; lt;dependencygt; lt;groupIdgt;org.springframework.cloudlt;/groupIdgt; lt;artifactIdgt;spring-cloud-aws-autoconfigurelt;/artifactIdgt; lt;versiongt;2.2.5.RELEASElt;/versiongt; lt;/dependencygt; lt;dependencygt; lt;groupIdgt;org.springframework.cloudlt;/groupIdgt; lt;artifactIdgt;spring-cloud-aws-contextlt;/artifactIdgt; lt;versiongt;2.2.5.RELEASElt;/versiongt; lt;/dependencygt; lt;dependencygt; lt;groupIdgt;org.springframework.cloudlt;/groupIdgt; lt;artifactIdgt;spring-cloud-aws-messaginglt;/artifactIdgt; lt;versiongt;2.2.5.RELEASElt;/versiongt; lt;/dependencygt;
Большое спасибо.