Hi All,

 

I am trying to create a custom validator which will take values from 2 HtmlInputText components and compare whether “date1” is greater or lesser than “date2” and then proper messages on the page.

When I run the application the following exception is thrown:

 

javax.faces.FacesException: UIComponent is no ValueHolder

            at org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:422)

            at org.apache.myfaces.tomahawk.application.jsp.JspTilesViewHandlerImpl.dispatch(JspTilesViewHandlerImpl.java:233)

            at org.apache.myfaces.tomahawk.application.jsp.JspTilesViewHandlerImpl.renderView(JspTilesViewHandlerImpl.java:219)

            at org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:384)

            at javax.faces.webapp.FacesServlet.service(FacesServlet.java:138)

            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)

            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

            at org.ajax4jsf.framework.ajax.xmlfilter.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:67)

            at org.ajax4jsf.framework.ajax.xmlfilter.BaseFilter.doFilter(BaseFilter.java:223)

            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)

            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

            at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:97)

            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)

            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

            at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:187)

            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)

            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

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

            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)

            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)

            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)

            at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)

            at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:159)

            at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)

            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)

            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)

            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)

            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)

            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)

            at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)

            at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)

            at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)

            at java.lang.Thread.run(Thread.java:595)

Caused by: javax.servlet.ServletException: UIComponent is no ValueHolder

            at org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:848)

            at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:781)

            at org.apache.jsp.index_jsp._jspService(org.apache.jsp.index_jsp:139)

            at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)

            at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)

            at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:322)

            at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)

            at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)

            at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)

            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)

            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)

            at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)

            at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:463)

            at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)

            at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)

            at org.apache.myfaces.context.servlet.ServletExternalContextImpl.dispatch(ServletExternalContextImpl.java:416)

 

Any help on why this exception has occurred?

 

The Validator class implements Validator and StateHolder interfaces.

In the validate method I am retrieving the components with id’s passed in as attributes to the component. Once I get the components then validations can be done.

 

Thanks,

madhav

**************** CAUTION - Disclaimer *****************
This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended solely for the use of the addressee(s). If you are not the intended recipient, please notify the sender by e-mail and delete the original message. Further, you are not to copy, disclose, or distribute this e-mail or its contents to any other person and any such actions are unlawful. This e-mail may contain viruses. Infosys has taken every reasonable precaution to minimize this risk, but is not liable for any damage you may sustain as a result of any virus in this e-mail. You should carry out your own virus checks before opening the e-mail or attachment. Infosys reserves the right to monitor and review the content of all messages sent to or from this e-mail address. Messages sent to or from this e-mail address may be stored on the Infosys e-mail system.
***INFOSYS******** End of Disclaimer ********INFOSYS***

Reply via email to