You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@cocoon.apache.org by mp...@apache.org on 2004/04/05 13:38:54 UTC
cvs commit: cocoon-2.1/src/blocks/forms/java/org/apache/cocoon/forms/binding CustomJXPathBindingBuilder.java
mpo 2004/04/05 04:38:54
Modified: src/blocks/forms/java/org/apache/cocoon/forms/binding
CustomJXPathBindingBuilder.java
Log:
Fixing stupid ArrayIndexOutOfBoundsException.
Plus changing the method-retrieval to a fallback mechanism.
Revision Changes Path
1.2 +9 -5 cocoon-2.1/src/blocks/forms/java/org/apache/cocoon/forms/binding/CustomJXPathBindingBuilder.java
Index: CustomJXPathBindingBuilder.java
===================================================================
RCS file: /home/cvs/cocoon-2.1/src/blocks/forms/java/org/apache/cocoon/forms/binding/CustomJXPathBindingBuilder.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- CustomJXPathBindingBuilder.java 1 Apr 2004 22:49:56 -0000 1.1
+++ CustomJXPathBindingBuilder.java 5 Apr 2004 11:38:54 -0000 1.2
@@ -88,12 +88,16 @@
Class builderClass = Class.forName(builderClassName);
Method factoryMethod = null;
- Object[] args;
- if (configNode != null) {
+ Object[] args = null;
+ try {
factoryMethod = builderClass.getMethod(factoryMethodName, DOMELEMENT_METHODARGS);
args = new Object[1];
- args[1] = configNode;
- } else {
+ args[0] = configNode;
+ } catch (NoSuchMethodException e) {
+ factoryMethod = null;
+ }
+
+ if (factoryMethod == null) {
factoryMethod = builderClass.getMethod(factoryMethodName, EMPTY_METHODARGS);
args = null;
}