Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java RSocket客户端与Spring RSocket通道连接_Java_Spring Boot_Rsocket_Rsocket Java_Spring Rsocket - Fatal编程技术网

Java RSocket客户端与Spring RSocket通道连接

Java RSocket客户端与Spring RSocket通道连接,java,spring-boot,rsocket,rsocket-java,spring-rsocket,Java,Spring Boot,Rsocket,Rsocket Java,Spring Rsocket,我有简单的Spring boot RSocket服务 @MessageMapping("msend") public Flux<String> msend(String message) { log.info("msend channel publish " + message); return Flux.just(message, " "+System.currentTime

我有简单的Spring boot RSocket服务

    @MessageMapping("msend")
    public Flux<String> msend(String message) {
        log.info("msend channel publish " + message);
        return Flux.just(message, " "+System.currentTimeMillis());
    }
@MessageMapping(“msend”)
公共流量msend(字符串消息){
log.info(“msend频道发布”+消息);
返回通量.just(消息““+System.currentTimeMillis());
}
连接2个Spring服务很容易,但是我的客户机应用程序没有Spring,我的客户机应该在RSocketJava中

我很难理解如何将(路由,如Spring RsocketRequester)消息发送到该特定通道

客户端代码应为:

 Mono<RSocket> rsocket = RSocketConnector.create()               
            .metadataMimeType(WellKnownMimeType.MESSAGE_RSOCKET_COMPOSITE_METADATA.getString())               
            .connect(TcpClientTransport.create(2050));


 ///real path "http://gateway:2022/producer/toProducerRsocket", 2050)
 ///toProducerRsocket redirect to producer/rsocket
Mono-rsocket=RSocketConnector.create()
.metadataMimeType(WellKnownMimeType.MESSAGE\u RSOCKET\u COMPOSITE\u METADATA.getString())
.connect(TcpClientTransport.create(2050));
///“真实路径”http://gateway:2022/producer/toProducerRsocket", 2050)
///toProducerRsocket重定向到producer/rsocket

是否可以订阅Spring频道?

这看起来适合定义元数据类型。但是您需要为请求流设置它。这里的频道听起来不正确,因为您只有一条输入值消息


如果您搜索github或spring教程,您应该会找到很多这样的例子。
CompositeByteBuf metadata = ByteBufAllocator.DEFAULT.compositeBuffer();
RoutingMetadata routingMetadata = TaggingMetadataCodec.createRoutingMetadata(ByteBufAllocator.DEFAULT, List.of("/route"));
CompositeMetadataCodec.encodeAndAddMetadata(metadata,
        ByteBufAllocator.DEFAULT,
        WellKnownMimeType.MESSAGE_RSOCKET_ROUTING,
        routingMetadata.getContent());