Configuration de Struts 2

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.

Étiquettes: struts2 java-ee framework mvc xml-configuration

Publié le 1 juin à 17h22