Bonjour à tous,
J'essaie tant bien que mal de coupler JSF et DWR sans succès malgré mes recherches (notamment sur le forum).
Environnement de travail :
- IDE : Eclipse 3.3.0 avec WTP
- Application Server : Jetty Server 6.1
- JSF RI 1.1
- DWR 2.0
Arborescence de mon dossier WebContent :
->WebContent
->index.jsp->home.jsp->WEB-INF->lib-> *.jar (dont dwr.jar et jsf-api.jar et jsf-impl.jar)-> dwr.xml-> faces-config.xml-> web.xml
dwr.xml
faces-config.xml
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 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN" "http://getahead.org/dwr/dwr20.dtd"> <dwr> <init> <creator id="jsf" class="org.directwebremoting.faces.JsfCreator" /> </init> <allow> <create creator="jsf" javascript="DwrBean" scope="session"> <param name="managedBeanName" value="dwrBean"/> <param name="class" value="monPackage.dwrBean"/> </create> </allow> </dwr>
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 <faces-config> <managed-bean> <managed-bean-name>dwrBean</managed-bean-name> <managed-bean-class>monPackage.dwrBean</managed-bean-class> <managed-bean-scope>session</managed-bean-scope> </managed-bean> </faces-config>index.jsp
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 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app id="WebApp_ID"> <display-name>nomDeMonApplication</display-name> <filter> <filter-name>DwrFacesFilter</filter-name> <filter-class>org.directwebremoting.faces.FacesExtensionFilter</filter-class> </filter> <filter-mapping> <filter-name>DwrFacesFilter</filter-name> <url-pattern>*.jsp</url-pattern> </filter-mapping> <!-- DWR Servlet --> <servlet> <servlet-name>dwr-invoker</servlet-name> <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>true</param-value> </init-param> <init-param> <param-name>activeReverseAjaxEnabled</param-name> <param-value>true</param-value> </init-param> </servlet> <!-- Servlet Mapping DWR --> <servlet-mapping> <servlet-name>dwr-invoker</servlet-name> <url-pattern>/dwr/*</url-pattern> </servlet-mapping> <!-- Welcome Files --> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> </welcome-file-list> </web-app>
home.jsp
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>nomDeMonApplication</title> </head> <body> <jsp:forward page="/dwr/home.jsp"/> </body> </html>
Quand je vais sur http://localhost:8080/nomDeMonApplication, je me prends un /dwr/home.jsp not found. DWR fonctionne car en allant sur http://localhost:8080/nomDeMonApplication/dwr j'ai bien mon Bean dwrBean d'affiché.
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 <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %> <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %> <f:view> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>nomDeMonApplication</title> <script type='text/javascript' src='dwr/engine.js'></script> <script type='text/javascript' src='dwr/util.js'></script> </head> <body> <h:outputText value="Hello User!"></h:outputText> </body> </html> </f:view>
Je suis perdu et la doc du site de DWR sur le sujet est vraiment succinte. Toute aide est la bienvenue![]()
Partager