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;
                   }
  
  
  

Reply via email to