Bonjour a tous, je veux m'initier à Trinidad et voilà que j'ai une exception que j'ai pas pu résoudre
GRAVE: Exception au démarrage du filtre trinidad
java.lang.NoClassDefFoundError: javax/faces/context/ExternalContext
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Class.java:2357)
at java.lang.Class.getConstructor0(Class.java:2671)
at java.lang.Class.newInstance0(Class.java:321)
at java.lang.Class.newInstance(Class.java:303)
at org.apache.myfaces.trinidad.webapp.TrinidadFilter.init(TrinidadFilter.java:53)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:221)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:302)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:78)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3635)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4222)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:736)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1014)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:448)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)
at org.apache.catalina.startup.Catalina.start(Catalina.java:552)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)
apparemment j'ai un conflit entre 2 ou plusieurs jars
voici mon web.xml
Code xml : 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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
<?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>de.vogella.jsf.trinidad.first</display-name>
	<welcome-file-list>
		<welcome-file>index.html</welcome-file>
		<welcome-file>index.htm</welcome-file>
		<welcome-file>index.jsp</welcome-file>
		<welcome-file>default.html</welcome-file>
		<welcome-file>default.htm</welcome-file>
		<welcome-file>default.jsp</welcome-file>
	</welcome-file-list>
 
 
	<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>
		<url-pattern>*.jsf</url-pattern>
	</servlet-mapping>
	<context-param>
		<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
		<param-value>server</param-value>
	</context-param>
 
 
	<!--
		Trinidad also supports an optimized strategy for caching some view
		state at an application level, which significantly improves
		scalability. However, it makes it harder to develop (updates to pages
		will not be noticed until the server is restarted), and in some rare
		cases cannot be used for some pages (see Trinidad documentation for
		more information)
	-->
	<context-param>
		<param-name>org.apache.myfaces.trinidad.USE_APPLICATION_VIEW_CACHE</param-name>
		<param-value>false</param-value>
	</context-param>
 
	<!--
		If this parameter is enabled, Trinidad will automatically check the
		modification date of your JSPs, and discard saved state when they
		change; this makes development easier, but adds overhead that should
		be avoided when your application is deployed
	-->
	<context-param>
		<param-name>org.apache.myfaces.trinidad.CHECK_FILE_MODIFICATION</param-name>
		<param-value>true</param-value>
	</context-param>
 
	<!--
		Enables Change Persistence at a session scope. By default, Change
		Persistence is entirely disabled. The ChangeManager is an API, which
		can persist component modifications (like, is a showDetail or tree
		expanded or collapsed). For providing a custom Change Persistence
		implementation inherit from the Trinidad API's ChangeManager class. As
		the value you have to use the fullqualified class name.
	-->
	<context-param>
		<param-name>org.apache.myfaces.trinidad.CHANGE_PERSISTENCE</param-name>
		<param-value>session</param-value>
	</context-param>
 
	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>/WEB-INF/applicationContext.xml</param-value>
	</context-param>
	<context-param>
		<param-name>javax.faces.CONFIG_FILES</param-name>
		<param-value>/WEBINF/faces-config.xml</param-value>
	</context-param>
 
 
	<filter>
		<filter-name>trinidad</filter-name>
		<filter-class>org.apache.myfaces.trinidad.webapp.TrinidadFilter</filter-class>
	</filter>
 
	<filter-mapping>
		<filter-name>trinidad</filter-name>
		<servlet-name>faces</servlet-name>
	</filter-mapping>
 
	<listener>
		<listener-class>
			org.springframework.web.context.ContextLoaderListener
		</listener-class>
	</listener>
	<!-- Faces Servlet -->
	<servlet>
		<servlet-name>faces</servlet-name>
		<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
	</servlet>
 
	<!-- resource loader servlet -->
	<servlet>
		<servlet-name>resources</servlet-name>
		<servlet-class>org.apache.myfaces.trinidad.webapp.ResourceServlet</servlet-class>
	</servlet>
 
	<servlet-mapping>
		<servlet-name>resources</servlet-name>
		<url-pattern>/adf/*</url-pattern>
	</servlet-mapping>
 
 
 
</web-app>
mon faces-config.xml
Code xml : 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
<?xml version="1.0" encoding="UTF-8"?>
 
<faces-config 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_1.xsd"
	version="1.1">
 
	<application>
		<default-render-kit-id>
			org.apache.myfaces.trinidad.core
		</default-render-kit-id>
	</application>
	<application>
		<variable-resolver>
			org.springframework.web.jsf.DelegatingVariableResolver
		</variable-resolver>
		<locale-config />
	</application>
 
 
</faces-config>
mon trinidad-config.xml
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
<?xml version="1.0" encoding="UTF-8"?>
<trinidad-config xmlns="http://myfaces.apache.org/trinidad/config">
<debug-output>true</debug-output>
<accessibility-mode>default</accessibility-mode>
<skin-family>minimal</skin-family>
</trinidad-config>
et la liste de mes jars
antlr-2.7.6.jar
asm.jar
asm-attrs.jar
c3p0-0.9.0.jar
cglib-2.1.3.jar
commons-collections-2.1.1.jar
commons-dbcp.jar
commons-logging-1.0.4.jar
commons-pool.jar
dom4j-1.6.1.jar
hibernate3.jar
hibernate-annotations.jar
hibernate-entitymanager.jar
hibernate-tools.jar
javassist.jar
jboss-archive-browsing.jar
jta.jar
persistence.jar
postgresql-8.2-509.jdbc3.jar
spring.jar
spring-agent.jar
trinidad-api-1.0.11.jar
trinidad-impl-1.0.11.jar
Merci