package wordSamples; 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.qoppa.word.WordDocument; public class WordToPDFServlet extends HttpServlet { /** * @see javax.servlet.http.HttpServlet#void (javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) */ public void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { generatePDF(req, resp); } /** * @see javax.servlet.http.HttpServlet#void (javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse) */ public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { generatePDF(req, resp); } private void generatePDF (HttpServletRequest req, HttpServletResponse res) throws IOException, ServletException { try { // Load the Word document WordDocument wd = new WordDocument ("report.doc"); // Get servlet output stream ServletOutputStream sOut = res.getOutputStream(); res.setContentType( "application/pdf" ); res.setHeader("Content-disposition", "attachment; filename=" + "report.pdf" ); // Save the document to the servlet output stream. This goes directly to the browser wd.saveAsPDF(sOut); // Close the server output stream sOut.close(); } catch (Throwable t) { // Return error } } }