Problème d'utilisation de la Servlet Action
Bonjour, je bosse sur un projet en Struts, et je souhaites donc créer mes premières classes et utiliser la Servlet Action.
Voila le problème: je retombes toujours sur une page blanche lorsque je souhaites executer mon action.
Je tapes donc l'URL : http://..../appli/test.do
et là :page blanche.J'ai vérifié mon fichier struts-config, il est propre et sans erreurs.Le voici:
Code:
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
|
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE struts-config PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 1.2//EN"
"http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">
<struts-config>
<action-mappings>
<action
path="/test"
type="fr.test.Test"
validate="true" >
<forward name="success" path="/jsp/accueil.jsp"/>
</action>
</action-mappings>
<controller processorClass="org.apache.struts.tiles.TilesRequestProcessor"/>
<message-resources parameter="MessageResources" />
<!-- =================================================== Validator plugin -->
<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
<set-property
property="pathnames"
value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml"/>
</plug-in>
</struts-config> |
Voici la classe test située dans le package fr:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
package fr.test;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionForward;
public class Test extends Action{
public ActionForward execute(ActionMapping mapping,HttpServletRequest request,HttpServletResponse response)
{
return mapping.findForward("success");
}
} |
La JSP associée:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//FR"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Accueil Test</title>
<meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
</head>
<body>
Bienvenue
</body>
</html> |
Le problème d'après moi vient de la configuration; en effet la servlet action ne semble pas executer la classe Test.java. Si je rajoute du code JAVA dans cette classe, je n'ai jamais d'erreur lors de l'execution de test.do.
De plus voici mon fichier Web.xml:
Code:
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
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
<web-app>
<taglib>
<taglib-uri>/WEB-INF/struts-bean.tld</taglib-uri>
<taglib-location>/WEB-INF/tld/struts-bean.tld</taglib-location>
</taglib>
<context-param>
<param-name>NOM_APPLICATION</param-name>
<param-value>REMPAGA</param-value>
</context-param>
<context-param>
<param-name>NOM_POOL</param-name>
<param-value>REMPAGA</param-value>
</context-param>
<context-param>
<param-name>NOM_DATA_SOURCE</param-name>
<param-value>REMPAGA_DataSource</param-value>
</context-param>
<context-param>
<param-name>SERVEUR_APPLICATION</param-name>
<param-value>WEBLOGIC</param-value>
</context-param>
<context-param>
<param-name>PROFIL</param-name>
<param-value>AGENT</param-value>
</context-param>
<context-param>
<param-name>RACINE</param-name>
<param-value>c:/appli/grh1/conf/rempaga/</param-value>
</context-param>
<context-param>
<param-name>LOGS</param-name>
<param-value>c:/appli/grh1/logs/rempaga/</param-value>
</context-param>
<display-name>REMPAGA</display-name>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>
org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<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>
<mime-mapping>
<extension>css</extension>
<mime-type>text/css</mime-type>
</mime-mapping>
</web-app> |
Enfin j'ai un doute sur le classpath.peut-etre qu'il manque une indication dans ce dernier.
Code:
1 2 3 4 5 6 7 8
|
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="WebApp/src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/j2re1.4.2_13"/>
<classpathentry exported="true" kind="con" path="org.eclipse.jst.j2ee.internal.web.container"/>
<classpathentry kind="output" path="WebApp/WEB-INF/classes"/>
</classpath> |
Enfin voici un apercu de mon arborescence. Lors du déploiement, je prends le dossier "WebApp" que je copies/colles dans mon Weblogic.Peut etre que j'oublie de prendre certains fichiers importants au passage?
http://img385.imageshack.us/my.php?i...nstitreuz7.jpg
Voila, j'espère que vous pourrez m'aider car la je sèche ...grave et moi qui aime le JAVA:( je commence a desesperer :?