Java/PDF RTF/Servlet

Материал из Java эксперт
Перейти к: навигация, поиск

Output in Pdf format in a servlet

   <source lang="java">

import java.io.ByteArrayOutputStream; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.lowagie.text.Chunk; import com.lowagie.text.Document; import com.lowagie.text.Paragraph; import com.lowagie.text.pdf.PdfWriter; public class OutSimplePdf extends HttpServlet {

 public void doGet(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
   makePdf(request, response, "GET");
 }
 
 protected void doPost(HttpServletRequest request, HttpServletResponse response)
     throws ServletException, IOException {
     makePdf(request, response, "POST");
 }
 public void makePdf(HttpServletRequest request, HttpServletResponse response, String methodGetPost) {
   try {
     Document document = new Document();
     ByteArrayOutputStream baos = new ByteArrayOutputStream();
     PdfWriter.getInstance(document, baos);
     document.open();
     document.add(new Paragraph("some text"));
     document.close();
     response.setHeader("Expires", "0");
     response.setHeader("Cache-Control", "must-revalidate, post-check=0, pre-check=0");
     response.setHeader("Pragma", "public");
     response.setContentType("application/pdf");
     response.setContentLength(baos.size());
     ServletOutputStream out = response.getOutputStream();
     baos.writeTo(out);
     out.flush();
   } catch (Exception e2) {
     System.out.println("Error in " + getClass().getName() + "\n" + e2);
   }
 }

}

      </source>
   
  
 
  



Output PDF file in a Servlet

   <source lang="java">
 import java.io.IOException;
 import java.util.Date;
 import javax.servlet.ServletException;
 import javax.servlet.http.HttpServlet;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import com.lowagie.text.Document;
 import com.lowagie.text.DocumentException;
 import com.lowagie.text.Paragraph;
 import com.lowagie.text.html.HtmlWriter;
 import com.lowagie.text.pdf.PdfWriter;
 import com.lowagie.text.rtf.RtfWriter2;

// Output PDF file in a Servlet.

 public class PDFServlet extends HttpServlet {
   public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException,
       ServletException {
     String presentationtype = request.getParameter("presentationtype");
     Document document = new Document();
     try {
       if ("pdf".equals(presentationtype)) {
         response.setContentType("application/pdf");
         PdfWriter.getInstance(document, response.getOutputStream());
       }
       document.open();
       document.add(new Paragraph("Hello World"));
       document.add(new Paragraph(new Date().toString()));
     } catch (DocumentException de) {
       de.printStackTrace();
       System.err.println("document: " + de.getMessage());
     }
     document.close();
   }
 }


      </source>