java—micronaut 2.2.1中的代理mq不工作

zc0qhyus  于 2021-07-06  发布在  Java
关注(0)|答案(1)|浏览(347)

我正在尝试使用micronaut中的rabbitmq获取代理确认。
听众

@RabbitListener
public class ProductListener {

    @Queue(ProductTopicConstants.GET_PRODUCTS)
    public String find(String text) {
        return text.toUpperCase();
    }
}

控制器

@Get(value = "/{text}", single = true)
    public Maybe<String> Find(String text) {
        iproductProducer.find(text).subscribe(item ->{
            System.out.println(item);
        });
        return null;
    }

制作人

@RabbitClient(ProductTopicConstants.FETE_BIRD_EXCHANGE)
public interface IProductProducer {
    @Binding(ProductTopicConstants.GET_PRODUCTS)
    Maybe<String> find(String text);
}

更新-#1

@RabbitClient(ProductTopicConstants.FETE_BIRD_EXCHANGE)
    public interface IProductProducer {
        @Binding(ProductTopicConstants.GET_PRODUCTS)
        Completable find(String text);
    }

根据文件
客户机方法支持两种返回类型,void和reactive类型。如果该方法返回void,则消息将被发布,并且该方法将返回而不进行确认。如果响应类型是返回类型,则将返回一个可以订阅的“cold”发布服务器。
但是在控制器里 System.out.println(item); 承认永远得不到。

c9qzyr3d

c9qzyr3d1#

你不是在找经纪人。你在描述rpc。文档清楚地说明了如何进行设置。据我所知,你好像失踪了 @RabbitProperty(name = "replyTo", value = "amq.rabbitmq.reply-to") 在客户身上。

相关问题