1 Reply Latest reply on Jun 4, 2011 3:24 PM by sreemanth

    How do I coorect this error: "Expected: javax.faces.component.UIForm.  Perhaps you're missing a tag?"

    demetriorpc

      I am following this tutorial

      http://download.jboss.org/jbosstools/nightly-docs/en/jsf_tools_tutorial/pdf/JSF_Tools_Tutorial.pdf

       

      and I am getting this warnning in the inputname.jsp:The tag handler class for "h:form" (com.sun.faces.taglib.html_basic.FormTag) was not found on the Java Build Path.

       

      At the end, I got this error when I tried to access http://localhost:8080/jsfHello/index.jsp

       

      org.apache.jasper.JasperException: An exception occurred processing JSP page /index.jsp at line 10

       

      7: <title>Insert title here</title>

      8: </head>

      9: <body>

      10: <jsp:forward page="/pages/inputname.jsf" />

      11: </body>

      12: </html>

       

       

      Stacktrace:

      org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:498)

      org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)

      org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)

      org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)

      javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

      org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

       

       

       

      root cause

      org.apache.jasper.JasperException: An exception occurred processing JSP page /pages/inputname.jsp at line 11

      8: <title>Insert title here</title>
      9: </head>
      10: <body>
      11: <h:form id="greeting">
      12:      Please enter name:"
      13:
      14:      <h:inputText id="name" value="#{personBean.name}"/>


      Stacktrace:
           org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:498)
           org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
           org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
           org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:410)
           com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:468)
           com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:140)
           com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
           com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
           com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
           javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
           org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:696)
           org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:667)
           org.apache.jsp.index_jsp._jspService(index_jsp.java:62)
           org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
           org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
           org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

       

       

       

      root cause

      javax.servlet.ServletException: javax.servlet.jsp.JspException: java.lang.IllegalStateException: Component javax.faces.component.UIViewRoot@7e77c9 not expected type.  Expected: javax.faces.component.UIForm.  Perhaps you're missing a tag?
           org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:848)
           org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)
           org.apache.jsp.pages.inputname_jsp._jspService(inputname_jsp.java:90)
           org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
           org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
           org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:410)
           com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:468)
           com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:140)
           com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
           com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
           com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
           javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
           org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:696)
           org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:667)
           org.apache.jsp.index_jsp._jspService(index_jsp.java:62)
           org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
           org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
           org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)

       

       

       

      root cause

      java.lang.IllegalStateException: Component javax.faces.component.UIViewRoot@7e77c9 not expected type.  Expected: javax.faces.component.UIForm.  Perhaps you're missing a tag?
           com.sun.faces.taglib.html_basic.FormTag.setProperties(FormTag.java:210)
           javax.faces.webapp.UIComponentClassicTagBase.findComponent(UIComponentClassicTagBase.java:614)
           javax.faces.webapp.UIComponentClassicTagBase.doStartTag(UIComponentClassicTagBase.java:1142)
           com.sun.faces.taglib.html_basic.FormTag.doStartTag(FormTag.java:283)
           org.apache.jsp.pages.inputname_jsp._jspx_meth_h_005fform_005f0(inputname_jsp.java:109)
           org.apache.jsp.pages.inputname_jsp._jspService(inputname_jsp.java:76)
           org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
           org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
           org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           com.sun.faces.context.ExternalContextImpl.dispatch(ExternalContextImpl.java:410)
           com.sun.faces.application.ViewHandlerImpl.executePageToBuildView(ViewHandlerImpl.java:468)
           com.sun.faces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:140)
           com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
           com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
           com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
           javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
           org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:696)
           org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:667)
           org.apache.jsp.index_jsp._jspService(index_jsp.java:62)
           org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
           org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
           org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
           javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
           org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
        • 1. Re: How do I coorect this error: "Expected: javax.faces.component.UIForm.  Perhaps you're missing a tag?"
          sreemanth

          Hi

           

          this could be Cause 1

                 If we are including any input type components that should be  the child of form component.

                   

          <h:form id="greeting">

              Please enter name:"

           

                <h:inputText id="name" value="#{personBean.name}"/>

          </h:form>

           

          Please make sure that it is properly ended form tag.

           

          Cause 2

                    The tag handler class for "h:form" (com.sun.faces.taglib.html_basic.FormTag) was not found on the Java Build Path.

           

          Please add corresponding jar (jsf-impl.jar) that suits ur requirment.

           

           

          If it doesnot solves the problem. please share ur code snippet.

           

          Cheers,

          Sreemanth.