Foros del Web » Programación para mayores de 30 ;) » Java »

Almacenar PDF en BLOB de Oracle

Estas en el tema de Almacenar PDF en BLOB de Oracle en el foro de Java en Foros del Web. Hola, mi problema es que almaceno PDF's en un campo BLOB de oracle, pero algunos se muestran y otros no, no consigo averiguar si es ...
  #1 (permalink)  
Antiguo 22/02/2008, 03:44
 
Fecha de Ingreso: mayo-2007
Mensajes: 20
Antigüedad: 17 años
Puntos: 0
Almacenar PDF en BLOB de Oracle

Hola,

mi problema es que almaceno PDF's en un campo BLOB de oracle, pero algunos se muestran y otros no, no consigo averiguar si es un problema de codificación. Los PDF's he probado a mostralos en una JSP e incluso desde un Servlet directamente, pero los resultados son los mismos.

El código de inserción del PDF en el Campo BLOB de Oracle es el siguiente (JDeveloper):

//Obtenemos el InputStream del fichero subido
InputStream pdf = file.getInputStream();
DataInputStream archivo =new DataInputStream(pdf);
//Creamos el objeto Blob que almacenaremos en la BD
BlobDomain b =new BlobDomain();
//Obtenemos el OutputStream (fichero de salida) del Blob
OutputStream out=b.getBinaryOutputStream();
//Llamamos al método que completa el fichero de salida con los datos
//del fichero de entrada
byte[] buffer = this.writeInputStreamToOutputStream(pdf,out);
//Asignamos al Blob el array de Bytes que contiene el PDF codificado en binario
b.setBytes(buffer);
//Cerramos el InputStream y el OutputStream
out.close();
archivo.close();
//Creamos una fila nueva de la View
Row fila =View.createRow();
//Insertamos los atributos, entre ellos el Blob
fila.setAttribute("IdFichero",contador);
fila.setAttribute("Descripcion","A ver si inserta "+contador);
fila.setAttribute("Fichero",b);

View.insertRow(fila);
//Hacemos commit de la fila
View.getDBTransaction().commit();


alguna idea de por qué unos PDF's sí que los muestra y otros no?

_Gracias.

Última edición por Dio_83; 22/02/2008 a las 03:54
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:23.