Skip to content

Commit 1b7f713

Browse files
committed
Merge branch '2.0.x'
2 parents 53f3982 + 5e7be50 commit 1b7f713

File tree

2 files changed

+23
-4
lines changed

2 files changed

+23
-4
lines changed

spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/servlet/error/AbstractErrorController.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,9 @@ protected Map<String, Object> getErrorAttributes(HttpServletRequest request,
7676

7777
protected boolean getTraceParameter(HttpServletRequest request) {
7878
String parameter = request.getParameter("trace");
79+
if (parameter == null) {
80+
return false;
81+
}
7982
return !"false".equalsIgnoreCase(parameter);
8083
}
8184

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/servlet/error/BasicErrorControllerIntegrationTests.java

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
import java.util.Arrays;
2727
import java.util.List;
2828
import java.util.Map;
29+
import java.util.function.Supplier;
2930

3031
import javax.servlet.http.HttpServletRequest;
3132
import javax.servlet.http.HttpServletResponse;
@@ -94,15 +95,30 @@ public void testErrorForMachineClient() {
9495
}
9596

9697
@Test
98+
public void testErrorForMachineClientTraceParamTrue() {
99+
errorForMachineClientOnTraceParam(() -> createUrl("?trace=true"), true);
100+
}
101+
102+
@Test
103+
public void testErrorForMachineClientTraceParamFalse() {
104+
errorForMachineClientOnTraceParam(() -> createUrl("?trace=false"), false);
105+
}
106+
107+
@Test
108+
public void testErrorForMachineClientTraceParamAbsent() {
109+
errorForMachineClientOnTraceParam(() -> createUrl(""), false);
110+
}
111+
97112
@SuppressWarnings("rawtypes")
98-
public void testErrorForMachineClientTraceParamStacktrace() {
113+
private void errorForMachineClientOnTraceParam(Supplier<String> url,
114+
boolean expectedTrace) {
99115
load("--server.error.include-exception=true",
100116
"--server.error.include-stacktrace=on-trace-param");
101-
ResponseEntity<Map> entity = new TestRestTemplate()
102-
.getForEntity(createUrl("?trace=true"), Map.class);
117+
ResponseEntity<Map> entity = new TestRestTemplate().getForEntity(url.get(),
118+
Map.class);
103119
assertErrorAttributes(entity.getBody(), "500", "Internal Server Error",
104120
IllegalStateException.class, "Expected!", "/");
105-
assertThat(entity.getBody().containsKey("trace")).isTrue();
121+
assertThat(entity.getBody().containsKey("trace")).isEqualTo(expectedTrace);
106122
}
107123

108124
@Test

0 commit comments

Comments
 (0)