G
Gast
Gast
Irgendwie google ich mir seit mehreren Stunden die Finger wund:
Ich habe in eine Informix-Datenbank ein 6kB großes JPEG in einem BLOB zu liegen. Irgendwie kriege ich es nicht hin, dieses JPEG als ImageIcon in einem JLabel auszugeben.
Wenn ich mir mit einem sysout den Inhalt von mReSet.getBlob("foto") ausgeben lasse, erhalte ich "com.informix.jdbc.IfxBblob@e35bb7". Ist das überhaupt richtig so wie ich das versuche oder bin ich da völlig auf dem Holzweg?
Fehler werden vom Debugger keine gezeigt, allerdings erhalte ich eine NullPointerException, sobald das JLabel ma_foto geladen werden soll.
Für Hilfe wär ich dankbar
Ich habe in eine Informix-Datenbank ein 6kB großes JPEG in einem BLOB zu liegen. Irgendwie kriege ich es nicht hin, dieses JPEG als ImageIcon in einem JLabel auszugeben.
Code:
public void BildAnzeigen(int logname, JLabel ma_foto)
{
this.logname = logname;
this.ma_foto = ma_foto;
logname = Integer.parseInt(CheckLogin.personalNummer);
try
{
String getImage = "select persnr, foto from zeit_ma where persnr = " + logname;
Connection mCon = getCon();
Statement mstmt = mCon.createStatement();
mstmt.execute(getImage);
ResultSet mReSet = mstmt.executeQuery(getImage);
while (mReSet.next())
{
System.out.println("Persnr: " + mReSet.getInt("persnr"));
System.out.println("Foto: " + mReSet.getBlob("foto"));
Blob bild = mReSet.getBlob("foto");
InputStream is = bild.getBinaryStream();
ByteArrayOutputStream out = new ByteArrayOutputStream();
byte[] buffer = new byte[4096];
try
{
for (int n; (n = is.read(buffer)) != -1; out.write(buffer, 0, n));
}
catch (IOException e)
{
e.printStackTrace();
}
try
{
is.close();
}
catch (IOException e)
{
e.printStackTrace();
}
ImageIcon icon = new ImageIcon(out.toByteArray());
ma_foto.setIcon(icon);
}
mReSet.close();
mstmt.close();
}
catch(SQLException sqlEx)
{
sqlEx.printStackTrace();
}
}
Wenn ich mir mit einem sysout den Inhalt von mReSet.getBlob("foto") ausgeben lasse, erhalte ich "com.informix.jdbc.IfxBblob@e35bb7". Ist das überhaupt richtig so wie ich das versuche oder bin ich da völlig auf dem Holzweg?
Fehler werden vom Debugger keine gezeigt, allerdings erhalte ich eine NullPointerException, sobald das JLabel ma_foto geladen werden soll.
Für Hilfe wär ich dankbar