Author: seade Date: Wed May 16 20:19:16 2007 New Revision: 538796 URL: http://svn.apache.org/viewvc?view=rev&rev=538796 Log: Fixed a couple of NullPointerExceptions that can occur when Intake is validating multiValued fields.
Modified: jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/model/Field.java jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/validator/DefaultValidator.java jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/xdocs/changes.xml Modified: jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/model/Field.java URL: http://svn.apache.org/viewvc/jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/model/Field.java?view=diff&rev=538796&r1=538795&r2=538796 ============================================================================== --- jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/model/Field.java (original) +++ jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/model/Field.java Wed May 16 20:19:16 2007 @@ -628,10 +628,13 @@ if (isDebugEnabled) { - log.debug(name + ": Multi-Valued"); - for (int i = 0; i < stringValues.length; i++) + log.debug(name + ": Multi-Valued, Value is " + stringValue); + if (stringValues != null) { - log.debug(name + ": " + i + ". Value: " + stringValues[i]); + for (int i = 0; i < stringValues.length; i++) + { + log.debug(name + ": " + i + ". Value: " + stringValues[i]); + } } } @@ -639,7 +642,7 @@ { // set the test value as a String[] which might be replaced by // the correct type if the input is valid. - setTestValue(parser.getStrings(getKey())); + setTestValue(stringValues); try { Modified: jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/validator/DefaultValidator.java URL: http://svn.apache.org/viewvc/jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/validator/DefaultValidator.java?view=diff&rev=538796&r1=538795&r2=538796 ============================================================================== --- jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/validator/DefaultValidator.java (original) +++ jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/src/java/org/apache/turbine/services/intake/validator/DefaultValidator.java Wed May 16 20:19:16 2007 @@ -167,10 +167,18 @@ { String[] stringValues = (String[])field.getTestValue(); - for (int i = 0; i < stringValues.length; i++) - { - assertValidity(stringValues[i]); - } + if (stringValues == null) + { + // We still want to pick up required fields. + assertValidity((String) null); + } + else + { + for (int i = 0; i < stringValues.length; i++) + { + assertValidity(stringValues[i]); + } + } } else { Modified: jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/xdocs/changes.xml URL: http://svn.apache.org/viewvc/jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/xdocs/changes.xml?view=diff&rev=538796&r1=538795&r2=538796 ============================================================================== --- jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/xdocs/changes.xml (original) +++ jakarta/turbine/core/branches/TURBINE_2_3_BRANCH/xdocs/changes.xml Wed May 16 20:19:16 2007 @@ -29,6 +29,10 @@ <body> <release version="2.3.3-dev" date="in Subversion"> <action type="fix" dev="seade"> + Fixed a couple of NullPointerExceptions that can occur when Intake is + validating multiValued fields. + </action> + <action type="fix" dev="seade"> isSet() was returning <code>true</code> for Intake Fields even when no value was provided. Fixed and test case added. </action> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]