This is an automated email from the ASF dual-hosted git repository.
asf-gitbox-commits pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/struts-site.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 7cd051d785 Automatic Site Publish by Buildbot
7cd051d785 is described below
commit 7cd051d785df7e26fbc426d58122f64e221b7872
Author: buildbot <[email protected]>
AuthorDate: Fri Oct 23 08:05:03 2026 +0000
Automatic Site Publish by Buildbot
---
output/plugins/rest/index.html | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/output/plugins/rest/index.html b/output/plugins/rest/index.html
index cfb3f89dec..61ef803e9a 100644
--- a/output/plugins/rest/index.html
+++ b/output/plugins/rest/index.html
@@ -558,6 +558,14 @@ constructors and <code class="language-plaintext
highlighter-rouge">@Constructor
request body, make sure they are reachable from an authorized property; see
<a
href="../../core-developers/struts-parameter-annotation.html#creator-bound-properties">Creator-bound
properties</a>.</p>
+<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>). 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>
<p>The following settings can be customized. See the <a
href="/core-developers/configuration-files">developer guide</a>.