Servlet - Datei auf Server speichern und Ausgabe

Status
Nicht offen für weitere Antworten.
J

Johnny

Gast
Hallo!

Also ich habe folgendes Problem und zwar bei der Ausgabe eines Bildes in einem Servlet. Die erste Methode unten soll ein Bild von meiner Datenbank einlesen und auf der Festplatte speichern (eigentlich will ich es auf dem TomcatServer speichern, aber wo und wie (relativ) speichert man Daten von einem Servlet auf Tomcat?). Jedenfalls schreibt die Methode ein File in den Pfad den ich bestimmt habe. Die Datei hat auch die genau die selbe Größe. Nur, man kann sie sich nicht anzeigen lassen (mit Grafikprogrammen). Wenn man sich die Datei mit dem Texteditor anschaut, sind die ersten und letzten Zeichen gleich. Nachher habe ich allerdings gesehen, daß die Breite des gespeicherten Bildes von der des Originals abweicht - ist etwas kleiner - hat jemand vielleicht eine Idee, worauf das zurückzuführen ist?. Ich nehme an, daß das der Grund ist für die Probleme beim Anzeigen. Ps: Die Bildausgabe mit dem PrintWriter, also ohne abspeichern in eine Datei, statt dem FileWriter funktioniert tadelos.

Und mein zweites Problem (das aber sicher einfach ist) - mit der zweiten Methode möchte ich dann das Bild anzeigen - ist klar, wenn ich eines nehme, das nicht funktioniert, daß dann nichts angezeigt wird, aber der Code funktioniert auch nicht, wenn ich "funktionierendes Bild nehme.

Danke im voraus

johnny


Code:
public void retrievedRsToFileonServer(PrintWriter out, ResultSet rs, String colName) throws SQLException, IOException
		{
				
			if(rs.next())
			{
			
			InputStream in = rs.getBinaryStream(colName);
			
			BufferedInputStream bis =  new BufferedInputStream(in);
			
			
			File f = new File("C:\\Dokumente und Einstellungen\\All Users\\Dokumente\\Programme\\Tomcat 4.1\\server\\webapps\\manager\\serverSavePlace\\hor.gif");
			
			FileWriter fw = new FileWriter(f);
			BufferedWriter bw = new BufferedWriter(fw);
			
			
			//out.println(f.getAbsolutePath());
		
			
					
			
			int c;
			while((c = (int)bis.read())!=-1)
			{
					
					bw.write(c);		
					
			}

			bis.close();
			bw.flush();
			bw.close();
	
		}
				
					
	}
		
	public void pictureDisplay(PrintWriter pw)
	{
		res.setContentType("text/html");
		pw.write("<img src = \"C:\\Dokumente und Einstellungen\\All Users\\Dokumente\\Programme\\Tomcat 4.1\\server\\webapps\\manager\\serverSavePlace\\hor.gif\">a</img>");
		
		
	}
 

bambi

Bekanntes Mitglied
Hi, hab' gerade mal ein wenig rumgespielt: bei mir laeuft's mit
Code:
<img src = "H:\picsTest\minus.bmp">
Es laeuft aber nur auf dem MSIE - bei Firefox bekomme ich auch kein Bild angezeigt.
Welchen Browser hast Du? Versuch's mal mit IE...

Muesste aber doch gehen, oder? Mit Firefox bekomme ich mit absoluter Pfadangabe keine Ausgabe
- mit relativer iss alles kein Problem... Merkwuerdig, merkwuerdig - mach ich was falsch
(hab' meherere Varianten getestet - auch "/", ...) ?!?! :bahnhof:

Warum nimmst Du nicht 'ne relative Pfadangabe - iss doch eh meistens besser -
besonders wenn's dann auf den Server kommt...
 

Bleiglanz

Gesperrter Benutzer
Arbeite beim File mit context.getRealPath("/") und beim image mit src = \"../serverSavePlace/hor.gif\"

=> alles soll relativ sein, damit deine Webapp auch mal woanders läuft, der "absolute Pfad" sollte nirgends auftauchen

UND
Code:
         FileWriter fw = new FileWriter(f);
         BufferedWriter bw = new BufferedWriter(fw);
du darfst für binäre Daten keinen Writer nehmen! der macht deine daten kaputt!! lies die API java.io.*
 

johnny

Neues Mitglied
Hallo!

Danke - das mit dem Bild in Datei schreiben funktioniert jetzt bei mir dank einem FileOutputStream tadellos. Nur mit dem relativen Speichern hats mich. Was ist context (muß ich das gleichnamige Interface implementieren) für ein Objekt? Kannst mir das kurz noch etwas genauer erklären?
 

meez

Top Contributor
Irgendwie so:


Code:
ServletContext ctx = super.getServletcontext();
File f = new File(ctx.getRealPath() + "/manager/serverSavePlace/hor.gif");
 
J

Johnni

Gast
danke, da war ich vorher eh knapp dran - mich hat nur Context und ServletContext verwirrt und, daß get RealPath noch einen String verlangt... naja jetzt funktioniert jedenfalls das ganze Werkl und mein Firefox zeigts auch an - Danke für die Hilfe
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
I eine Klasse aus der Jar-Datei aus dem Servlet starten Java Basics - Anfänger-Themen 4
H What is the Life Cycle of an Object Created Within/Outside of a Servlet? Will that item be destroyed after the session ends? Java Basics - Anfänger-Themen 1
J MySQL Datumsabfrage über ResultSet in Java-Servlet Java Basics - Anfänger-Themen 4
J javax.servlet.ServletException: Name is null Java Basics - Anfänger-Themen 7
G Servlet - externe HTML (URL) auslesen Java Basics - Anfänger-Themen 1
E InputStream im Servlet wirft Exception Java Basics - Anfänger-Themen 5
E Pdf-Document lässt sich im Servlet nicht öffnen Java Basics - Anfänger-Themen 5
E Erste Schritte Java Webeintwicklung (JSP/Servlet), wie am Besten einsteigen? Java Basics - Anfänger-Themen 0
S Java Servlet - Suche Java Basics - Anfänger-Themen 1
R Upload Servlet: Ausgabe nicht korrekt Java Basics - Anfänger-Themen 2
H Variablen Servlet. Int i global Java Basics - Anfänger-Themen 4
C Inputreader Servlet Nullpointerexception Java Basics - Anfänger-Themen 6
B Servlet und Eclipse Java Basics - Anfänger-Themen 2
B Servlet ausfuehren Java Basics - Anfänger-Themen 4
O Servlet Klassen ? Java Basics - Anfänger-Themen 7
B Datenzugrifft: Servlet -> Objekte Java Basics - Anfänger-Themen 4
T Servlet - oder doch nicht? Java Basics - Anfänger-Themen 4
T Servlet HTML-Formular Java Basics - Anfänger-Themen 9
F Aus Servlet in JSP schreiben Java Basics - Anfänger-Themen 2
T Servlet wird nicht erkannt Java Basics - Anfänger-Themen 10
X Kurve im Servlet zeichnen lassen Java Basics - Anfänger-Themen 4
P Problem mit Servlet Java Basics - Anfänger-Themen 9
D Periodische Aufgaben erledigen in Webanwendung (Servlet/JSP) Java Basics - Anfänger-Themen 7
I Probleme mit Tomcat / Servlet auf Linux (Debian) Java Basics - Anfänger-Themen 7
Tandibur [erledigt] jsp überträgt nicht alle Parameter an Servlet Java Basics - Anfänger-Themen 2
D Servlet kann nicht auf Instanz zugreifen Java Basics - Anfänger-Themen 10
D Servlet mit Utilities Java Basics - Anfänger-Themen 14
J Servlet Interface javax.servlet.Servlet Java Basics - Anfänger-Themen 2
G Parameter in Servlet weiterleiten Java Basics - Anfänger-Themen 5
A Finde javax.servlet.* nicht Java Basics - Anfänger-Themen 6
G JSP, Applet oder Servlet? Java Basics - Anfänger-Themen 8
0x7F800000 Servlet ruft Servlet auf: Wie ServletRequest erstellen? Java Basics - Anfänger-Themen 6
0x7F800000 Servlet: wo bekommt man die eigene adresse? Java Basics - Anfänger-Themen 6
O Weiterleitung in einem Java-Servlet Java Basics - Anfänger-Themen 5
O Jar-Archiv im Servlet verwenden Java Basics - Anfänger-Themen 3
G Servlet Package wo herunterladen? Java Basics - Anfänger-Themen 2
G doGet und doPost im Servlet nicht überschrieben Java Basics - Anfänger-Themen 9
P Servlet unterschiedliche Server Java Basics - Anfänger-Themen 2
W Servlet - out of memory Java Basics - Anfänger-Themen 7
W servlet imports nicht unterstützt Java Basics - Anfänger-Themen 3
F Applet --> Servlet --> Applet Java Basics - Anfänger-Themen 2
K Problem mit javax/servlet/http/HttpServletRequest.java Java Basics - Anfänger-Themen 2
J Servlet Error Java Basics - Anfänger-Themen 11
D Aus Anwendung Zugriff auf ein Servlet Java Basics - Anfänger-Themen 5
P konsolen ausgabe bei servlet Java Basics - Anfänger-Themen 2
S Methoden aus einem Servlet in einer JSP verwenden Java Basics - Anfänger-Themen 5
T Wo Daten ablegen für mehrere Servlet-Instanzen? Java Basics - Anfänger-Themen 2
G import javax.servlet cannot be resolved Java Basics - Anfänger-Themen 1
Z Wo wird ein Servlet gespeichert ? Java Basics - Anfänger-Themen 2
N Probleme mit import von javax.servlet.* Java Basics - Anfänger-Themen 3
T komplexe Strukturen in Servlet-Context speichern möglich? Java Basics - Anfänger-Themen 5
T servlet synchronisationsproblem Java Basics - Anfänger-Themen 4
P Servlet wird nicht gefunden Java Basics - Anfänger-Themen 4
A fileupload mit servlet Java Basics - Anfänger-Themen 6
P asynchrone Kommunikation Applet Servlet mit RMI möglich Java Basics - Anfänger-Themen 4
G Übergabe Variablen von Servlet zu JSP? Java Basics - Anfänger-Themen 4
G Formularübergabe in Servlet endet mit null. Java Basics - Anfänger-Themen 2
S Jakarta FileUpload Servlet funktioniert nicht Java Basics - Anfänger-Themen 17
G Servlet gibt über request nur null zurück Java Basics - Anfänger-Themen 3
G problem mit servlet import Java Basics - Anfänger-Themen 4
W servlet nicht gefunden Java Basics - Anfänger-Themen 8
R Servlet - JSP Java Basics - Anfänger-Themen 2
G Servlet geht nicht Java Basics - Anfänger-Themen 5
G hilfe jsp/servlet,jdbc api running on tomcat server+webProxy Java Basics - Anfänger-Themen 8
G Servlet aus programm abfragen Java Basics - Anfänger-Themen 9
H JSP Kein Durchblick. Servlet <-> JSP Java Basics - Anfänger-Themen 7
I Bean<>Servlet ? Java Basics - Anfänger-Themen 6
D Datentransfer via Servlet Java Basics - Anfänger-Themen 2
M Applet sendet daten an servlet und servlet wieder an applet Java Basics - Anfänger-Themen 5
M Servlet position bestimmen Java Basics - Anfänger-Themen 3
G Servlet wird nicht importiert? Java Basics - Anfänger-Themen 3
C Servlet & tomcat 5.0.28 Java Basics - Anfänger-Themen 7
S Servlet-Anfänger Java Basics - Anfänger-Themen 4
G Mein Servlet ist "not available" Java Basics - Anfänger-Themen 12
M Kann neues Servlet nicht hinzufügen Java Basics - Anfänger-Themen 5
D Beispiel-Servlet erstellen Java Basics - Anfänger-Themen 4
H Unterbrochener Link im Fomular bei Servlet-Aufruf Java Basics - Anfänger-Themen 4
E Webshop-Servlet: Problem beim Speichern der Bestellmenge Java Basics - Anfänger-Themen 3
M hilfe :} möchte servlet daten erfasssen-> hashmap speiche Java Basics - Anfänger-Themen 3
Z Servlet/Tomcat Problem Java Basics - Anfänger-Themen 3
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
farbenlos Csv Datei in Java einlesen Java Basics - Anfänger-Themen 18
E Audio Datei unter Bedingungen ausführen Java Basics - Anfänger-Themen 19
S Daten aus Import Datei auslesen und sortieren Java Basics - Anfänger-Themen 2
A exe Datei erstellen Java Basics - Anfänger-Themen 8
J .jar datei öffnen funktioniert nicht Java Basics - Anfänger-Themen 17
P Aus Text Datei nur Zahlen übernehmen Java Basics - Anfänger-Themen 13
P Welches SDK für das erstellen einer ausführbaren Datei? Java Basics - Anfänger-Themen 4
W Fehler in der Datei pom.xml Java Basics - Anfänger-Themen 19
M Verständnisfrage: Warum wird die Datei ohne Inhalt übertragen Java Basics - Anfänger-Themen 3
D Jar Datei startet unter Linux nicht Java Basics - Anfänger-Themen 3
P Probleme mit NetBeans: Wie lässt sich jar. Datei an einem MacBook öffnen Java Basics - Anfänger-Themen 21
N Programm Funktioniert mit .txt Datei aber nicht mit .rtf Datei Java Basics - Anfänger-Themen 2
A Wie führe ich eine Batch-Datei von meiner Java-Anwendung aus? Java Basics - Anfänger-Themen 18
D Java Programm mit Batch-Datei starten Java Basics - Anfänger-Themen 32
W Objekte einer ArrayList in txt-datei schreiben mit Paths? Java Basics - Anfänger-Themen 2
E TIF Datei auslesen Java Basics - Anfänger-Themen 2
B von Java/Eclipse verwendete Datei existiert gar nicht? Java Basics - Anfänger-Themen 6
M Spezifischen Wert einer Zeile aus .txt Datei entnehmen Java Basics - Anfänger-Themen 15
B Popups mit Klicksabfangen zumAusfüllen einer .ods Datei Java Basics - Anfänger-Themen 0

Ähnliche Java Themen

Neue Themen


Oben