0

このコードを考えると:

@Slf4j
@JMSListener(CONNECTION_FACTORY_BEAN_NAME)
@RequiredArgsConstructor
public class IssueNewEventHandler {

    @Transactional
    @Queue(value = "${queue}",
           serializer = "sqsSerializer",
           concurrency = "1-1")
    public void issueNewEvent(@Body Event event) {
        log.info("retrieved message to issue {}", event);
        if (1==1)
            throw new NullPointerException("rollback");
        log.info("completed message to issue {}", event);
    }

}

@Transactionalこのキューはメッセージを消費し、属性が存在する場合でも再試行されません。この機能は Micronaut でまだ保留中ですか?

再試行または配信不能メッセージがまったく表示されません。

例外が発生した場合、メッセージが再試行されるか、配信不能キューに入れられるようにするにはどうすればよいですか。

Spring Boot では、@Transactional属性により、メッセージが本来あるべきように再試行されることが保証されますが、これは Micronaut では同じではありません。

4

0 に答える 0