Servlet: escribir datos en PDF

Un servlet es un objeto que acepta una solicitud y responde con una respuesta. El paquete básico de servlet contiene objetos Java que representan requests y respuestas de servlet, así como información sobre el entorno de configuración y ejecución. Los servlets pueden reaccionar a cualquier forma de solicitud, aunque generalmente se usan para expandir aplicaciones alojadas en servidores web. Java Para tales aplicaciones, la tecnología de servlet proporciona clases de servlet específicas de HTTP.

Veamos cómo escribir datos en PDF utilizando la tecnología de servlet. Aquí simplemente se utiliza un servlet para escribir algunos datos, que luego se mostrarán como PDF. Se crea una aplicación como parte de este artículo que genera los datos en un archivo PDF. 

Aquí se utiliza NetBeans IDE para crear esta aplicación de demostración.

Para crear la Aplicación, se requieren los siguientes archivos:

  • Archivo HTML : este archivo contiene una URL al servlet que muestra nuestro material PDF.
  • Archivo servlet : este archivo guarda datos como un archivo PDF e informa al servidor que es un tipo de archivo PDF.
  • web.xml : se utiliza para configurar el archivo de servlet. El servidor recibe información de servlet de este archivo XML.

Implementación: 

Empecemos a construir esta aplicación.

Paso 1: El primer paso es abrir NetBeans IDE y crear un nuevo proyecto.

Paso 2: Ahora seleccione «Java web» -> «Aplicación web» como se muestra a continuación.

Paso 3: Nombra el proyecto como se muestra a continuación.

Paso 4: elija la versión y el asistente del servidor y haga clic en finalizar.

Paso 5: ahora copie el código en index.html que se proporciona a continuación.

HTML

<!DOCTYPE html>
<html>
<head>
<title>Write Data into Pdf using Servlet</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width">
</head>
<body bgcolor="cyan">
 <center>
  <h1>Click on Below Link to Get your PDF</h1>
 </center>
 <center>
  <a href="DownloadPdf">Click Here</a>
 </center>
</body>
</html>

Paso 6: descargue y agregue el archivo «itextpdf.jar» a la biblioteca de su proyecto.

Paso 7: Ahora cree un servlet llamado «DownloadPdf» y copie el código provisto en él.

Ejemplo

Java

import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;
import java.io.*;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
  
public class DownloadPdf extends HttpServlet {
    private static final long serialVersionUID = 1L;
    @Override
    protected void doGet(HttpServletRequest request,
                         HttpServletResponse response)
        throws ServletException, IOException
    {
  
        response.setContentType("application/pdf");
  
        response.setHeader(
            "Content-disposition",
            "inline; filename='Downloaded.pdf'");
  
        try {
  
            Document document = new Document();
  
            PdfWriter.getInstance(
                document, response.getOutputStream());
  
            document.open();
  
            document.add(new Paragraph("GeeksforGeeks"));
            document.add(new Paragraph(
                "This is a demo to write data to pdf\n using servlet\nThank You"));
  
            document.close();
        }
        catch (DocumentException de) {
            throw new IOException(de.getMessage());
        }
    }
}

Paso 8: asegúrese de que su archivo «web.xml» sea idéntico al código a continuación.

XML

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
    
    <servlet>
        <servlet-name>DownloadPdf</servlet-name>
        <servlet-class>DownloadPdf</servlet-class>
    </servlet>
  
    <servlet-mapping>
        <servlet-name>DownloadPdf</servlet-name>
        <url-pattern>/DownloadPdf</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>30</session-timeout>
    </session-config>
</web-app>

Paso 9: el proyecto está listo para ejecutarse y el resultado de la aplicación es el que se muestra a continuación.

Paso 10: Después de hacer clic en el enlace, comenzará a descargarse un archivo pdf.

Paso 11: El archivo descargado muestra el resultado como se muestra a continuación.

Publicación traducida automáticamente

Artículo escrito por rkravisingh890 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *