aboutsummaryrefslogtreecommitdiff
path: root/spss.server/src/at/gv/egovernment/moa/spss/server/service/SignatureVerificationService.java
diff options
context:
space:
mode:
authorpeter.danner <peter.danner@d688527b-c9ab-4aba-bd8d-4036d912da1d>2007-07-27 13:46:51 +0000
committerpeter.danner <peter.danner@d688527b-c9ab-4aba-bd8d-4036d912da1d>2007-07-27 13:46:51 +0000
commitbba1cfcc4672a22cb0d0d579d4a51e7ae984f715 (patch)
treece9a0c069a33cd5dda7fc7ebb5604d638a770ac5 /spss.server/src/at/gv/egovernment/moa/spss/server/service/SignatureVerificationService.java
parent3efe2bc76d088426cb8bb6eba7d82cce8eda8f7f (diff)
downloadmoa-id-spss-bba1cfcc4672a22cb0d0d579d4a51e7ae984f715.tar.gz
moa-id-spss-bba1cfcc4672a22cb0d0d579d4a51e7ae984f715.tar.bz2
moa-id-spss-bba1cfcc4672a22cb0d0d579d4a51e7ae984f715.zip
Changed Apache Axis to version 1.4
git-svn-id: https://joinup.ec.europa.eu/svn/moa-idspss/trunk@855 d688527b-c9ab-4aba-bd8d-4036d912da1d
Diffstat (limited to 'spss.server/src/at/gv/egovernment/moa/spss/server/service/SignatureVerificationService.java')
-rw-r--r--spss.server/src/at/gv/egovernment/moa/spss/server/service/SignatureVerificationService.java19
1 files changed, 15 insertions, 4 deletions
diff --git a/spss.server/src/at/gv/egovernment/moa/spss/server/service/SignatureVerificationService.java b/spss.server/src/at/gv/egovernment/moa/spss/server/service/SignatureVerificationService.java
index 1b15a197f..b335a6e23 100644
--- a/spss.server/src/at/gv/egovernment/moa/spss/server/service/SignatureVerificationService.java
+++ b/spss.server/src/at/gv/egovernment/moa/spss/server/service/SignatureVerificationService.java
@@ -1,8 +1,7 @@
package at.gv.egovernment.moa.spss.server.service;
-import org.w3c.dom.Element;
-
import org.apache.axis.AxisFault;
+import org.w3c.dom.Element;
import at.gv.egovernment.moa.logging.Logger;
import at.gv.egovernment.moa.spss.MOAException;
@@ -17,6 +16,8 @@ import at.gv.egovernment.moa.spss.api.xmlverify.VerifyXMLSignatureRequest;
import at.gv.egovernment.moa.spss.api.xmlverify.VerifyXMLSignatureResponse;
import at.gv.egovernment.moa.spss.server.invoke.CMSSignatureVerificationInvoker;
import at.gv.egovernment.moa.spss.server.invoke.XMLSignatureVerificationInvoker;
+import at.gv.egovernment.moa.spss.server.transaction.TransactionContext;
+import at.gv.egovernment.moa.spss.server.transaction.TransactionContextManager;
import at.gv.egovernment.moa.util.StreamUtils;
/**
@@ -52,8 +53,10 @@ public class SignatureVerificationService {
VerifyCMSSignatureRequest requestObj;
VerifyCMSSignatureResponse responseObj;
+ //since Axis (1.1 ff) has problem with namespaces we take the raw request stored by the Axishandler.
+ TransactionContext context = TransactionContextManager.getInstance().getTransactionContext();
// validate the request
- reparsedReq = ServiceUtils.reparseRequest(request[0]);
+ reparsedReq = ServiceUtils.reparseRequest(context.getRequest());
// convert to API objects
requestObj = requestParser.parse(reparsedReq);
@@ -64,6 +67,9 @@ public class SignatureVerificationService {
// map back to XML
response[0] = responseBuilder.build(responseObj).getDocumentElement();
+ // save response in transaction
+ context.setResponse(response[0]);
+
} catch (MOAException e) {
AxisFault fault = AxisFault.makeFault(e);
fault.setFaultDetail(new Element[] { e.toErrorResponse()});
@@ -107,8 +113,10 @@ public class SignatureVerificationService {
VerifyXMLSignatureRequest requestObj;
VerifyXMLSignatureResponse responseObj;
+ //since Axis (1.1 ff) has problem with namespaces we take the raw request stored by the Axishandler.
+ TransactionContext context = TransactionContextManager.getInstance().getTransactionContext();
// validate the request
- reparsedReq = ServiceUtils.reparseRequest(request[0]);
+ reparsedReq = ServiceUtils.reparseRequest(context.getRequest());
// convert to API objects
requestObj = requestParser.parse(reparsedReq);
@@ -118,6 +126,9 @@ public class SignatureVerificationService {
// map back to XML
response[0] = responseBuilder.build(responseObj).getDocumentElement();
+
+ // save response in transaction
+ context.setResponse(response[0]);
} catch (MOAException e) {
AxisFault fault = AxisFault.makeFault(e);