log4j mit konfigurationsfile aus jsp aufrufen

schlumsch

Aktives Mitglied
Hallo Gemeinde,

ich ein Problem mit log4j, eventuell kann mir da jemand weiter helfen.


Ich habe eine jsp Anwendung. In meinem Bean gebe ich eine Konfigurationsdatei für log4j an und erhalte keinen Fehler beim Start der Anwendung

Java:
private  final String loggingPropertyFile = "Logging.properties";
...
public static Logger logger = Logger.getLogger(meineKlasse.class);
...
	public MeineKlasse()  {
		super();
		// logger:
		PropertyConfigurator.configureAndWatch(loggingPropertyFile);
		logger.info("huhu");

Nun versuche ich das gleiche in meiner jsp, allerdings ohne Erfolg. Wenn ich in der jsp versuche
mit
PropertyConfigurator.configureAndWatch(loggingPropertyFile);
meine KonfigDatei zu laden erhalte ich überhaupt keine logs. Dabei sei erwähnt das ich definitiv in meinem Bean die Methoden mit loggings über die jsp aufrufe.

Wenn ich nun den code aus meiner oben deklarierten Konfigurationsdatei nehme und in das standardfile "log4j.properties" lege und in meiner jsp ein
Java:
	org.apache.log4j.Logger logger = org.apache.log4j.Logger.getLogger("Application");
	logger.info("info huhu aus der jsp");
mache erhalte ich wunderbar meine logs, aus Bean und jsp. Die Angaben aus meinem Konfigfile sind
insoweit ok, da er mir auch das dort eingestellte logfile erstellt. Was mache ich da falsch? Wie kann ich auch in der jsp die oben angeführte logging.properties als Konfig angeben?


...ein kleines Update... Habe gerade versucht den in meinem Bean deklarierten
Logger auch aus der jsp zu nutzen, quasi in der jsp:
Java:
org.apache.log4j.Logger logger =meineKlasse.getLogger();
Ebenfalls ohne Erfolg, sobald ich kein File namens log4j.properties habe passiert garnix in Sachen log...



Danke im Voraus, Gruß
 
Zuletzt bearbeitet:
M

maki

Gast
In einer JSP seite sollte auhc nicht geloggt werden, genausowenig sollte in einer JSP Datei Javacode stehen.
 

schlumsch

Aktives Mitglied
Hmm, naja also ich sehe zwar ein das javacode in einer jsp nicht wirklich schön ist. Aber wenn ich Methoden aufrufen will, Rückgabeparameter teste und dementsprechend die Anzeigen auf der jsp steuere ... wie soll ich das ohne javacode in der jsp tun? genau das sind auch die Dinge die ich gerne loggen möchte, zB meine Rückgaben.

thx
 
M

maki

Gast
Sowas macht man doch (nicht mehr) in JSPs :)

Suche mal nach MVC bzw. Model 2 im Zusammenhang mit JSPs, da wirst du dann rausfinden, das JSPs nur für die Darstellung verantwortlich sind, sonst nix.
Die Daten besorgt der Controller (Servlet/Javaklasse), hängt sie in den Request und leitet das alles weiter an die JSP, dann brauchst du keinen Javacode mehr in JSPs, Taglibs wie die JSTL reichen vollkommen aus.
 

mvitz

Top Contributor
Das alles sollte man im Controller machen (dort kannst du dann auch loggen) und der JSP als Parameter übergeben. Die JSP sollte dann die übergebenen Dinge nur noch anzeigen und dazu maximal kleinere if/else und Schleifen verwenden.
 

schlumsch

Aktives Mitglied
Ja das ist im Endeffekt ja schon das was ich derzeit tue. Sicher benötige ich nicht dringend ein logging in den jsps, die logs kann ich natürlich auch in den von mir aufgerufenen Methoden im servlet/ bean ausgeben. Soweit ok, thx.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M JSF Logging Log4j in JSF Web Tier 1
reibi Servlet log4j : logDatei angeben Web Tier 15
J Log4j problem Web Tier 7
F Log4J Konfiguration in .war Datei Web Tier 4
S Button klick soll Java methode aufrufen Web Tier 2
M JSF JSF: Methode bei versteckt aufrufen & Parameter übergeben Web Tier 6
N RequestDispatcher: include-Aufruf einer jsp scheitert nach mehreren forward-Aufrufen Web Tier 1
V Mittels JavaScript Methode aufrufen Web Tier 23
I Im PhaseListener Service Methode aufrufen Web Tier 21
S Servlet automatisch aufrufen Web Tier 2
S EJB Funktion in JSP aufrufen? Web Tier 2
S Jsp: javascript und javamethode aufrufen Web Tier 17
H Probleme beim Aufrufen von Java- oder Servlet-Methoden aus Javascript Web Tier 2
M Body onUnload Java Methode aufrufen Web Tier 13
K bean methode von jslt aufrufen Web Tier 7
I Eine Bean von einer anderen Bean aufrufen Web Tier 2
E Servlet mit einem Link aufrufen? Web Tier 13
T Servlet soll sich selbst aufrufen. Web Tier 7
A Tomcat: beim Start des Servers einmalige Aktion aufrufen (Problem gelöst) Web Tier 2
E Methode einer Bean aus anderer Bean aufrufen Web Tier 10
S JavaScript-Funktion aufrufen mit a4j-support?? Web Tier 3
S JSF: Methode mit Parametern aufrufen Web Tier 7
D MultiActionController von Spring ohne action und / aufrufen Web Tier 3
G Javascriptfunction aus einem Sucess-path aufrufen Web Tier 2

Ähnliche Java Themen

Neue Themen


Oben