Exemple d’intégration Struts Log4j

Exemple d'intégration Struts + Log4j

struts 1 and log4j

Dans ce tutoriel, nous allons vous montrer comment intégrer le framework log4j à l'application web classique Struts 1.3.x. Il n'y a pas de travaux supplémentaires, incluez simplement leslog4j.jar et créez un fichierlog4j.xml oulog4j.properties et placez-le à la racine du chemin de classe (pour Maven, placez-le dans le dossier resources).

Technologies et outils utilisés:

  1. Log4j 1.2.17

  2. Struts 1.3.10

  3. Maven 3

  4. Tomcat 6

  5. Eclipse Kepler 4.3

1. Répertoire des projets

Passez en revue la structure finale du projet.

struts1-log4j-directory

2. Dépendances du projet

Déclare les dépendances Struts et log4j:

pom.xml

    
        1.3.10
        1.2.17
    

    

        
        
            org.apache.struts
            struts-core
            ${struts.version}
        

        
            org.apache.struts
            struts-taglib
            ${struts.version}
        

        
            org.apache.struts
            struts-extras
            ${struts.version}
        

        
        
            log4j
            log4j
            ${log4j.version}
        

        
        
            javax.servlet
            servlet-api
            2.5
        
    

3. log4j.xml

Créez un fichier XML log4j et placez-le dans le dossierresources, reportez-vous à l'étape 1. Il indique à log4j de rediriger le message de journalisation vers la console et un fichier.

log4j.xml





  
  
    
        
    
  

  
  
    
    
    
    
    
        
    
  

  
    
    
    
  

4. Journalisation des messages

Une action simple pour renvoyer une page et vous montre comment faire la journalisation avec log4j.

WelcomeAction.java

package com.example.common.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.log4j.Logger;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class WelcomeAction extends Action{

    //Get a logger
    private static final Logger logger = Logger.getLogger(WelcomeAction.class);

    public ActionForward execute(ActionMapping mapping,ActionForm form,
        HttpServletRequest request,HttpServletResponse response)
        throws Exception {

        //logs debug
        if(logger.isDebugEnabled()){
            logger.debug("WelcomeAction.execute()");
        }

        //logs exception
        logger.error("This is Error message", new Exception("Testing"));

        return mapping.findForward("success");

    }

}

5. Configuration de Struts 1

Une configuration simple Struts 1 et etc.

web.xml



    Log4j + Struts Web Application

    
        action
        
            org.apache.struts.action.ActionServlet
        
        
            config
            
                /WEB-INF/struts-config.xml
            
        
        1

    

    
        action
        *.do
    

struts-config.xml






    

        

            

        
    

pages/welcome.jsp

<%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>




Struts 1.x + Log4j framework

6. Demo

Exécutez l'application Web Struts 1 et accédez à l'action de bienvenue.

struts1-log4j-demo

6.1 Eclipse console.

struts1-log4j-console

6.2 Furthermore, a logging file will be created in the Tomcat’s logs folder.

struts1-log4j-file

Figure : D:pache-tomcat-6.0.37\logs\myStruts1App.log

Télécharger le code source

Téléchargez-le -Log4jAndStrutsExample.zip (11 Ko)