Beispiel für die Integration von Struts 2 + Log4j
In diesem Tutorial zeigen wir Ihnen, wie Sie das log4j-Framework in die Struts 2-Webanwendung integrieren. Alles was Sie tun müssen, ist
-
Fügen Sie
log4j.jar
als Projektabhängigkeit ein -
Erstellen Sie eine log4j.properties-Datei und legen Sie sie im Stammverzeichnis des Klassenpfads ab. Fügen Sie sie mit Maven in den Ordner
resources
ein.
Verwendete Technologien und Werkzeuge:
-
Log4j 1.2.17
-
Streben 2.3.16.3
-
Maven 3
-
Tomcat 6
-
Eclipse Kepler 4.3
1. Projektverzeichnis
Überprüfen Sie die endgültige Projektstruktur.
2. Projektabhängigkeiten
Deklariert die Abhängigkeiten von Struts 2 und log4j:
pom.xml
4.0.0 com.example.common Struts2 war 1.0-SNAPSHOT Struts + Log4j Webapp http://maven.apache.org 1.7 2.3.16.3 1.2.17 org.apache.struts struts2-core ${struts.version} log4j log4j ${log4j.version} Struts2 org.apache.maven.plugins maven-eclipse-plugin 2.9 true false 2.0 org.apache.maven.plugins maven-compiler-plugin 2.3.2 ${jdk.version} ${jdk.version}
3. log4j.properties
Erstellen Sie eine log4j-Eigenschaftendatei und legen Sie sie im Ordnerresources
ab (siehe Schritt 1).
log4j.properties
# Root logger option log4j.rootLogger=ERROR, stdout, file # Redirect log messages to console log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n # Redirect log messages to a log file, support rolling backup file. log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=${catalina.home}/logs/mystruts2app.log log4j.appender.file.MaxFileSize=5MB log4j.appender.file.MaxBackupIndex=10 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
4. Struts 2 Action und Logging
Eine einfache Aktion, um eine Seite zurückzugeben, und zeigt Ihnen, wie Sie die Nachrichtenprotokollierung mit log4j durchführen.
WelcomeAction.java
package com.example.common.action; import org.apache.log4j.Logger; import com.opensymphony.xwork2.ActionSupport; public class WelcomeAction extends ActionSupport { private static final long serialVersionUID = 1L; //get log4j private static final Logger logger = Logger.getLogger(WelcomeAction.class); public String execute() throws Exception { // logs debug message if (logger.isDebugEnabled()) { logger.debug("execute()!"); } // logs exception logger.error("This is Error message", new Exception("Testing")); return SUCCESS; } }
5. Struts 2 Konfiguration
Struts 2-Konfigurations- und JSP-Seiten, falls Sie interessiert sind.
struts.xml
pages/success.jsp
web.xml
Struts 2 Web Application struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /*
pages/success.jsp
<%@ taglib prefix="s" uri="/struts-tags" %>Struts 2 + Log4j integration example
6. Demo
Führen Sie die Struts 2-Webanwendung aus und greifen Sie auf die Willkommensaktion zu.
6.1 Alle Protokollierungsnachrichten werden in der Konsole angezeigt.
Abbildung: Eclipse-Konsole
6.2 Außerdem wird eine Protokolldatei im Protokollordner von Tomcat erstellt.
Figure : D:pache-tomcat-6.0.37\logs\mystruts2app.log
Quellcode herunterladen
Laden Sie es herunter -Log4jAndStruts2Example.zip (20 KB)