aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/ws/PDFASSigningImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/ws/PDFASSigningImpl.java')
-rw-r--r--pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/ws/PDFASSigningImpl.java34
1 files changed, 34 insertions, 0 deletions
diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/ws/PDFASSigningImpl.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/ws/PDFASSigningImpl.java
new file mode 100644
index 00000000..39c6c24d
--- /dev/null
+++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/ws/PDFASSigningImpl.java
@@ -0,0 +1,34 @@
+package at.gv.egiz.pdfas.web.ws;
+
+import javax.jws.WebService;
+import javax.xml.ws.WebServiceException;
+import javax.xml.ws.soap.MTOM;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import at.gv.egiz.pdfas.web.config.WebConfiguration;
+import at.gv.egiz.pdfas.web.helper.PdfAsHelper;
+
+@MTOM
+@WebService(endpointInterface = "at.gv.egiz.pdfas.web.ws.PDFASSigning")
+public class PDFASSigningImpl implements PDFASSigning {
+
+ private static final Logger logger = LoggerFactory
+ .getLogger(PDFASSigningImpl.class);
+
+ public byte[] signPDFDokument(byte[] inputDocument,
+ PDFASSignParameters parameters) {
+ try {
+ return PdfAsHelper.synchornousServerSignature(inputDocument, parameters);
+ } catch(Throwable e) {
+ logger.error("Server Signature failed.", e);
+ if(WebConfiguration.isShowErrorDetails()) {
+ throw new WebServiceException("Server Signature failed.", e);
+ } else {
+ throw new WebServiceException("Server Signature failed.");
+ }
+ }
+ }
+
+}