Eu criei um componente JSF para exibir gráficos na tela. É assim, eu dou os parâmetros e o meu componente gera um gráfico em tempo real (vulgo on fly).
Perfeito, porém, está acontecendo alguma coisa que quando eu tento rodar o projeto, o deploy não é efetivado e o projeto então não roda.
o erro que dá é:
29/05/2008 16:12:53 org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener
javax.faces.FacesException: Can't parse configuration file: jndi:/localhost/graficoJSF/WEB-INF/faces-config.xml: Error at line 8 column 101: Element type 'faces-config' was not declared
at com.sun.faces.config.ConfigureListener.parse(ConfigureListener.java:1438)
at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:376)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4350)
at org.apache.catalina.manager.ManagerServlet.start(ManagerServlet.java:1244)
at org.apache.catalina.manager.ManagerServlet.doGet(ManagerServlet.java:374)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
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.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:196)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)
tem uma linha que diz: javax.faces.FacesException: Can’t parse configuration file: jndi:/localhost/graficoJSF/WEB-INF/faces-config.xml: Error at line 8 column 101: Element type ‘faces-config’ . Porém, o no meu faces-config está tudo certo.
Pelo que eu pude enteder, parece que a definição da minha taglib é que está gerando algum erro ou alguma incopatibilidade.
Bom, está aki o meu faces-config:
<?xml version='1.0' encoding='UTF-8'?>
<!-- =========== FULL CONFIGURATION FILE ================================== -->
<faces-config version="1.2"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">
<component>
<component-type>br.com.bb.sigov.grafico.Grafico</component-type>
<component-class>br.com.bb.sigov.grafico.GraficoComponente</component-class>
</component>
<managed-bean>
<managed-bean-name>teste</managed-bean-name>
<managed-bean-class>br.com.bb.sigov.teste.TesteGrafico</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
</faces-config>
E aqui está o meu arquivo tld:
<?xml version = '1.0' encoding = 'UTF-8'?>
<!-- =========== FULL CONFIGURATION FILE ================================== -->
<taglib version="1.2"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd">
<tlib-version>1.0</tlib-version>
<jsp-version>1.2</jsp-version>
<short-name>grafico</short-name>
<uri>http://bb.com.br/sigov/grafico</uri>
<description>Tag gerada de gráficos - Desev. por Tiago Fraga</description>
<tag>
<name>graficoDados</name>
<tag-class>br.com.bb.sigov.grafico.GraficoTag</tag-class>
<attribute>
<name>atributos</name>
<required>true</required>
<description>Recebe um objeto do tipo AtributoGrafico</description>
</attribute>
<attribute>
<name>largura</name>
<required>true</required>
</attribute>
<attribute>
<name>altura</name>
<required>true</required>
</attribute>
<attribute>
<name>tipo</name>
<required>true</required>
<description>Qual tipo de gráfico</description>
</attribute>
</tag>
</taglib>
Bom, tanto no faces-config quanto no arquivo TLD, eu não achei erros.
Eu não sei se tenho que fazer alguma coisa no web.xml. Nos tutoriais que eu vi pela net não diz nada a respeito do web.xml.
De qualquer maneira, está aki o meu web.xml:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<context-param>
<param-name>com.sun.faces.verifyObjects</param-name>
<param-value>false</param-value>
</context-param>
<context-param>
<param-name>com.sun.faces.validateXml</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</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>
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>faces/welcomeJSF.jsp</welcome-file>
</welcome-file-list>
</web-app>
Bom, então, esse erro de não realizar o deploy, alguém aki que já fez componentes JSF ou tagLibs, já passou por isso e sabe qual é o problema?
Eu sinceramente não sei o que fazer. A IDE não me acusa erros, e o tomcat só me fornece o log acima.
Muito Obrigado