Servlets und PrintWriter

Status
Nicht offen für weitere Antworten.

javanse

Mitglied
Hallo!

Bin neu hier und habe auch gleich eine Frage...
Ich programmiere gerade ein umfangreicheres Servlet, das sich bei den Methoden verschiedener eigener Klassen bedient. In meiner doGet-Methode habe ich mir einen PrintWriter erstellt, damit ich Ausgaben an den Browser schicken kann.

Code:
                res.setContentType("text/html");
                PrintWriter out = res.getWriter();

Was mich nervt ist jetzt, dass andere Klassen diesen PrintWriter nicht kennen und ich ihn jedesmal wenn ich eine Instanz einer anderen Klasse erzeuge dem Kontruktor mit übergeben muss.

Beispiel:

Code:
                DataManager dm = new DataManager(out);

Der Konstruktor vom DataManager sieht dann z.B. so aus:

Code:
public class DataManager {
        
        // globale Variablen
        private PrintWriter out;
        private static Connection connection = null;
        
        
        
        // Konstruktor
        public DataManager(PrintWriter out) {
                
                try {
                        
                        this.out = out;
                        
                        // Startup-Meldung
                        out.print("Starting DataManager()... ");

usw.

Gibt es da eine elegantere Möglichkeit diesen PrintWriter global für alle Klassen verfügbar zu machen?


Gruß,
javanse
 

Bleiglanz

Gesperrter Benutzer
nein, das ist unmöglich

der PrintWriter ist ja nur für die Lebensdauer eines Requests sichtbar, du kannst ihn also nirgendwo "hinspeichern"

überleg dir lieber ein besseres Design, warum sollte z.B. der DataManager irgendwas vom "Ausdrucken" wissen


besser:

=> deine Hilfsklassen liefern dir "Java Objekte"

=> und dann gibts welche ("View"), die das mit Hilfe eines Printwriters in HTML rausschreiben
 

javanse

Mitglied
Hi!

:D ui das ging ja schnell! Generell hast Du Recht und der DataManager sollte nichts mit Ausgaben zu tun haben. Allerdings möchte ich gerne eine Möglichkeit haben für Debugging-Zwecke in jeder Klasse ab und zu mal eine Variable ausgeben zu können. Daher wollte ich etwas haben, auf das alle Klassen global zugreifen können.

Irgendeine Idee, wie ich Statusmeldungen und Debugzeugs zwischendurch ausgeben kann, ohne dass ich jetzt extra den PrintWriter in alle Klassen einschleifen muss?


Gruß, javanse
 

Bleiglanz

Gesperrter Benutzer
System.out.println

schreibt beispielsweise beim tomcat einfach in logfile (schau mal ins Catalina-Verzeichnis in "log")

oder du nimmst gleich log4j oder sowas...


was anderes ists natürlich, wenn du diese Ausgaben im Html haben willst
 

KSG9|sebastian

Top Contributor
dann nimm ne logging engine und speicher von mir aus in nen temp ordner (System.getProperty("java.io.tmpdir") müsste es sein) und schreib dir noch ein Servlet welches die log-datei als HTML ausgibt.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
K Servlets Allgemeines EE 1
B Intellij + WebSphere, Servlets aufrufen Allgemeines EE 1
S JSP, JSF Servlets etc. Empfehlung Allgemeines EE 13
aze Eclipse Java EE Web Project:Wo liegen die Servlets ? Allgemeines EE 4
c_sidi90 Gute Bücher/Tutorials für Einstieg in JSP/Servlets Allgemeines EE 3
A Startseite bei Servlets Allgemeines EE 2
R Sourcen einbinden von J2EE bzw auch für Servlets in Eclipse Allgemeines EE 8
W Übliche Art "lokale" Parameter an Servlets zu über Allgemeines EE 2
D AJAX oder Servlets Allgemeines EE 6
J Sicherheit von Servlets Allgemeines EE 3
G Response bei Servlets Allgemeines EE 5
K Sriplets & Servlets: Offline Projekt auf Server realisie Allgemeines EE 2
M Servlets und Webcrawler Allgemeines EE 4
D JSP/Servlets Buchempfehlung Allgemeines EE 11
C Servlets in Eclipse ausführen Allgemeines EE 5
D Servlets richtig verstehen Allgemeines EE 23
A Servlets: Service-Methoden generell Allgemeines EE 2
I JBOSS IDE EJB 3.0 Servlets JSP Applikation --> JSF sinnvo Allgemeines EE 2
M Servlets | work - Klassen nicht im WAR File Allgemeines EE 5
J Bean in der init-Methode des Servlets instanzieren Allgemeines EE 9
T Servlets: doGet, doPost und service Allgemeines EE 4
M Hosting (inkl. Servlets) Allgemeines EE 25
P JSP Servlets/ Java Klassen für FTP FileUpload (Bilder) + DB Allgemeines EE 3
D Controller-Klassen eines Servlets testen mit JUnit Allgemeines EE 3
M Kommunikation zwischen zwei Servlets Allgemeines EE 5
S gibts ne spezielle möglichkeit applets mit servlets auszugeb Allgemeines EE 3
S aufrufende url bei servlets herausfinden Allgemeines EE 4
I Zusammenspiel Portlets, Servlets und JSPs Allgemeines EE 3
Z Property Datei in Servlets Allgemeines EE 2
S Fragen zu: Servlets, Struts & Hibernate Allgemeines EE 9
S Umlaute und Servlets Allgemeines EE 5
F Servlets und JSP Allgemeines EE 6
P E-mails alias über Servlets einrichten bei Strato- Allgemeines EE 16
G Verständnisfrage zu EJB vs. Servlets Allgemeines EE 3
A Servlets bei Tomcat-Startup starten Allgemeines EE 5
L SVG & Servlets Allgemeines EE 9
J Buchempfehlung: Servlets, JSP, Struts, JSTL Allgemeines EE 3
P Wie Log4J in JSP's, Beans und Servlets am besten einbinden Allgemeines EE 2
M Probleme beim Performancetuning des Servlets Allgemeines EE 2
C JSP funzt in Tomcat, Servlets nicht Allgemeines EE 5
G Servlets und Bilder Allgemeines EE 13
G JSP und Servlets (einfaches MVC-Modell) Allgemeines EE 2
G Mehrere Probleme mit Servlets/Java Allgemeines EE 15
T Grundlegendes Verständnis - Beans, JSP und Servlets Allgemeines EE 3
F Servlets aufrufen Allgemeines EE 5
thE_29 Allg. Frage zu JSP/Servlets Allgemeines EE 2
T Jsp die mehrere Servlets aufruft erzeugt Fehler Allgemeines EE 10
F relativer Pfad in Servlets für Dateien Allgemeines EE 2
R Servlets in ECLIPSE programmieren Allgemeines EE 3
X servlets und character encoding Allgemeines EE 4
A Frage zu Servlets Allgemeines EE 5
M Cookies mit Servlets Allgemeines EE 6
H Servlets nacheinander abarbeiten Allgemeines EE 3
B Servlets werden gemappt --- aus und schluß, so ist es! Allgemeines EE 4
M Fragen zu Servlets Allgemeines EE 5
T Zwei Buttons in derselben FORM rufen unterschied. Servlets a Allgemeines EE 10
K Sun Application Server - Servlets laufen nicht Allgemeines EE 2
J Connectionpools mit BEA und Servlets Allgemeines EE 4
T Servlets und Dateizugriff auf dem Server Allgemeines EE 5
T Servlets in eclipse schreiben !! Allgemeines EE 5
S Servlets zum laufen bringen mit J2EE Allgemeines EE 3
A Leerzeilen in HTML-Seite, nach Erzeugen des Servlets Allgemeines EE 3

Ähnliche Java Themen

Neue Themen


Oben