diff options
author | Andreas Fitzek <andreas.fitzek@iaik.tugraz.at> | 2015-11-05 14:01:45 +0100 |
---|---|---|
committer | Andreas Fitzek <andreas.fitzek@iaik.tugraz.at> | 2015-11-05 14:01:45 +0100 |
commit | 6c09d652d6317d1514924518c3186470498247a9 (patch) | |
tree | 02347bacaf505431c03cda6accc1316307bc3729 /moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/invoke | |
parent | 0872d2d8a64fd701776b272f49222428d8def07f (diff) | |
download | moa-sig-6c09d652d6317d1514924518c3186470498247a9.tar.gz moa-sig-6c09d652d6317d1514924518c3186470498247a9.tar.bz2 moa-sig-6c09d652d6317d1514924518c3186470498247a9.zip |
PDF-AS integration, AdES Form validation results from IAIK-MOA, for XAdES
Diffstat (limited to 'moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/invoke')
-rw-r--r-- | moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/invoke/PDFASInvoker.java | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/invoke/PDFASInvoker.java b/moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/invoke/PDFASInvoker.java index 97bf58b..7f638fa 100644 --- a/moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/invoke/PDFASInvoker.java +++ b/moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/invoke/PDFASInvoker.java @@ -18,8 +18,11 @@ import at.gv.egiz.pdfas.lib.api.verify.VerifyParameter; import at.gv.egiz.pdfas.lib.api.verify.VerifyResult; import at.gv.egiz.pdfas.sigs.pades.PAdESSigner; import at.gv.egovernment.moa.logging.Logger; +import at.gv.egovernment.moa.spss.MOAApplicationException; +import at.gv.egovernment.moa.spss.MOAException; import at.gv.egovernment.moa.spss.server.logging.TransactionId; import at.gv.egovernment.moa.spss.server.pdfas.InternalMoaConnector; +import at.gv.egovernment.moa.spss.server.pdfas.InternalMoaVerifier; import at.gv.egovernment.moa.spss.server.xmlbind.CreatePDFRequest; import at.gv.egovernment.moa.spss.server.xmlbind.CreatePDFRespone; import at.gv.egovernment.moa.spss.server.xmlbind.PDFSignatureInfo; @@ -48,7 +51,7 @@ public class PDFASInvoker { return instance; } - public VerifyPDFResponse verifyPDFSignature(VerifyPDFRequest verifyPDFRequest, String transactionId) { + public VerifyPDFResponse verifyPDFSignature(VerifyPDFRequest verifyPDFRequest) throws MOAException { Configuration pdfConfiguration = this.pdfAS.getConfiguration(); VerifyPDFResponse verifyPDFResponse = new VerifyPDFResponse(); @@ -56,21 +59,14 @@ public class PDFASInvoker { VerifyParameter verifyParameter = PdfAsFactory.createVerifyParameter(pdfConfiguration, new ByteArrayDataSource( verifyPDFRequest.getSignedPDF())); + pdfConfiguration.setValue(InternalMoaVerifier.MOA_TRUSTPROFILE, verifyPDFRequest.getTrustProfileID()); + try { List<VerifyResult> verifyResults = this.pdfAS.verify(verifyParameter); - verifyPDFResponse.setResponseType(VerifyPDFResponse.SUCCESS_SIGNATURE); verifyPDFResponse.setVerificationResults(verifyResults); } catch (Throwable e) { - if (e instanceof PDFASError) { - PDFASError pdfAsError = (PDFASError) e; - Logger.warn("Failed to generate signed PDF document", e); - verifyPDFResponse.setErrorCode((int) pdfAsError.getCode()); - verifyPDFResponse.setErrorInfo(pdfAsError.getInfo()); - } else { - Logger.error("Unknown exception!: ", e); - verifyPDFResponse.setErrorCode(9999); - verifyPDFResponse.setErrorInfo("Nicht klassifizierter Fehler"); - } + Logger.warn("Failed to generate signed PDF document", e); + throw new MOAApplicationException("Failed to generate signed PDF document", null, e); } return verifyPDFResponse; |