joerg 2004/03/16 13:38:30
Modified: src/java/org/apache/cocoon/acting
AbstractValidatorAction.java
Log:
handle possible NPE if no parameter in the sitemap and no constraint-set for
validating was specified:
http://marc.theaimsgroup.com/?t=107702303400001&r=1&w=4
Revision Changes Path
1.9 +9 -1
cocoon-2.1/src/java/org/apache/cocoon/acting/AbstractValidatorAction.java
Index: AbstractValidatorAction.java
===================================================================
RCS file:
/home/cvs/cocoon-2.1/src/java/org/apache/cocoon/acting/AbstractValidatorAction.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -r1.8 -r1.9
--- AbstractValidatorAction.java 5 Mar 2004 13:02:43 -0000 1.8
+++ AbstractValidatorAction.java 16 Mar 2004 21:38:30 -0000 1.9
@@ -21,9 +21,11 @@
import org.apache.avalon.framework.parameters.Parameters;
import org.apache.cocoon.Constants;
+import org.apache.cocoon.ProcessingException;
import org.apache.cocoon.environment.SourceResolver;
import org.apache.cocoon.environment.ObjectModelHelper;
import org.apache.cocoon.environment.Redirector;
+import org.apache.cocoon.sitemap.SitemapParameters;
import org.apache.cocoon.util.Tokenizer;
import org.apache.regexp.RE;
@@ -245,6 +247,12 @@
"Validating parameters " + "from given constraint-set "
+ valsetstr);
Map csets =
this.indexConfiguration(conf.getChildren("constraint-set"));
params = this.resolveConstraints(valsetstr, csets);
+ }
+
+ if (params == null) {
+ throw new ProcessingException("Neither a constraint-set nor
parameters in the sitemap "
+ + "were specified for validating
at "
+ +
SitemapParameters.getStatementLocation(parameters));
}
HashMap values = this.createMapOfParameters(objectModel, params);
allOK = this.validateSetOfParameters(desc, actionMap, resultMap,
params, values, this.isStringEncoded());