Bonjour,
Je développe une application Web Java en utilisant RichFaces 4 pour l'interface graphique ...
Tout se passait à merveille jusqu'à ce que j'ai voulu insérer une barre horizontale : <rich:separator>, une exception est levée en disant que ce tag n'existe pas !!!
Et pourtant ! J'utilise d'autres composants qui eux passent !!! Ex : "<rich:panel>" qui s'affiche bel et bien !!!
Mais commençons par le début ... voici mon environnement :
- Linux 2.6 ;
- Java 1.6 ;
- JBoss 6.0.0-M4 en mode "default" ;
- JSF 2 (Mojarra 2.0.2) ;
- Facelet ;
- RichFaces 4.0.0-M1
- Eclipse Helios
Dans mon WEB-INF/lib j'ai :
- cssparser-0.9.5.jar
- jboss-faces.jar
- jsf-api.jar
- jsf-impl.jar
- richfaces-commons-api-4.0.0.20100715-M1.jar
- richfaces-components-api-4.0.0.20100715-M1.jar
- richfaces-components-impl-4.0.0.20100715-M1.jar
- richfaces-components-ui-4.0.0.20100715-M1.jar
- richfaces-core-api-4.0.0.20100715-M1.jar
- richfaces-core-impl-4.0.0.20100715-M1.jar
L'erreur suivante suivante est affichée dans la page web :
JBoss relève l'erreur suivante mais je ne sais pas si elle e un lien avec mon problème vu que les autres composants s'affichent correctement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 javax.faces.view.facelets.TagException: /templates/module.xhtml @32,67 <rich:separator> Tag Library supports namespace: http://richfaces.org/rich, but no tag was defined for name: separator at com.sun.faces.facelets.compiler.CompilationManager.pushTag(CompilationManager.java:285) at com.sun.faces.facelets.compiler.SAXCompiler$CompilationHandler.startElement(SAXCompiler.java:225) at org.apache.xerces.parsers.AbstractSAXParser.startElement(Unknown Source) at org.apache.xerces.parsers.AbstractXMLDocumentParser.emptyElement(Unknown Source) at org.apache.xerces.impl.dtd.XMLDTDValidator.emptyElement(Unknown Source) at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source) at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source) at org.apache.xerces.parsers.XMLParser.parse(Unknown Source) at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source) at org.apache.xerces.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source) at org.apache.xerces.jaxp.SAXParserImpl.parse(Unknown Source) at javax.xml.parsers.SAXParser.parse(SAXParser.java:195) at com.sun.faces.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:385) at com.sun.faces.facelets.compiler.SAXCompiler.doCompile(SAXCompiler.java:361) at com.sun.faces.facelets.compiler.Compiler.compile(Compiler.java:117) at com.sun.faces.facelets.impl.DefaultFaceletFactory.createFacelet(DefaultFaceletFactory.java:331) at com.sun.faces.facelets.impl.DefaultFaceletFactory.getFacelet(DefaultFaceletFactory.java:215) at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:359) at com.sun.faces.facelets.impl.DefaultFacelet.include(DefaultFacelet.java:339) at com.sun.faces.facelets.impl.DefaultFaceletContext.includeFacelet(DefaultFaceletContext.java:191) at com.sun.faces.facelets.tag.ui.CompositionHandler.apply(CompositionHandler.java:149) at com.sun.faces.facelets.compiler.NamespaceHandler.apply(NamespaceHandler.java:86) at com.sun.faces.facelets.compiler.EncodingHandler.apply(EncodingHandler.java:75) at com.sun.faces.facelets.impl.DefaultFacelet.apply(DefaultFacelet.java:145) at com.sun.faces.application.view.FaceletViewHandlingStrategy.buildView(FaceletViewHandlingStrategy.java:716) at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:106) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101) at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:313) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:324) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242) at org.jboss.resteasy.plugins.server.servlet.FilterDispatcher.doFilter(FilterDispatcher.java:63) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:274) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:181) at org.jboss.modcluster.catalina.CatalinaContext$RequestListenerValve.event(CatalinaContext.java:285) at org.jboss.modcluster.catalina.CatalinaContext$RequestListenerValve.invoke(CatalinaContext.java:261) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:88) at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:93) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.invoke(ActiveRequestResponseCacheValve.java:53) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:362) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:951) at java.lang.Thread.run(Thread.java:636)
Mon web.xml :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 19:10:45,882 GRAVE [javax.enterprise.resource.webcontainer.jsf.config] Unable to access url jndi:/localhost/HarmonyWeb/WEB-INF/faces-config.xml. Monitoring for this resource will no longer occur.
La ligne de mon fichier xhtml qui me provoque l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>HarmonyWeb</display-name> <welcome-file-list> <welcome-file>index.xhtml</welcome-file> </welcome-file-list> <servlet> <description></description> <display-name>AccessTest</display-name> <servlet-name>AccessTest</servlet-name> <servlet-class>x.nexus.harmony.planner.tests.AccessTest</servlet-class> </servlet> <servlet-mapping> <servlet-name>AccessTest</servlet-name> <url-pattern>/AccessTest</url-pattern> </servlet-mapping> <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>*.xhtml</url-pattern> <url-pattern>/faces/*</url-pattern> </servlet-mapping> <context-param> <param-name>javax.faces.DEFAULT_SUFFIX</param-name> <param-value>.xhtml</param-value> </context-param> <context-param> <param-name>javax.faces.PROJECT_STAGE</param-name> <param-value>Development</param-value> </context-param> <context-param> <param-name>org.richfaces.SKIN</param-name> <param-value>blueSky</param-value> </context-param> </web-app>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:a4j="http://richfaces.org/a4j" xmlns:rich="http://richfaces.org/rich"> <h:head> <title>Harmony</title> <link rel="stylesheet" type="text/css" href="../css/style.css" /> </h:head> <h:body> <f:view> <div class="mainmenu"> <rich:panel height="100%"> Menu principal : <a href="../planner/">Planner</a> </rich:panel> </div> <div class="logo"> <rich:panel> Logo </rich:panel> </div> <div class="separator"> <hr /> <rich:separator lineType="beveled" height="20" width="100%" /> </div> <div class="menu"> <ui:insert name="menu" /> </div> <div class="module"> <ui:insert name="module"> Bienvenue sur Harmony </ui:insert> </div> <div class="footer"> <rich:panel> Harmony v1.0 </rich:panel> </div> </f:view> </h:body> </html>
Mais alors le pire, c'est que quand dans Eclipse je tape <rich: et que je fais CTRL+ESPACE pour qu'il complète automatiquement, il ne trouve que la moitié des composant rich: !!! pas de rich:separator, pas de rich:tabPanel ...
Je comprends vraiment pas !
Si quelqu'un sait ce qu'il se passe je suis preneur de toute solution !!!
Merci à tous !!!
Partager