Uploaded image for project: 'MyFaces Core'
  1. MyFaces Core
  2. MYFACES-1682

MyFaces 1.2 not work properly with value parameter

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Critical
    • Resolution: Fixed
    • 1.2.0
    • 1.2.2
    • None
    • None
    • Tomcat 6.0.10
      MyFaces 1.2

    Description

      <%@ page import="javax.faces.context.FacesContext" %>
      <%@ page import="javax.faces.application.FacesMessage" %>
      <%@ taglib prefix="jsf" uri="http://java.sun.com/jsf/core" %>
      <%@ taglib prefix="h" uri="http://java.sun.com/jsf/html" %>
      <%-<%@ taglib prefix="t" uri="http://myfaces.apache.org/tomahawk" %>-%>
      <%-<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j" %>-%>
      <%--
      Date: Mar 15, 2007
      Time: 4:46:53 PM
      --%>
      <%@ page contentType="text/html;charset=UTF-8" language="java" %>
      <jsf:view>
      <%
      FacesContext.getCurrentInstance().addMessage(null,new FacesMessage("test"));
      %>
      <html>
      <head><title>Simple jsp page</title></head>
      <body>Place your content here
      <h:form>
      <h:messages/>
      <h:outputText value="#

      {s.valuetest}

      "/>
      </h:form>
      </body>
      </html>
      </jsf:view>

      libs in lib directory:
      commons-beanutils-1.7.0.jar
      commons-codec-1.3.jar
      commons-collections-3.2.jar
      commons-digester-1.8.jar
      commons-discovery-0.4.jar
      commons-el-1.0.jar
      commons-logging-1.1.jar
      jstl-1.2.jar
      myfaces-api-1.2.0.jar
      myfaces-impl-1.2.0.jar

      web.xml config:
      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
      <web-app>

      <context-param>
      <param-name>com.sun.faces.expressionFactory</param-name>
      <param-value>org.apache.el.ExpressionFactoryImpl</param-value>
      </context-param>

      <servlet>
      <servlet-name>Faces Servlet</servlet-name>
      <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
      <load-on-startup>1</load-on-startup>
      </servlet>
      <servlet-mapping>
      <servlet-name>Faces Servlet</servlet-name>
      <url-pattern>/faces/*</url-pattern>
      </servlet-mapping>
      <servlet-mapping>
      <servlet-name>Faces Servlet</servlet-name>
      <url-pattern>*.faces</url-pattern>
      </servlet-mapping>
      </web-app>

      and finally faces config:
      <?xml version='1.0' encoding='UTF-8'?>
      <!DOCTYPE faces-config PUBLIC
      "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
      "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">

      <faces-config>
      <managed-bean>
      <managed-bean-name>s</managed-bean-name>
      <managed-bean-class>test.Bean</managed-bean-class>
      <managed-bean-scope>session</managed-bean-scope>
      </managed-bean>
      </faces-config>

      if page contains simple message output all work fine!
      If any value in tag then i got this error:
      javax.servlet.ServletException: /test.jsp(21,7) According to TLD or attribute directive in tag file, attribute value does not accept any expressions
      javax.faces.webapp.FacesServlet.service(FacesServlet.java:152)

      root cause
      javax.faces.FacesException: /test.jsp(21,7) According to TLD or attribute directive in tag file, attribute value does not accept any expressions
      org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:340)
      org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:254)
      org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
      org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132)
      javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)

      root cause
      org.apache.jasper.JasperException: /test.jsp(21,7) According to TLD or attribute directive in tag file, attribute value does not accept any expressions
      org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
      org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
      org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:148)
      org.apache.jasper.compiler.Validator$ValidateVisitor.checkXmlAttributes(Validator.java:1172)
      org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:819)
      org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
      org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
      org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
      org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:838)
      org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
      org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
      org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
      org.apache.jasper.compiler.Validator$ValidateVisitor.visit(Validator.java:838)
      org.apache.jasper.compiler.Node$CustomTag.accept(Node.java:1507)
      org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
      org.apache.jasper.compiler.Node$Visitor.visitBody(Node.java:2386)
      org.apache.jasper.compiler.Node$Visitor.visit(Node.java:2392)
      org.apache.jasper.compiler.Node$Root.accept(Node.java:489)
      org.apache.jasper.compiler.Node$Nodes.visit(Node.java:2336)
      org.apache.jasper.compiler.Validator.validate(Validator.java:1737)
      org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:178)
      org.apache.jasper.compiler.Compiler.compile(Compiler.java:306)
      org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
      org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
      org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
      org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:308)
      org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
      org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
      javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:334)
      org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:254)
      org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
      org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132)
      javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)

      i'm try new installation og myfaces-1.2 and got another exception:
      SEVERE: Servlet.service() for servlet jsp threw exception
      org.apache.jasper.JasperException: Unable to convert string "Test" to class "javax.el.ValueExpression" for attribute "value": Property Editor not registered with the PropertyEditorManager
      at org.apache.jasper.runtime.JspRuntimeLibrary.getValueFromPropertyEditorManager(JspRuntimeLibrary.java:887)
      at org.apache.jsp.test_jsp._jspx_meth_h_005foutputText_005f0(test_jsp.java:138)
      at org.apache.jsp.test_jsp._jspx_meth_f_005fview_005f0(test_jsp.java:102)
      at org.apache.jsp.test_jsp._jspService(test_jsp.java:65)
      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
      at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
      at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
      at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:469)
      at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:403)
      at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)
      at org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:334)
      at org.apache.myfaces.application.jsp.JspViewHandlerImpl.renderView(JspViewHandlerImpl.java:254)
      at org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:41)
      at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:132)
      at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
      at java.lang.Thread.run(Thread.java:595)

      So finally:
      if jsp page has value with EL expr i got: According to TLD or attribute directive in tag file, attribute value does not accept any expressions
      if wihout EL expr: org.apache.jasper.JasperException: Unable to convert string "Test" to class "javax.el.ValueExpression" for attribute "value": Property Editor not registered with the PropertyEditorManager

      Attachments

        1. myfaces_core.tld
          41 kB
          Andreas Gärtner
        2. h.tld
          187 kB
          Andreas Gärtner

        Activity

          People

            Unassigned Unassigned
            necromancer Vitaly Smyk
            Votes:
            7 Vote for this issue
            Watchers:
            8 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: