From c165dd5e0e55731d16bbaf50664544161345aabc Mon Sep 17 00:00:00 2001 From: rstoyanchev Date: Fri, 10 Oct 2025 17:23:03 +0100 Subject: [PATCH 1/2] Update Javadoc of reactive WebSocketHandler Replace suggestion to use zip with and operator. Closes gh-35572 --- framework-docs/modules/ROOT/pages/web/webflux-websocket.adoc | 4 ++-- .../springframework/web/reactive/socket/WebSocketHandler.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/framework-docs/modules/ROOT/pages/web/webflux-websocket.adoc b/framework-docs/modules/ROOT/pages/web/webflux-websocket.adoc index 5c5dce2a3f9..57248caa817 100644 --- a/framework-docs/modules/ROOT/pages/web/webflux-websocket.adoc +++ b/framework-docs/modules/ROOT/pages/web/webflux-websocket.adoc @@ -310,7 +310,7 @@ Java:: Flux source = ... ; Mono output = session.send(source.map(session::textMessage)); <2> - return Mono.zip(input, output).then(); <3> + return input.and(output); <3> } } ---- @@ -338,7 +338,7 @@ Kotlin:: val source: Flux = ... val output = session.send(source.map(session::textMessage)) // <2> - return Mono.zip(input, output).then() // <3> + return input.and(output) // <3> } } ---- diff --git a/spring-webflux/src/main/java/org/springframework/web/reactive/socket/WebSocketHandler.java b/spring-webflux/src/main/java/org/springframework/web/reactive/socket/WebSocketHandler.java index 0b0bb07544b..56009942641 100644 --- a/spring-webflux/src/main/java/org/springframework/web/reactive/socket/WebSocketHandler.java +++ b/spring-webflux/src/main/java/org/springframework/web/reactive/socket/WebSocketHandler.java @@ -63,7 +63,7 @@ import reactor.core.publisher.Mono; * * *

If processing inbound and sending outbound messages are independent - * streams, they can be joined together with the "zip" operator: + * streams, they can be joined together with the "and" operator: * *

  *	class ExampleHandler implements WebSocketHandler {
@@ -83,7 +83,7 @@ import reactor.core.publisher.Mono;
  *			Flux<String> source = ... ;
  * 			Mono<Void> output = session.send(source.map(session::textMessage));
  *
- * 			return Mono.zip(input, output).then();
+ * 			return input.and(output);
  *		}
  *	}
  * 
From 2c831449464d677b2a865ad02718994b3c69a338 Mon Sep 17 00:00:00 2001 From: rstoyanchev Date: Fri, 10 Oct 2025 17:24:48 +0100 Subject: [PATCH 2/2] Use getRemoteAddr in ServletServerHttpRequest Closes gh-35589 --- .../springframework/http/server/ServletServerHttpRequest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-web/src/main/java/org/springframework/http/server/ServletServerHttpRequest.java b/spring-web/src/main/java/org/springframework/http/server/ServletServerHttpRequest.java index d907e604d61..c8d7fb0e13f 100644 --- a/spring-web/src/main/java/org/springframework/http/server/ServletServerHttpRequest.java +++ b/spring-web/src/main/java/org/springframework/http/server/ServletServerHttpRequest.java @@ -220,7 +220,7 @@ public class ServletServerHttpRequest implements ServerHttpRequest { @Override public InetSocketAddress getRemoteAddress() { - return new InetSocketAddress(this.servletRequest.getRemoteHost(), this.servletRequest.getRemotePort()); + return new InetSocketAddress(this.servletRequest.getRemoteAddr(), this.servletRequest.getRemotePort()); } @Override