package io.bitbucket.NombreDeUsuario.jee06.generadores; import java.io.IOException; import java.util.List; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletResponse; import com.itextpdf.kernel.pdf.PdfDocument; import com.itextpdf.kernel.pdf.PdfWriter; import com.itextpdf.layout.Document; import com.itextpdf.layout.element.Table; import io.bitbucket.NombreDeUsuario.jee06.pojos.Libro; public final class DocumentoPdf { public static void deLibros(HttpServletResponse response, List libros) throws IOException { response.setContentType("application/pdf"); response.setHeader("Content-Disposition", "attachment; filename=libros.pdf"); ServletOutputStream salida = response.getOutputStream(); PdfDocument archivoPdf = new PdfDocument(new PdfWriter(salida)); Document documentoPdf = new Document(archivoPdf); Table tabla = new Table(new float[]{0.5f, 1.5f, 2.0f, 2.0f, 2.0f, 2.0f}); String[] cabeceras = {"id","autor","descripcion","disponible","precio","publicacion"}; for (String cabecera : cabeceras) { tabla.addCell(cabecera); } for (Libro libro : libros) { tabla.addCell(String.valueOf(libro.getId())); tabla.addCell(String.valueOf(libro.getAutor())); tabla.addCell(String.valueOf(libro.getDescripcion())); tabla.addCell(String.valueOf(libro.isDisponible())); tabla.addCell(String.valueOf(libro.getPrecio())); tabla.addCell(String.valueOf(libro.getFechaPublicacion())); } documentoPdf.add(tabla); documentoPdf.close(); // salida.close(); } }