java-forum.org - Java programmieren aus Leidenschaft
Java 6 Einstieg und professioneller Einsatz
Alter Preis: 34,90 EUR
Jetzt: 0,00 EUR

zzgl. Versandkosten

Zurück   java-forum.org - Java programmieren aus Leidenschaft > Enterprise Java > Web Tier

Web Tier JSP, Servlets, JSF, Struts, AJAX

Antwort     Ist dieses Thema erledigt?
Themen-Optionen Thema durchsuchen Ansicht
Alt 08.06.2012, 08:37   #1 (permalink)
Benutzer
int
 
Registriert seit: 12.01.2012
Fachbeiträge: 50
Abgegebene Danke: 19
Erhielt 0 Danke für 0 Beiträge
Standard Bild aus DB in JSF darstellen

Habe es gestern geschafft zu meinen User Entities mittels FileUpload ein .png Bild in meine (derby) DB zu speichern. Das Bild liegt nun als byte[] in meiner DB.

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
7
8
@Entity @Table(name="Users")
public class User implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    ...
    @Column @Lob
    private byte[] photo;

Nun würde mich interessieren wie ich dieses byte[] wieder in ein png umwandeln, und dieses dann in JSF anzeigen lassen kann.
markai ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 08.06.2012, 09:08   #2 (permalink)
Stammbenutzer
Viertel Megabyte
 
Registriert seit: 14.03.2012
Fachbeiträge: 457
Abgegebene Danke: 17
Erhielt 107 Danke für 105 Beiträge
Ich würde mir dafür ein Servlet schreiben und dann etwa in einem <h:graphicImage> auf das Servlet verweisen.

Die Byte-Folge schreibst du in einen geeigneten InputStream und diesen dann in ein BufferedImage.
Fant ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
markai (08.06.2012)
Alt 08.06.2012, 09:31   #3 (permalink)
Stammbenutzer
Viertel Megabyte
 
Benutzerbild von JimPanse
 
Registriert seit: 27.07.2007
Fachbeiträge: 404
Abgegebene Danke: 0
Erhielt 74 Danke für 74 Beiträge
Hi,

du schon wieder Du benutzt doch Primefaces dann benutzt doch einfach das Dyna-Image

Dyna Image

Gruß
JimPanse ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
markai (08.06.2012)
Alt 08.06.2012, 13:40   #4 (permalink)
Benutzer
int
Themenstarter
 
Registriert seit: 12.01.2012
Fachbeiträge: 50
Abgegebene Danke: 19
Erhielt 0 Danke für 0 Beiträge
Ja ich schon wieder. Was Java EE angeht bin ich leider noch ein ziemlicher Dummkopf. Jedenfalls hatte ich heute gerade meine ersten Erfolgserlebnisse wegen des Tipps mit dem Dyna-Image

Ich danke euch beiden
markai ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 15.06.2012, 20:30   #5 (permalink)
Benutzer
int
Themenstarter
 
Registriert seit: 12.01.2012
Fachbeiträge: 50
Abgegebene Danke: 19
Erhielt 0 Danke für 0 Beiträge
Ein neues Problem ist aufgetaucht: Habe mit dem DynaImage von Primefaces eine Möglichkeit gefunden mein Bild aus der DB zu bekommen und anzuzeigen, aber so wie ich das gemacht habe funktioniert es nur für einen record:

Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
7
8
9
10
11
12
13
    public StreamedContent getGraphic() {
        try {
            byte[] byteImg = sessionBean.getCurrentUser().getPhoto();
            BufferedImage image = ImageIO.read(new ByteArrayInputStream(byteImg));
            ByteArrayOutputStream os = new ByteArrayOutputStream();
            ImageIO.write(image, "png", os);
            graphic = new DefaultStreamedContent(new ByteArrayInputStream(os.toByteArray()), "image/png");
 
        } catch (Exception e) {
            e.printStackTrace();
        }
        return graphic;
    }

(in der sessionBean wird das User Objekt des aktuell eingeloggten Benutzer gespeichert). Nun würde ich gerne über meine Datenbank iterieren und für jeden Datensatz das Bild holen und in einer DataTable anzeigen. Leider funktioniert das mit der obigen Methode so nicht. Wenn für diesen Fall ein Servlet besser wäre hätt ich bitte gerne ein paar Zeilen Code. Steh grad ziemlich aufm Schlauch...
markai ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 16.06.2012, 15:53   #6 (permalink)
Stammbenutzer
Viertel Megabyte
 
Registriert seit: 14.03.2012
Fachbeiträge: 457
Abgegebene Danke: 17
Erhielt 107 Danke für 105 Beiträge
Du kannst zB mal hier nachlesen:
image - How to use p:graphicImage with StreamedContent within p:dataTable? - Stack Overflow

Gruß Fant
Fant ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
markai (18.06.2012)
Alt 18.06.2012, 17:03   #7 (permalink)
Stammbenutzer
Viertel Megabyte
 
Benutzerbild von JimPanse
 
Registriert seit: 27.07.2007
Fachbeiträge: 404
Abgegebene Danke: 0
Erhielt 74 Danke für 74 Beiträge
Schreib dir eine eigene Komponente + Renderer. Die Komponente erbt von HtmlGraphicImage und erweiterst die Klasse um ein Byte-Feld. Deinen Renderer leitest du von der Klasse ImageRenderer ab und dort machst du die Operation für das byte-feld.

Greetz
JimPanse ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Danke sagt:
markai (18.06.2012)
Alt 18.06.2012, 21:38   #8 (permalink)
Benutzer
int
Themenstarter
 
Registriert seit: 12.01.2012
Fachbeiträge: 50
Abgegebene Danke: 19
Erhielt 0 Danke für 0 Beiträge
Hab mich bei Stackoverflow schlau gemacht. Hat super funktioniert. Danke für den Tipp! Wenn ich nächste Woche mal Zeit hab versuch ich das mit dem HTMLGraphicImage. Momentan reichts aber für meine Zwecke. Danke euch beiden!
markai ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort     Ist dieses Thema erledigt?

Stichworte
derby , image , jsf , konvertieren

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Problemchen mit Bild bandy Java Basics - Anfänger-Themen 10 16.09.2010 16:19
JSF Template mit Bild duddits Web Tier 3 20.08.2010 17:31
Bild in JPanel darstellen oder Bild in JLabel und dieses . Mayhem AWT, Swing, JavaFX & SWT 1 01.11.2007 20:51
JSF und Bild einlesen HeinerBauer Allgemeines EE 4 10.10.2007 13:17
Scalieren eines Bildes, abhängig von der Fenstergröße Java Basics - Anfänger-Themen 10 19.08.2006 20:14


Lesezeichen

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:48 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de