aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/PDFData.java
diff options
context:
space:
mode:
authorAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2014-01-09 12:52:06 +0100
committerAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2014-01-09 12:52:06 +0100
commit11c4bfac46f66ab3ba24b6354a6a372da40c0b1f (patch)
treec1e8f6f9b11eb8d939fefb08ef35ece09eab51a5 /pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/PDFData.java
parentcec0065b747d30c6a0a17d18f2c7c8962a9102ed (diff)
downloadpdf-as-4-11c4bfac46f66ab3ba24b6354a6a372da40c0b1f.tar.gz
pdf-as-4-11c4bfac46f66ab3ba24b6354a6a372da40c0b1f.tar.bz2
pdf-as-4-11c4bfac46f66ab3ba24b6354a6a372da40c0b1f.zip
PDF-AS web Developments
Diffstat (limited to 'pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/PDFData.java')
-rw-r--r--pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/PDFData.java62
1 files changed, 62 insertions, 0 deletions
diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/PDFData.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/PDFData.java
new file mode 100644
index 00000000..6ce0e1c9
--- /dev/null
+++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/PDFData.java
@@ -0,0 +1,62 @@
+package at.gv.egiz.pdfas.web.servlets;
+
+import java.io.IOException;
+import java.io.OutputStream;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import at.gv.egiz.pdfas.web.helper.PdfAsHelper;
+
+/**
+ * Servlet implementation class PDFData
+ */
+public class PDFData extends HttpServlet {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * @see HttpServlet#HttpServlet()
+ */
+ public PDFData() {
+ super();
+ }
+
+ /**
+ * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
+ * response)
+ */
+ protected void doGet(HttpServletRequest request,
+ HttpServletResponse response) throws ServletException, IOException {
+ this.process(request, response);
+ }
+
+ /**
+ * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
+ * response)
+ */
+ protected void doPost(HttpServletRequest request,
+ HttpServletResponse response) throws ServletException, IOException {
+ this.process(request, response);
+ }
+
+ protected void process(HttpServletRequest request,
+ HttpServletResponse response) throws ServletException, IOException {
+ byte[] signedData = PdfAsHelper.getSignedPdf(request, response);
+
+ if (signedData != null) {
+ response.setContentType("application/pdf");
+ OutputStream os = response.getOutputStream();
+ os.write(signedData);
+ os.close();
+
+ // When data is collected destroy session!
+ request.getSession().invalidate();
+ } else {
+ PdfAsHelper.setSessionException(request, response,
+ "No signed pdf document available.", null);
+ PdfAsHelper.gotoError(getServletContext(), request, response);
+ }
+ }
+}