[
https://issues.apache.org/struts/browse/STR-3051?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Boda Béla updated STR-3051:
---------------------------
Summary: FieldChecks.evaluateBean method is absolutly wrong!!! (was:
FieldChecks.evaluateBean method is absolutaly wrong!!!)
> FieldChecks.evaluateBean method is absolutly wrong!!!
> -----------------------------------------------------
>
> Key: STR-3051
> URL: https://issues.apache.org/struts/browse/STR-3051
> Project: Struts 1
> Issue Type: Bug
> Components: Core
> Affects Versions: 1.3.8
> Environment: Using with AndroMDA 3.2. Windows XP, Java 5.0
> Reporter: Boda Béla
> Priority: Critical
>
> The method below is wrong, because if a bean has a java.lang.Double field the
> validation is not working. The getValueAsString returns anything if the field
> is set. But if the user types sharacters in a double field the bean has a
> NULL value in that field, so this method returns null, that is wrong, because
> the typed string is not visible any more.
> Wrong method:
> private static String evaluateBean(Object bean, Field field) {
> String value;
> if (isString(bean)) {
> value = (String) bean;
> } else {
> value = ValidatorUtils.getValueAsString(bean,
> field.getProperty());
> }
> return value;
> }
> Good method to use:
> private static String evaluateBean(Object bean, Field field,
> HttpServletRequest request) {
> String value;
> if (isString(bean)) {
> value = (String) bean;
> } else {
> value = request.getParameter(field.getKey());
> }
> return value;
> }
> PS: Can't send a patch, sorry!
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.