I. Importation des fichiers JAR
Commmencez par extraire un projet vide et copiez les fichiers JAR nécessaires dans votre projet.
II. Configuration des ficheirs struts.xml et web.xml
1. Configuration du fichier web.xml
Il faut ajouter un filtre Struts dans ce fichier.
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="WebApp_9" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>Struts Blank</display-name>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
</web-app>
2. Création du fichier struts.xml dans le répertoire src
Ce fichier permet de configurer les actions du framework.
<?xml version="1.0" encoding="UTF-8" ?>
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="true" />
<package name="principal" namespace="/" extends="struts-default">
<!-- Correspond à la méthode execute de HomepageAction -->
<action name="accueil" class="com.example.demo.action.HomepageAction">
<!-- Pas besoin de préciser le name quand execute retourne SUCCESS -->
<result>
page_accueil.jsp
</result>
<result name="error">
page_erreur.jsp
</result>
<result name="alternatif">
page_alternatif.jsp
</result>
</action>
<!-- Pour une redirection directe sans traitement, pas besoin de spécifier la classe -->
<action name="contact">
<result>
contact.jsp
</result>
</action>
</package>
</struts>
3. Création d'une classe héritant de com.opensymphony.xwork2.ActionSupport
Dans cette classe, redéfinissez la méthode execute(). Les attributs permettent l'échange de valeurs via les méthodes getter et setter.
package com.example.demo.action;
import com.opensymphony.xwork2.ActionSupport;
public class HomepageAction extends ActionSupport {
private String message;
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
@Override
public String execute() throws Exception {
message += "bienvenue";
return SUCCESS;
}
}
La configuration de base est maintenant terminée. Des ajustements supplémentaires seront nécessaires selon les besoins spécifiques de votre application.