From 1aa74c13ca1bcc7bc6583f1f64d25edc7754b5ee Mon Sep 17 00:00:00 2001 From: clemenso Date: Wed, 11 Feb 2009 20:09:19 +0000 Subject: A-Trust activation workarounds ('sl' preFIX, empty cardchannel namespace, cc:Result instead of Response) git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@300 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../namespaces/cardchannel/ObjectFactory.java | 7 ++- .../namespaces/cardchannel/package-info.java | 2 +- utils/src/test/cardchannel/marshalled.xml | 1 + utils/src/test/cardchannel/script.xml | 6 ++ utils/src/test/java/cardchannel/UnmarshalTest.java | 71 ++++++++++++++++++++++ .../CreateXMLSignatureRequest02.xml_bound.xml | 2 +- 6 files changed, 84 insertions(+), 5 deletions(-) create mode 100644 utils/src/test/cardchannel/marshalled.xml create mode 100644 utils/src/test/cardchannel/script.xml create mode 100644 utils/src/test/java/cardchannel/UnmarshalTest.java diff --git a/utils/src/main/java/at/buergerkarte/namespaces/cardchannel/ObjectFactory.java b/utils/src/main/java/at/buergerkarte/namespaces/cardchannel/ObjectFactory.java index cb0a163c..29124935 100644 --- a/utils/src/main/java/at/buergerkarte/namespaces/cardchannel/ObjectFactory.java +++ b/utils/src/main/java/at/buergerkarte/namespaces/cardchannel/ObjectFactory.java @@ -28,7 +28,8 @@ public class ObjectFactory { private final static QName _Grunddaten_QNAME = new QName("", "Grunddaten"); private final static QName _Script_QNAME = new QName("", "Script"); - private final static QName _Response_QNAME = new QName("", "Response"); + /** A-Trust expects
<Result>
instead of
<Response>
*/ + private final static QName _Response_QNAME = new QName("", "Result"); //Response"); private final static QName _SVPersonenbindung_QNAME = new QName("", "SV-Personenbindung"); private final static QName _Status_QNAME = new QName("", "Status"); private final static QName _EHIC_QNAME = new QName("", "EHIC"); @@ -132,9 +133,9 @@ public class ObjectFactory { /** * Create an instance of {@link JAXBElement }{@code <}{@link ResponseType }{@code >}} - * + * A-Trust expects
<Result>
instead of
<Response>
*/ - @XmlElementDecl(namespace = "", name = "Response") + @XmlElementDecl(namespace = "", name = "Result") //Response") public JAXBElement createResponse(ResponseType value) { return new JAXBElement(_Response_QNAME, ResponseType.class, null, value); } diff --git a/utils/src/main/java/at/buergerkarte/namespaces/cardchannel/package-info.java b/utils/src/main/java/at/buergerkarte/namespaces/cardchannel/package-info.java index 13f79000..f5c1ac04 100644 --- a/utils/src/main/java/at/buergerkarte/namespaces/cardchannel/package-info.java +++ b/utils/src/main/java/at/buergerkarte/namespaces/cardchannel/package-info.java @@ -1,2 +1,2 @@ -@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.buergerkarte.at/cardchannel", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) +@javax.xml.bind.annotation.XmlSchema(namespace = "", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) package at.buergerkarte.namespaces.cardchannel; diff --git a/utils/src/test/cardchannel/marshalled.xml b/utils/src/test/cardchannel/marshalled.xml new file mode 100644 index 00000000..e53ab084 --- /dev/null +++ b/utils/src/test/cardchannel/marshalled.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/utils/src/test/cardchannel/script.xml b/utils/src/test/cardchannel/script.xml new file mode 100644 index 00000000..dd0da379 --- /dev/null +++ b/utils/src/test/cardchannel/script.xml @@ -0,0 +1,6 @@ + + \ No newline at end of file diff --git a/utils/src/test/java/cardchannel/UnmarshalTest.java b/utils/src/test/java/cardchannel/UnmarshalTest.java new file mode 100644 index 00000000..998dd9e6 --- /dev/null +++ b/utils/src/test/java/cardchannel/UnmarshalTest.java @@ -0,0 +1,71 @@ +/* + * Copyright 2008 Federal Chancellery Austria and + * Graz University of Technology + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package cardchannel; + +import at.buergerkarte.namespaces.cardchannel.ObjectFactory; +import at.buergerkarte.namespaces.cardchannel.ResetType; +import at.buergerkarte.namespaces.cardchannel.ScriptType; +import java.io.File; +import java.io.FileNotFoundException; +import java.util.List; +import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBElement; +import javax.xml.bind.JAXBException; +import javax.xml.bind.Marshaller; +import javax.xml.bind.Unmarshaller; +import org.junit.Ignore; +import org.junit.Test; +import static org.junit.Assert.*; + +/** + * + * @author Clemens Orthacker + */ +public class UnmarshalTest { + + @Test + public void unmarshalScript() throws FileNotFoundException, JAXBException { + JAXBContext ctx = JAXBContext.newInstance(ObjectFactory.class); + Unmarshaller um = ctx.createUnmarshaller(); + + JAXBElement script = (JAXBElement) um.unmarshal(new File("src/test/cardchannel/script.xml")); + + ScriptType scriptT = script.getValue(); + System.out.println("script " + scriptT.getClass()); + List resetOrCommandAPDUOrVerifyAPDU = scriptT.getResetOrCommandAPDUOrVerifyAPDU(); +// assertEquals(3, resetOrCommandAPDUOrVerifyAPDU.size()); + for (Object object : resetOrCommandAPDUOrVerifyAPDU) { + System.out.println("script contains: " + object.getClass()); + } + } + + @Test + @Ignore + public void marshalScript() throws JAXBException { + JAXBContext ctx = JAXBContext.newInstance(ObjectFactory.class); + Marshaller m = ctx.createMarshaller(); + + ObjectFactory of = new ObjectFactory(); + ResetType r = of.createResetType(); + ScriptType s = of.createScriptType(); + s.getResetOrCommandAPDUOrVerifyAPDU().add(r); + JAXBElement script = of.createScript(s); + + m.marshal(script, new File("src/test/cardchannel/marshalled.xml")); + + } +} diff --git a/utils/src/test/requests/CreateXMLSignatureRequest02.xml_bound.xml b/utils/src/test/requests/CreateXMLSignatureRequest02.xml_bound.xml index de881c31..54af272b 100644 --- a/utils/src/test/requests/CreateXMLSignatureRequest02.xml_bound.xml +++ b/utils/src/test/requests/CreateXMLSignatureRequest02.xml_bound.xml @@ -1 +1 @@ -SecureSignatureKeypairapplication/xhtml+xmltext/html/saml:Assertion \ No newline at end of file +SecureSignatureKeypairapplication/xhtml+xmltext/html/saml:Assertion \ No newline at end of file -- cgit v1.2.3