aboutsummaryrefslogtreecommitdiff
path: root/moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/invoke
diff options
context:
space:
mode:
authorAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2015-11-05 14:01:45 +0100
committerAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2015-11-05 14:01:45 +0100
commit6c09d652d6317d1514924518c3186470498247a9 (patch)
tree02347bacaf505431c03cda6accc1316307bc3729 /moaSig/moa-sig/src/main/java/at/gv/egovernment/moa/spss/server/invoke
parent0872d2d8a64fd701776b272f49222428d8def07f (diff)
downloadmoa-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.java20
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;