Browse Source

Merge branch '3.4.x'

Closes gh-44321
pull/44326/head
Andy Wilkinson 12 months ago
parent
commit
1be1876628
  1. 1
      spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/jetty/JettyReactiveWebServerFactory.java
  2. 17
      spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/jetty/JettyReactiveWebServerFactoryTests.java

1
spring-boot-project/spring-boot/src/main/java/org/springframework/boot/web/embedded/jetty/JettyReactiveWebServerFactory.java

@ -249,6 +249,7 @@ public class JettyReactiveWebServerFactory extends AbstractReactiveWebServerFact @@ -249,6 +249,7 @@ public class JettyReactiveWebServerFactory extends AbstractReactiveWebServerFact
}
private void customizeSsl(Server server, InetSocketAddress address) {
Assert.state(getSsl().getServerNameBundles().isEmpty(), "Server name SSL bundles are not supported with Jetty");
new SslServerCustomizer(getHttp2(), address, getSsl().getClientAuth(), getSslBundle()).customize(server);
}

17
spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/jetty/JettyReactiveWebServerFactoryTests.java

@ -20,6 +20,7 @@ import java.net.ConnectException; @@ -20,6 +20,7 @@ import java.net.ConnectException;
import java.net.InetAddress;
import java.time.Duration;
import java.util.Arrays;
import java.util.List;
import org.awaitility.Awaitility;
import org.eclipse.jetty.server.ConnectionLimit;
@ -33,11 +34,14 @@ import org.mockito.InOrder; @@ -33,11 +34,14 @@ import org.mockito.InOrder;
import org.springframework.boot.web.reactive.server.AbstractReactiveWebServerFactory;
import org.springframework.boot.web.reactive.server.AbstractReactiveWebServerFactoryTests;
import org.springframework.boot.web.server.Shutdown;
import org.springframework.boot.web.server.Ssl;
import org.springframework.boot.web.server.Ssl.ServerNameSslBundle;
import org.springframework.http.server.reactive.HttpHandler;
import org.springframework.web.reactive.function.client.WebClient;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatIllegalArgumentException;
import static org.assertj.core.api.Assertions.assertThatIllegalStateException;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.Mockito.inOrder;
import static org.mockito.Mockito.mock;
@ -146,6 +150,19 @@ class JettyReactiveWebServerFactoryTests extends AbstractReactiveWebServerFactor @@ -146,6 +150,19 @@ class JettyReactiveWebServerFactoryTests extends AbstractReactiveWebServerFactor
assertThat(connectionLimit.getMaxConnections()).isOne();
}
@Test
void sslServerNameBundlesConfigurationThrowsException() {
Ssl ssl = new Ssl();
ssl.setBundle("test");
List<ServerNameSslBundle> bundles = List.of(new ServerNameSslBundle("first", "test1"),
new ServerNameSslBundle("second", "test2"));
ssl.setServerNameBundles(bundles);
JettyReactiveWebServerFactory factory = getFactory();
factory.setSsl(ssl);
assertThatIllegalStateException().isThrownBy(() -> this.webServer = factory.getWebServer(new EchoHandler()))
.withMessageContaining("Server name SSL bundles are not supported with Jetty");
}
@Override
protected String startedLogMessage() {
return ((JettyWebServer) this.webServer).getStartedLogMessage();

Loading…
Cancel
Save