Skip to content

Commit 07e9e14

Browse files
author
Dave Syer
committed
More care taken with starting netty server in webapp
1 parent a39904c commit 07e9e14

File tree

2 files changed

+10
-3
lines changed

2 files changed

+10
-3
lines changed

spring-grpc-spring-boot-autoconfigure/src/main/java/org/springframework/grpc/autoconfigure/server/GrpcServerFactoryAutoConfiguration.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
import org.springframework.boot.autoconfigure.condition.AnyNestedCondition;
2828
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
2929
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
30+
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingClass;
3031
import org.springframework.boot.autoconfigure.condition.ConditionalOnNotWebApplication;
3132
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
3233
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
@@ -139,7 +140,13 @@ static class OnNonWebApplication {
139140

140141
}
141142

143+
@ConditionalOnMissingClass("io.grpc.servlet.jakarta.GrpcServlet")
144+
static class OnGrpcServletClass {
145+
146+
}
147+
142148
@ConditionalOnWebApplication(type = ConditionalOnWebApplication.Type.SERVLET)
149+
@ConditionalOnClass(GrpcServlet.class)
143150
@ConditionalOnProperty(prefix = "spring.grpc.server", name = "servlet.enabled", havingValue = "false",
144151
matchIfMissing = false)
145152
static class OnExplicitlyDisabledServlet {

spring-grpc-spring-boot-autoconfigure/src/test/java/org/springframework/grpc/autoconfigure/server/GrpcServletAutoConfigurationTests.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import org.junit.jupiter.api.Test;
2626

2727
import org.springframework.boot.autoconfigure.AutoConfigurations;
28+
import org.springframework.boot.autoconfigure.ssl.SslAutoConfiguration;
2829
import org.springframework.boot.test.context.FilteredClassLoader;
2930
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
3031
import org.springframework.boot.test.context.runner.WebApplicationContextRunner;
@@ -52,9 +53,8 @@ private WebApplicationContextRunner contextRunner() {
5253
ServerServiceDefinition serviceDefinition = ServerServiceDefinition.builder("my-service").build();
5354
when(service.bindService()).thenReturn(serviceDefinition);
5455
// NOTE: we use noop server lifecycle to avoid startup
55-
return new WebApplicationContextRunner()
56-
.withConfiguration(
57-
AutoConfigurations.of(GrpcServerAutoConfiguration.class, GrpcServerFactoryAutoConfiguration.class))
56+
return new WebApplicationContextRunner().withConfiguration(AutoConfigurations.of(SslAutoConfiguration.class,
57+
GrpcServerAutoConfiguration.class, GrpcServerFactoryAutoConfiguration.class))
5858
.withBean(BindableService.class, () -> service);
5959
}
6060

0 commit comments

Comments
 (0)