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
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>");
}