[
https://issues.apache.org/struts/browse/WW-3306?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=47021#action_47021
]
Musachy Barroso commented on WW-3306:
-------------------------------------
Confirmed. The problem is that the code that check for the missing property
only checks the actions, if the action is ModelDriven, it doesn't check the
model. I also found what it seems like another bug, this code in xwork:
for (Object o : root) {
if (o instanceof ActionSupport ||
o.getClass().getSimpleName().endsWith("Action")) {
try {
findAvailableProperties(o.getClass(), expr,
availableProperties, null);
} catch (IntrospectionException ise) {
// ignore
}
}
}
it should check all objects in the stack, not only "o instanceof ActionSupport
|| o.getClass().getSimpleName().endsWith("Action")"
> Null value accepted from action property, but not model property when
> throwExceptionOnFailure=true
> --------------------------------------------------------------------------------------------------
>
> Key: WW-3306
> URL: https://issues.apache.org/struts/browse/WW-3306
> Project: Struts 2
> Issue Type: Bug
> Components: Value Stack
> Affects Versions: 2.2.0
> Reporter: Andreas Krüger
>
> In this project, we experiment with setting
> struts.el.throwExceptionOnFailure=true to catch errors.
> We use <s:property value="myprop" /> in our JSP.
> Occasionally, the property thus referenced is null. We want struts to insert
> an empty string in that case.
> This it duely does, when either struts.el.throwExceptionOnFailure=false or
> when the property is from an action object.
> However, if the property is from a model object and
> struts.el.throwExceptionOnFailure=true, this bombs out.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.