Tuesday, September 17, 2013

JSF Errors: JSF1011: Evaluation of expression for attribute ''..'' resulted in unexpected type. Expected .. , but received .. .

Exception encountered in Mojarra classes com.sun.faces.taglib.jsf_core.ConvertDateTimeTag and com.sun.faces.taglib.jsf_core.ConvertNumberTag in method evaluateExpressions when value of specified locale (localeExpression) isn't literal text and also isn't valid expression value.

private void evaluateExpressions()
   {
     FacesContext facesContext = FacesContext.getCurrentInstance();
     ELContext elContext = facesContext.getELContext();

     // ...

      if (this.localeExpression != null) {
        if (this.localeExpression.isLiteralText()) {
         this.locale = getLocale(this.localeExpression.getExpressionString());
        } else {
         Object loc = ELUtils.evaluateValueExpression(this.localeExpression, elContext);

          if (loc != null) {
            if ((loc instanceof String)) {
              this.locale = getLocale((String)loc);
            } else if ((loc instanceof Locale)) {
              this.locale = ((Locale)loc);
            } else {
              // Exception JSF 1011
            }
          }
          else
          {
            this.locale = facesContext.getViewRoot().getLocale();
          }
        }
      }

     // ...
  }

No comments:

Post a Comment