[jbossseam-issues] [JBoss JIRA] Created: (JBSEAM-1214) Alternate EL property reference #{entity[fieldName]} doesn't work

Joshua Davis (JIRA) jira-events at lists.jboss.org
Thu Apr 19 20:25:30 EDT 2007


Alternate EL property reference #{entity[fieldName]} doesn't work
-----------------------------------------------------------------

                 Key: JBSEAM-1214
                 URL: http://jira.jboss.com/jira/browse/JBSEAM-1214
             Project: JBoss Seam
          Issue Type: Bug
            Reporter: Joshua Davis
             Fix For: 1.2.1.GA


Validation fails for inputText fields where the value expression is of the form: #{entity[fieldName]}

The problem is in Expressions.java, in the validate() method:
{code}
   public InvalidValue[] validate(String propertyExpression, Object value)
   {
      int dot = propertyExpression.lastIndexOf('.');
      int bracket = propertyExpression.lastIndexOf('[');
      if (dot<=0 && bracket<=0) 
      {
         return new InvalidValue[0];
      }
      String componentName;
      String propertyName;
      if (dot>bracket)
      {
         componentName = propertyExpression.substring(2, dot);
         propertyName = propertyExpression.substring( dot+1, propertyExpression.length()-1 );
      }
      else
      {
         componentName = propertyExpression.substring(2, bracket);
         propertyName = propertyExpression.substring( bracket+1, propertyExpression.length()-2 );
      }
      String modelExpression = propertyExpression.substring(0, dot) + '}';
      
      Object modelInstance = createValueBinding(modelExpression).getValue(); //TODO: cache the ValueBinding object!
      return getValidator(modelInstance, componentName).getPotentialInvalidValues(propertyName, value);
   }
{code}

This line is the problem:
      String modelExpression = propertyExpression.substring(0, dot) + '}';

if a dot is not found, 'dot' is -1... boom!



-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the seam-issues mailing list