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

Problema con Itext

Estas en el tema de Problema con Itext en el foro de Java en Foros del Web. Hola chicos, tengo un problema con la libreria Itext. He creado un servlet muy sencillito para hacer usas pruebas de como crear PDF con esta ...
  #1 (permalink)  
Antiguo 30/09/2010, 06:10
 
Fecha de Ingreso: octubre-2009
Mensajes: 22
Antigüedad: 14 años, 6 meses
Puntos: 0
Problema con Itext

Hola chicos, tengo un problema con la libreria Itext. He creado un servlet muy sencillito para hacer usas pruebas de como crear PDF con esta librería y quiero añadir una imagen pero el problema es que al añadir con document.add(objeto); me dice que no es un valor valido para ese objeto. He estado viendo decenas de post y todos lo hacen igual. Entonces no encuentro cual puede ser la solución a mi problema. Alguno se le ocurre algo?.
Aqui os pongo el codigo. El error ocurre justo en la linea

Image foto = Image.getInstance("imagenes/nen.jpg");
document.add(foto);

en esa linea dice que foto no es un valor válido para document.add.


package Tienda;

import javax.servlet.ServletConfig;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.lowagie.text.Document.*;
import com.lowagie.text.DocumentException;
import com.lowagie.text.PageSize;
import com.itextpdf.text.Image;
import com.lowagie.text.Document;
import com.lowagie.text.pdf.PdfWriter;
import com.lowagie.text.Paragraph;


public class GenerarPDF extends HttpServlet {


public void init(ServletConfig config) throws ServletException{

super.init(config);
}

public void destroy(){
super.destroy();
}

protected void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {

Document document = new Document( PageSize.A4, 50, 50, 50, 50);
try{
ByteArrayOutputStream baos = new ByteArrayOutputStream();

PdfWriter writer = PdfWriter.getInstance(document, baos);
document.open();

document.add(new Paragraph("Primer PARRAFO"));
document.add(new Paragraph("SEGUNDO parrafo mas largo que el anterior."));

Image foto = Image.getInstance("imagenes/nen.jpg");
document.add(foto);


document.close();
// Hay que configurar las cabeceras para que
//el navegador detecte que es un PDF
res.setHeader("Expires", "0");
res.setHeader("Cache-Control","must-revalidate, post-check=0, pre-check=0");
res.setHeader("Pragma", "public");
res.setContentType("application/pdf");
ServletOutputStream out = res.getOutputStream();
baos.writeTo(out);
out.flush();

}
catch(DocumentException e){
}

}

}
  #2 (permalink)  
Antiguo 08/10/2010, 06:18
 
Fecha de Ingreso: octubre-2010
Mensajes: 2
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: Problema con Itext

Y QUE TAL SI INTENTAS MEJOR DE ESTA FORMA AGREGANDO LA IMAGEN A UNA TABLA Y DESPUES LA TABLA AL DOCUMENTO A MI DE ESA FORMA ME FUNCIONO.

float[] widths1={1f};

PdfPTable table1=new PdfPTable(widths1);

headerImage = Image.getInstance("Imagenes/cabezera_prestamo.png");
table1.addCell(headerImage);
  #3 (permalink)  
Antiguo 21/02/2011, 09:52
 
Fecha de Ingreso: febrero-2011
Mensajes: 1
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Problema con Itext

Te sugiero poner la ruta completa donde se encuentra la imagen
  #4 (permalink)  
Antiguo 24/02/2011, 05:29
 
Fecha de Ingreso: febrero-2011
Mensajes: 672
Antigüedad: 13 años, 2 meses
Puntos: 78
Respuesta: Problema con Itext

Creo que tu problema es que no pones el Path Completo.
Sino, tendras que preguntar a ServletContext cual es el Path de Ejecución.

Athlit

Etiquetas: itext
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 20:15.