This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a commit to branch asf-staging
in repository https://gitbox.apache.org/repos/asf/struts-site.git
The following commit(s) were added to refs/heads/asf-staging by this push:
new 592508b052 Updates stage by Jenkins
592508b052 is described below
commit 592508b052d7d1f61da4f5ed9934ca66797b812f
Author: jenkins <[email protected]>
AuthorDate: Fri Oct 23 05:46:11 2026 +0000
Updates stage by Jenkins
---
content/plugins/rest/index.html | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/content/plugins/rest/index.html b/content/plugins/rest/index.html
index 211761657f..61ef803e9a 100644
--- a/content/plugins/rest/index.html
+++ b/content/plugins/rest/index.html
@@ -561,9 +561,10 @@ request body, make sure they are reachable from an
authorized property; see
<p>A custom handler that implements only <code class="language-plaintext
highlighter-rouge">ContentTypeHandler</code> is deserialized into a fresh
instance of the action or
model, and only authorized properties are copied back. Since Struts 7.5.0 that
copy skips a property whose value is
null or equal to the constructor default of a fresh instance, so values bound
by <code class="language-plaintext highlighter-rouge">params</code> or loaded
in <code class="language-plaintext highlighter-rouge">prepare()</code>
-survive a body that omits them (<a
href="https://issues.apache.org/jira/browse/WW-5790">WW-5790</a>). Two
consequences: a body
-value equal to the constructor default is not applied over a differing
existing value, and the constructor of the
-target runs twice per request on this path. Implement <code
class="language-plaintext
highlighter-rouge">AuthorizationAwareContentTypeHandler</code> to get exact
semantics.</p>
+survive a body that omits them (<a
href="https://issues.apache.org/jira/browse/WW-5790">WW-5790</a>). Three
consequences: a body value
+equal to the constructor default is not applied over a differing existing
value, which includes a primitive at its
+zero value and an empty collection; nested beans are compared leaf by leaf,
never through their own <code class="language-plaintext
highlighter-rouge">equals</code>; and the
+constructor of the target runs twice per request on this path. Implement <code
class="language-plaintext
highlighter-rouge">AuthorizationAwareContentTypeHandler</code> to get exact
semantics.</p>
<h3 id="settings">Settings</h3>