(tomcat) branch main updated: Add reason
[email protected] Thu, 16 Jul 2026 08:56:49 +0000
| Newsgroups | gmane.comp.jakarta.tomcat.devel |
|---|---|
| Message-ID | <178419220929.2946454.3167740809268135530@gitbox3-he-fi.apache.org> |
This is an automated email from the ASF dual-hosted git repository.
rmaucher pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tomcat.git
The following commit(s) were added to refs/heads/main by this push:
new 91e588c640 Add reason
91e588c640 is described below
commit 91e588c6409991fee91c11feda65924943b504b3
Author: remm <[email protected]>
AuthorDate: Thu Jul 16 10:56:34 2026 +0200
Add reason
Improve consistency with ErrorReportValve code.
---
java/org/apache/catalina/valves/JsonErrorReportValve.java | 13 +++++++++++--
webapps/docs/changelog.xml | 3 +++
2 files changed, 14 insertions(+), 2 deletions(-)
diff --git a/java/org/apache/catalina/valves/JsonErrorReportValve.java b/java/org/apache/catalina/valves/JsonErrorReportValve.java
index 63e62a2917..9f562523fc 100644
--- a/java/org/apache/catalina/valves/JsonErrorReportValve.java
+++ b/java/org/apache/catalina/valves/JsonErrorReportValve.java
@@ -81,17 +81,26 @@ public class JsonErrorReportValve extends ErrorReportValve {
if (message == null) {
message = "";
}
- String description = smClient.getString("http." + statusCode + ".desc");
- if (description == null) {
+ String reason = null;
+ String description = null;
+ try {
+ reason = smClient.getString("http." + statusCode + ".reason");
+ description = smClient.getString("http." + statusCode + ".desc");
+ } catch (Throwable t) {
+ ExceptionUtils.handleThrowable(t);
+ }
+ if (reason == null || description == null) {
if (message.isEmpty()) {
return;
} else {
+ reason = smClient.getString("errorReportValve.unknownReason");
description = smClient.getString("errorReportValve.noDescription");
}
}
sb.append(",\n");
sb.append(" \"type\": \"").append(JSONFilter.escape(type)).append("\",\n");
sb.append(" \"message\": \"").append(JSONFilter.escape(message)).append("\",\n");
+ sb.append(" \"reason\": \"").append(JSONFilter.escape(reason)).append("\",\n");
sb.append(" \"description\": \"").append(JSONFilter.escape(description));
if (throwable != null) {
diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml
index 0c0bb4ec3d..06e4d26b69 100644
--- a/webapps/docs/changelog.xml
+++ b/webapps/docs/changelog.xml
@@ -253,6 +253,9 @@
rethrow it as an <code>IllegalStateException</code> as mandated by the
Servlet specification. (remm)
</fix>
+ <fix>
+ Add missing reason to the <code>JsonErrorReportValve</code>. (remm)
+ </fix>
</changelog>
</subsection>
<subsection name="Coyote">