File tree Expand file tree Collapse file tree
main/java/org/springframework/messaging/simp/stomp
test/java/org/springframework/messaging/simp/stomp Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -456,7 +456,7 @@ protected void startInternal() {
456456 accessor .setLogin (this .systemLogin );
457457 accessor .setPasscode (this .systemPasscode );
458458 accessor .setHeartbeat (this .systemHeartbeatSendInterval , this .systemHeartbeatReceiveInterval );
459- accessor .setHost (getVirtualHost () != null ? getVirtualHost () : getRelayHost () );
459+ accessor .setHost (getVirtualHost () != null ? getVirtualHost () : null );
460460 accessor .setSessionId (SYSTEM_SESSION_ID );
461461 if (logger .isDebugEnabled ()) {
462462 logger .debug ("Forwarding " + accessor .getShortLogMessage (EMPTY_PAYLOAD ));
@@ -579,7 +579,7 @@ else if (accessor instanceof SimpMessageHeaderAccessor) {
579579 stompHeaderAccessor = (stompHeaderAccessor .isMutable () ? stompHeaderAccessor : StompHeaderAccessor .wrap (message ));
580580 stompHeaderAccessor .setLogin (this .clientLogin );
581581 stompHeaderAccessor .setPasscode (this .clientPasscode );
582- stompHeaderAccessor .setHost (getVirtualHost () != null ? getVirtualHost () : getRelayHost () );
582+ stompHeaderAccessor .setHost (getVirtualHost () != null ? getVirtualHost () : null );
583583 RelayConnectionHandler handler = new RelayConnectionHandler (sessionId , stompHeaderAccessor );
584584 this .connectionHandlers .put (sessionId , handler );
585585 this .stats .incrementConnectCount ();
Original file line number Diff line number Diff line change @@ -98,6 +98,27 @@ void virtualHost() {
9898 assertThat (headers2 .getHost ()).isEqualTo ("ABC" );
9999 }
100100
101+ @ Test
102+ void virtualHostDefault () {
103+ Message <byte []> connectMessage = connectMessage ("sess1" , "joe" );
104+ MessageHeaderAccessor .getAccessor (connectMessage , StompHeaderAccessor .class ).setHost ("ABC" );
105+
106+ this .brokerRelay .start ();
107+ this .brokerRelay .handleMessage (connectMessage ("sess1" , "joe" ));
108+
109+ assertThat (this .tcpClient .getSentMessages ()).hasSize (2 );
110+
111+ StompHeaderAccessor headers1 = this .tcpClient .getSentHeaders (0 );
112+ assertThat (headers1 .getCommand ()).isEqualTo (StompCommand .CONNECT );
113+ assertThat (headers1 .getSessionId ()).isEqualTo (StompBrokerRelayMessageHandler .SYSTEM_SESSION_ID );
114+ assertThat (headers1 .getHost ()).isNull ();
115+
116+ StompHeaderAccessor headers2 = this .tcpClient .getSentHeaders (1 );
117+ assertThat (headers2 .getCommand ()).isEqualTo (StompCommand .CONNECT );
118+ assertThat (headers2 .getSessionId ()).isEqualTo ("sess1" );
119+ assertThat (headers2 .getHost ()).isNull ();
120+ }
121+
101122 @ Test
102123 void loginAndPasscode () {
103124 this .brokerRelay .setSystemLogin ("syslogin" );
You can’t perform that action at this time.
0 commit comments