JPG file in Java Klasse speichern

Status
Nicht offen für weitere Antworten.

klaus1

Aktives Mitglied
Hi Leute!

Möchte gerne ein JPG File in eine Java Klasse speichern.
funktioniert die APPLET API ? muss hierfür eine lokale kopie des Files bestehen, oder genügt es nur zum Zeitpunkt der Speicherung in das Format IMAGE dass die Datei vorhanden ist?

Habe nämlich auf einem Webserver Files, die ich unbedingt in eine Java klasse speichern muss (nicht links, sondern komplettes binäres file).
Möchte auch über JSP dann dieses Image wieder ausgeben in HTML, dazu allerdings nicht vorher das File wieder irgendwo in JPG hinspeichern, sondern direkt ein IMAGE Format anzeigen lassen!

Lg, Klaus
 

Bleiglanz

Gesperrter Benutzer
wozu Image oder Applet

wenns nur ums streamen über HTTP geht, dann speichere die ganze Datei als byte[] und schicks dieses bei Bedarf direkt an den Outputstream!
 

Bleiglanz

Gesperrter Benutzer
ja und?

wie hast du es dir gedacht?

unter dem Pfad soll ein Servlet gemapped sein, das das Bild zurückliefert

google mal nach Servlet + Image
 

klaus1

Aktives Mitglied
habe jetzt das image in bytestream mittels servlet in die datenbank gebracht, und bekomme auch in einem servlet ein byte array mit dem Bild wieder zurück!
Nun möchte ich allerdings das Bild anzeigen im Browser.. wie mach ich das mit dem Servlet?
gibts eine Möglichkeit, das Bild im Browser anzuzeigen, ohne es per FileOutputstream in eine Datei zu schreiben, und per
anzuzeigen?
Lg, Klaus
 

m@nu

Bekanntes Mitglied
denke das geht nicht ohne temp-datei...

@mod: is das thema hier nicht ein wenig im falschen forum? :)
 

Mag1c

Top Contributor
Moin,

warum soll das nicht gehen ? Das Servlet muß über eine URL ansprechbar sein (z.B.
imageServlet
). Das Servlet muß dann mit dem Mime-Type "image/jpg" die Daten aus dem byte array ausliefern.

Gruß
Mag1c
 

m@nu

Bekanntes Mitglied
... :-/ klar! dem browser isses ja eigentlich schnuppe was für eine url im src-attribut steht... hauptsache der richtige mime-type kommt an...
 

klaus1

Aktives Mitglied
hab folgendes probiert:

getImage.jsp:

// Datenbank öffnen, usw.

response.setContentType("image/jpeg");

Blob blob = rs.getBlob("image");

if (blob != null)
{
int iLen = (int)blob.length();
ByteArrayOutputStream output = new ByteArrayOutputStream(iLen);
output.write(blob.getBytes(1, iLen), 0, iLen);
out.write(output.toString());
}


jetzt bekomme ich auch schon was zurück, nur leider die Meldung, dass das Bild fehlerhaft ist..
Bei der konkreten Gegenüberstellung zwischen dem original file und dem zurückgeliferten, bin ich draufgekommen, dass alles übereinstimmt, bis zum aufruf: out.write(...).
Da bekomme ich nämlich statt den ? andere unerwünschte zeichen, deshalb wahrscheinlich fehlerhaftes bild..
aber warum?
Lg, Klaus
 

Bleiglanz

Gesperrter Benutzer
auf keinen Fall writer verwenden für binärdateien

und auf keinen Fall jsps verwenden um binärdateien zum Client zu schicken (nimm ein Servlet und steck das byte[] direct in den response.getOutputStream)
 

klaus1

Aktives Mitglied
klappt jetzt mit eigenem JSP File:

byte[] imgData = ("bild als byte array");
response.setContentType("image/jpg");
java.io_OutputStream o = response.getOutputStream();

o.write(imgData); o.flush();
o.close();

nur folgender Fehler bei öfterem aufruf der JSP Page:
SCHWERWIEGEND: Servlet.service() for servlet jsp threw exception
java.lang.IllegalStateException: getOutputStream() has already been called for this response

Kann ich diese Fehlermeldung mit einem try - catch bereich zumindest unterdrücken?
 

bronks

Top Contributor
klaus1 hat gesagt.:
klappt jetzt mit eigenem JSP File:
...
nur folgender Fehler bei öfterem aufruf der JSP Page:
SCHWERWIEGEND: Servlet.service() for servlet jsp threw exception
java.lang.IllegalStateException: getOutputStream() has already been called for this response

Kann ich diese Fehlermeldung mit einem try - catch bereich zumindest unterdrücken?
Die Fehlermeldung kommt vom Container und ist nur SCHWERWIEGEND. Du kannst auch einfach wegschaun, wenn die Fehlermeldung kommt ... oder es so machen (richtig) wie Bleiglanz in seinem letzten Post geschrieben hat. Die erste Antwort, die Dir Gandalf in einem anderen Forum gab, wäre auch meine Empfehlung, wenn ich lese, daß Du das ganze immernoch in eine JSP quetschen willst, denn so verfährst Du Dich nur in unnötigen Problemen.
 

daLenz

Aktives Mitglied
hi, du kannst den getOutputstream halt nicht mehr als einmal aufrufen...falls du immernoch kein servlet verwenden willst, könnte dieser workaround weiterhelfen:

einfach am schluss der jsp-seite noch

Code:
out.clear();
out = pageContext.pushBody();

einfügen

...aber wie schon mehrfach gesagt...steck das ganze in ein servlet!

greetz
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
OnDemand JSF - java File Verständnisfrage Allgemeines EE 5
B Wildlfy .war - File in produktiven System deployen (Upgrade der Software) Allgemeines EE 5
E Audio/Video File Streamen Allgemeines EE 1
N WebService WAR-File auf Tomcat-Server Allgemeines EE 1
OnDemand Deploy war File wie aufrufen? Allgemeines EE 10
OnDemand War File erstellen Allgemeines EE 1
T Probleme mit File renameTo bzw. File delete @@ Allgemeines EE 3
W properties File in WEB-INF Allgemeines EE 5
H fehler beim deployen von ear file Allgemeines EE 2
P Dynamic Web Project -> file Allgemeines EE 23
E Properties-File in Jboss-Conf Verzeichnis ansprechen Allgemeines EE 2
A File Donwlad über jsp Allgemeines EE 6
G File-Upload Allgemeines EE 3
V File Permissions Allgemeines EE 3
J Auslesen von <input type="file"> Allgemeines EE 2
M Servlets | work - Klassen nicht im WAR File Allgemeines EE 5
P jar-File aus war-File beim Deploy automatisch entpacken Allgemeines EE 2
H File Upload per Formular - prinzipielle Vorgehensweise? Allgemeines EE 2
M war file export Allgemeines EE 2
B FileInputStream(sPath); file wird nicht gefunden Allgemeines EE 5
D <input type="file"> Problem Allgemeines EE 6
D JSP include file Direktive Allgemeines EE 2
U File upload, File download und verzeichnis Struktur Allgemeines EE 2
M Struts File Upload problem Allgemeines EE 6
G properties file im J2EE Server - wo wird genau gesucht? Allgemeines EE 6
H Die JBossMQ im JBoss auf File-Persistence stellen? Allgemeines EE 3
M JSP und File Allgemeines EE 5
S Daten in ein Excel file exportieren Allgemeines EE 3
G JSP: kann nicht in File schreiben Allgemeines EE 2
B Nochmal Servlet und File, diesmal download. Allgemeines EE 3
D welcome-file *.do Allgemeines EE 4
T Servlet-Mapping und Welcome-File-List unter Websphere? Allgemeines EE 2
P Probleme mit File renameTo bzw. File delete Allgemeines EE 3
A File Download mit Umlauten in Tomcat/Struts/Suse8 Allgemeines EE 1
T Java ServerFaces Anwendung mit XHTML & CSS Allgemeines EE 1
E modulare Java-Anwendung verteilen (Camel) Allgemeines EE 0
B Java Mail und idle() mit zig Emailadressen? Allgemeines EE 59
H JWebUnit Fehler: java.lang.NoClassDefFoundError: org/apache/regexp/RESyntaxException Allgemeines EE 24
B Java mail API - möchte nur eine gewisse Anzahl von Emails in die Liste holen Allgemeines EE 3
M Rest mit Java 11 Allgemeines EE 6
M java.lang.SecurityException: class "javax.persistence.TupleElement"'s signer information does not match ... Allgemeines EE 1
F Java Programmierer Allgemeines EE 13
R Wie viel DevOps sollte ein Java-Entwickler kennen, der sich in Microservices spezialisiert? Allgemeines EE 5
Dimax JSP Probleme mit Java in JSP Allgemeines EE 21
Dimax JSP Auf button click java methode ausführen.Ist das möglich? Allgemeines EE 6
B Logging (log4j) in JAVA EE application - WildFly Allgemeines EE 15
A Java EE (am Cleint) und websocket Allgemeines EE 8
J Ich kann Java JDK nicht downloaden Allgemeines EE 6
R Aufbau zum Java EE Entwickler - Schulungen Allgemeines EE 0
G Java EE Hosting ? Allgemeines EE 6
P Java EE Videotutorials Allgemeines EE 1
R Java Enterpise entwickeln mit Virtualbox Allgemeines EE 6
A OutOfMemoryError: Java heap space Allgemeines EE 7
I Start Word from Java Allgemeines EE 1
T Java Jersey Interceptor Allgemeines EE 7
R Post Variable in Java Allgemeines EE 8
L JSP Fehlermeldung bei Verwendung von Java-Expression-Language Allgemeines EE 8
K Wie habt ihr Java EE gelernt? Allgemeines EE 11
hjpsoft JSF Lösung einer Aufgabe im "Workshop Java EE7" Allgemeines EE 5
S Welcher Java EE Applikationserver für RESTful Webservice? Allgemeines EE 2
T Java Login Allgemeines EE 1
L Certified Master Java Enterprise Architect Java EE Allgemeines EE 3
R Java EE 6, eclipse, maven, jsf, hibernate, mysql Allgemeines EE 8
D Einfaches Java Projekt funktioniert nicht Allgemeines EE 3
W Authentifizierung und Sessions in Java EE7 Allgemeines EE 5
OnDemand Task in Java ee Allgemeines EE 7
OnDemand Deployen ohne .java Files Allgemeines EE 0
E Wie kann ich über einen Suchfeld in Java Server Pages nach Datenbankinhalten suchen? Allgemeines EE 11
V Java EE 7 CDI, annotations und beans Allgemeines EE 1
G Bachelorthesis: Java oder PHP (CMS) Allgemeines EE 7
X Konsolenausgabe einer java klasse in eine jsp umleiten Allgemeines EE 7
S Aufruf eines EJBs aus einer nativen Java-Applikation Allgemeines EE 1
T Fertiges html javascrip css template in java EE application Allgemeines EE 0
F Eclipse/Java EE Debug-Problem Allgemeines EE 1
D Java Projekt goes Webservice Allgemeines EE 6
L Button Handling in JSP mit Java-Backend Allgemeines EE 2
Shams Frage zu Dowload von JAVA SDK Allgemeines EE 5
T Größeres Java EE Beispiel Projekt Allgemeines EE 4
N JavaScript schickt und Java empfängt? Allgemeines EE 4
O Java EE in Netbeans + allgemeine Fragen Allgemeines EE 5
H java selenium spezis? Allgemeines EE 4
H java selenium test connection refused Allgemeines EE 6
M Java EE-Technologie-Lern-Wahl Allgemeines EE 5
B [EJB] javax.inject.DefinitionException: bean not a Java type Allgemeines EE 5
J Java Dependencies auslesen Allgemeines EE 19
2 installation java EE Allgemeines EE 12
J PHP oder Java? Allgemeines EE 12
L Webseiten Formulare über Java Oberfläche ausfüllen? Allgemeines EE 2
T Java CMS Entwicklung : Welcher Weg ist besser? Allgemeines EE 9
F Gesucht: Gratis Server für Java Entwickler Allgemeines EE 4
J Einstieg in Java EE Allgemeines EE 5
aze Eclipse Java EE Web Project:Wo liegen die Servlets ? Allgemeines EE 4
S java Entities Problem Allgemeines EE 19
D Grundüberlegung Java Webprojekt Allgemeines EE 10
F Einstieg in Java EE - Beispielanwendungen Allgemeines EE 52
R JAVA EE - eigene Klassen aus EJB übernehmen Allgemeines EE 2
T "normales" Java Programm auf einen Server laufen lassen Allgemeines EE 3
M EE6+EJB+JavaLib: Error in annotation processing: java.lang.NoClassDefFoundError Allgemeines EE 4
G java ResourceLocator Allgemeines EE 12
M Was ist mit Java möglich? Allgemeines EE 13

Ähnliche Java Themen

Neue Themen


Oben