From df2ba23f9479f37c11a7a23b697b5acaa4e97d33 Mon Sep 17 00:00:00 2001 From: Thomas Lenz Date: Tue, 1 Oct 2019 10:57:01 +0200 Subject: update MIS v2.0 end-point implementation add MISV2Client.java for testing --- generatesources.bat | 10 +- .../java/at/gv/util/client/mis_v2/MISV2Client.java | 117 +++++++++++++++++ .../at/gv/util/wsdl/mis_v2/GetMandatesError.java | 2 +- .../gv/util/wsdl/mis_v2/GetMandatesPortType.java | 4 +- .../at/gv/util/wsdl/mis_v2/GetMandatesService.java | 2 +- .../java/at/gv/util/xsd/mis_v2/AttributeType.java | 146 +++++++++++++++++++++ .../gv/util/xsd/mis_v2/GetMandatesRequestType.java | 34 +++++ .../java/at/gv/util/xsd/mis_v2/MisMandateType.java | 5 +- .../java/at/gv/util/xsd/mis_v2/ObjectFactory.java | 8 ++ .../xsd/mis_v2/persondata/AbstractPersonType.java | 8 +- .../persondata/CompactCorporateBodyType.java | 2 +- .../mis_v2/persondata/CompactPersonDataType.java | 22 ++-- .../persondata/CompactPhysicalPersonType.java | 2 +- .../xsd/mis_v2/persondata/CorporateBodyType.java | 2 +- .../xsd/mis_v2/persondata/IdentificationType.java | 2 +- .../xsd/mis_v2/persondata/InternetAddressType.java | 2 +- .../xsd/mis_v2/persondata/NationalityType.java | 12 +- .../util/xsd/mis_v2/persondata/PersonDataType.java | 22 ++-- .../xsd/mis_v2/persondata/PhysicalPersonType.java | 2 +- .../mis_v2/persondata/TelephoneAddressType.java | 2 +- .../mis_v2/persondata/TypedPostalAddressType.java | 2 +- .../w3c_xmldsig/CanonicalizationMethodType.java | 2 +- .../gv/util/xsd/w3c_xmldsig/DigestMethodType.java | 2 +- .../at/gv/util/xsd/w3c_xmldsig/KeyInfoType.java | 20 +-- .../at/gv/util/xsd/w3c_xmldsig/KeyValueType.java | 10 +- .../at/gv/util/xsd/w3c_xmldsig/ObjectType.java | 2 +- .../at/gv/util/xsd/w3c_xmldsig/PGPDataType.java | 8 +- .../at/gv/util/xsd/w3c_xmldsig/SPKIDataType.java | 2 +- .../util/xsd/w3c_xmldsig/SignatureMethodType.java | 2 +- .../xsd/w3c_xmldsig/SignaturePropertyType.java | 2 +- .../at/gv/util/xsd/w3c_xmldsig/TransformType.java | 4 +- .../at/gv/util/xsd/w3c_xmldsig/X509DataType.java | 8 +- .../wsdl/custom-bindings/mis_v2-schemas.xml | 8 +- .../wsdl/mis/mis_2.0/PersonData_20_en_moaWID.xsd | 1 - src/main/resources/wsdl/mis/mis_2.0/mis-2.0.0.xsd | 13 +- src/test/java/at/gv/util/demo/Clienttests.java | 88 +++++++++++-- src/test/java/at/gv/util/demo/ZuseSSLTest.java | 15 ++- 37 files changed, 494 insertions(+), 101 deletions(-) create mode 100644 src/main/java/at/gv/util/client/mis_v2/MISV2Client.java create mode 100644 src/main/java/at/gv/util/xsd/mis_v2/AttributeType.java diff --git a/generatesources.bat b/generatesources.bat index 874d022..d4f5891 100644 --- a/generatesources.bat +++ b/generatesources.bat @@ -1,5 +1,5 @@ set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_141 -set APACHE_CXF=F:\Downloads\apache-cxf-3.1.10\apache-cxf-3.1.10 +set APACHE_CXF=E:\Downloads\apache-cxf-3.1.10\apache-cxf-3.1.10 REM "%APACHE_CXF%\bin\wsdl2java.bat" -b ./src/main/resources/wsdl/custom-bindings/moa-wsdl.xml -b ./src/main/resources/wsdl/custom-bindings/moa-schemas.xml -b ./src/main/resources/wsdl/MOA-SPSS-1.3.xsd -encoding utf-8 -d ./wsdlsources ./src/main/resources/wsdl/MOA-SPSS-1.3.wsdl @@ -13,11 +13,11 @@ REM "%JAVA_HOME%\bin\xjc.exe" -b ./src/main/resources/wsdl/custom-bindings/sl-sc REM "%JAVA_HOME%\bin\xjc.exe" -b ./src/main/resources/wsdl/custom-bindings/omsp-schemas.xml -d ./wsdlsources/src ./src/main/resources/wsdl/omsp/omsp.xsd -"%APACHE_CXF%\bin\wsdl2java.bat" -b ./src/main/resources/wsdl/mms/mms-1.1.xsd -b ./src/main/resources/wsdl/custom-bindings/mms-wsdl.xml -b ./src/main/resources/wsdl/custom-bindings/mms-schemas.xml -encoding utf-8 -d ./wsdlsources ./src/main/resources/wsdl/mms/mms.wsdl +REM "%APACHE_CXF%\bin\wsdl2java.bat" -b ./src/main/resources/wsdl/mms/mms-1.1.xsd -b ./src/main/resources/wsdl/custom-bindings/mms-wsdl.xml -b ./src/main/resources/wsdl/custom-bindings/mms-schemas.xml -encoding utf-8 -d ./wsdlsources ./src/main/resources/wsdl/mms/mms.wsdl REM "%APACHE_CXF%\bin\wsdl2java.bat" -b ./src/main/resources/wsdl/mzs/app2mzs.xsd -b ./src/main/resources/wsdl/custom-bindings/mzs-wsdl.xml -b ./src/main/resources/wsdl/custom-bindings/mzs-schemas.xml -encoding utf-8 -d ./wsdlsources ./src/main/resources/wsdl/mzs/app2mzs.wsdl -Rem "%APACHE_CXF%\bin\wsdl2java.bat" -b ./src/main/resources/wsdl/mis/usp/mis-usp-1.0.2.xsd -b ./src/main/resources/wsdl/custom-bindings/mis-usp-wsdl.xml -b ./src/main/resources/wsdl/custom-bindings/mis-usp-schemas.xml -encoding utf-8 -d ./wsdlsources ./src/main/resources/wsdl/mis/usp/mis-usp-1.0.2.wsdl +REM "%APACHE_CXF%\bin\wsdl2java.bat" -b ./src/main/resources/wsdl/mis/usp/mis-usp-1.0.2.xsd -b ./src/main/resources/wsdl/custom-bindings/mis-usp-wsdl.xml -b ./src/main/resources/wsdl/custom-bindings/mis-usp-schemas.xml -encoding utf-8 -d ./wsdlsources ./src/main/resources/wsdl/mis/usp/mis-usp-1.0.2.wsdl REM "%JAVA_HOME%\bin\wsimport.exe" ./src/main/resources/wsdl/zkopf/zkopf.wsdl -b ./src/main/resources/wsdl/zkopf/zkopf.xsd -b ./src/main/resources/wsdl/custom-bindings/zkopf-wsdl.xml -b ./src/main/resources/wsdl/custom-bindings/zkopf-schemas.xml -s ./wsdlsources/src -d ./wsdlsources/classes @@ -39,4 +39,6 @@ REM "%APACHE_CXF%\bin\wsdl2java.bat" -b ./src/main/resources/wsdl/custom-binding REM "%APACHE_CXF%\bin\wsdl2java.bat" -b ./src/main/resources/wsdl/custom-bindings/szr-wsdl.xml -b ./src/main/resources/wsdl/custom-bindings/szr-schemas.xml -b ./src/main/resources/wsdl/szr/szr_pvp.xsd -b ./src/main/resources/wsdl/szr/szr_pvp_sec.xsd -encoding utf-8 -d ./wsdlsources ./src/main/resources/wsdl/szr/SZR_v2.0.wsdl -REM "%APACHE_CXF%\bin\wsdl2java.bat" -b xmlbeans -b ./src/main/resources/wsdl/custom-bindings/mis-usp_v2-wsdl.xml -encoding utf-8 -d ./wsdlsources ./src/main/resources/wsdl/mis/usp_v2/Synchronisation.wsdl \ No newline at end of file +REM "%APACHE_CXF%\bin\wsdl2java.bat" -b xmlbeans -b ./src/main/resources/wsdl/custom-bindings/mis-usp_v2-wsdl.xml -encoding utf-8 -d ./wsdlsources ./src/main/resources/wsdl/mis/usp_v2/Synchronisation.wsdl + +"%APACHE_CXF%\bin\wsdl2java.bat" -b ./src/main/resources/wsdl/mis/mis_2.0/mis-2.0.0.xsd -b ./src/main/resources/wsdl/custom-bindings/mis_v2-wsdl.xml -b ./src/main/resources/wsdl/custom-bindings/mis_v2-schemas.xml -encoding utf-8 -d ./wsdlsources ./src/main/resources/wsdl/mis/mis_2.0/mis-2.0.0.wsdl \ No newline at end of file diff --git a/src/main/java/at/gv/util/client/mis_v2/MISV2Client.java b/src/main/java/at/gv/util/client/mis_v2/MISV2Client.java new file mode 100644 index 0000000..ed145f5 --- /dev/null +++ b/src/main/java/at/gv/util/client/mis_v2/MISV2Client.java @@ -0,0 +1,117 @@ +package at.gv.util.client.mis_v2; + +import java.net.URL; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import javax.annotation.Resource; +import javax.net.ssl.SSLContext; +import javax.xml.namespace.QName; +import javax.xml.ws.BindingProvider; +import javax.xml.ws.WebServiceContext; +import javax.xml.ws.handler.Handler; + +import org.apache.cxf.configuration.jsse.TLSClientParameters; +import org.apache.cxf.endpoint.Client; +import org.apache.cxf.frontend.ClientProxy; +import org.apache.cxf.transport.http.HTTPConduit; +import org.apache.cxf.transports.http.configuration.HTTPClientPolicy; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import at.gv.util.LaxHostNameVerifier; +import at.gv.util.LoggingHandler; +import at.gv.util.MiscUtil; +import at.gv.util.client.moaid.MOAIDClient; +import at.gv.util.client.szr.SZRClient; +import at.gv.util.config.EgovUtilConfiguration; +import at.gv.util.ex.EgovUtilException; +import at.gv.util.wsdl.mis.MandateIssuePortType; +import at.gv.util.wsdl.mis.MandateIssueService; +import at.gv.util.wsdl.mis_v2.GetMandatesError; +import at.gv.util.wsdl.mis_v2.GetMandatesPortType; +import at.gv.util.wsdl.mis_v2.GetMandatesService; +import at.gv.util.wsdl.szr.SZRException; +import at.gv.util.xsd.mis.MandateIssueRequestType; +import at.gv.util.xsd.mis.MandateIssueResponseType; +import at.gv.util.xsd.mis_v2.GetMandatesRequestType; +import at.gv.util.xsd.mis_v2.GetMandatesResponseType; + +public class MISV2Client { + + @Resource WebServiceContext wsContext; + + private EgovUtilConfiguration config = null; + Logger log = LoggerFactory.getLogger(MISV2Client.class); + + private GetMandatesService service; + + public MISV2Client() {} + + public MISV2Client(EgovUtilConfiguration config) { + if (config == null) { + throw new NullPointerException("Parameter config must not be null."); + } + this.config = config; + + URL url = MISV2Client.class.getResource("/wsdl/mis/mis_2.0/mis-2.0.0.wsdl"); + service = new GetMandatesService(url); + + } + + @SuppressWarnings({ "unchecked", "rawtypes" }) + public GetMandatesResponseType sendMandateIssueRequest(GetMandatesRequestType getMandatesRequest, String misServiceURL) throws SZRException, EgovUtilException, GetMandatesError { + MiscUtil.assertNotNull(getMandatesRequest, "mir"); + MiscUtil.assertNotNull(misServiceURL, "misServiceURL"); + + + GetMandatesPortType port = service.getGetMandatesPort(); + + log.debug("MIS v2.0 connection URL: " + misServiceURL); + BindingProvider bindingProvider = (BindingProvider) port; + Map requestContext = bindingProvider.getRequestContext(); + requestContext.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, misServiceURL); + + log.trace("Adding JAX-WS request/response trace handler."); + List handlerList = bindingProvider.getBinding().getHandlerChain(); + if (handlerList == null) { + handlerList = new ArrayList(); + } + LoggingHandler loggingHandler = new LoggingHandler(); + handlerList.add(loggingHandler); + bindingProvider.getBinding().setHandlerChain(handlerList); + + // check for ssl + if (misServiceURL.toLowerCase().startsWith("https")) { + log.trace("Using ssl for MIS client request."); + SSLContext sslContext = config.getMMSsslConfiguration().getSSLContext(false); + if (sslContext == null) { + throw new EgovUtilException("SSL context from configuration is empty. Please configure an SSL context in the configuration first."); + } + Client client = ClientProxy.getClient(port); + HTTPConduit http = (HTTPConduit) client.getConduit(); + HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy(); + + httpClientPolicy.setConnectionTimeout(36000); + httpClientPolicy.setAllowChunking(false); + httpClientPolicy.setReceiveTimeout(32000); + + http.setClient(httpClientPolicy); + + TLSClientParameters tlsParams = new TLSClientParameters(); + tlsParams.setSSLSocketFactory(sslContext.getSocketFactory()); + + // check for lax hostname + if (this.config.getMISsslConfiguration().useLaxHostNameVerifier()) { + log.trace("LaxHostnameVerifier enabled. This setting is not recommended to use."); + tlsParams.setHostnameVerifier(new LaxHostNameVerifier()); + } + + http.setTlsClientParameters(tlsParams ); + } + return port.getMandatesOperation(getMandatesRequest); + + } + +} diff --git a/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesError.java b/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesError.java index 253f773..1a1513d 100644 --- a/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesError.java +++ b/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesError.java @@ -6,7 +6,7 @@ import javax.xml.ws.WebFault; /** * This class was generated by Apache CXF 3.1.10 - * 2019-09-30T12:17:52.990+02:00 + * 2019-09-30T16:58:56.086+02:00 * Generated source version: 3.1.10 */ diff --git a/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesPortType.java b/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesPortType.java index 1898468..5a8a83b 100644 --- a/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesPortType.java +++ b/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesPortType.java @@ -9,12 +9,12 @@ import javax.xml.bind.annotation.XmlSeeAlso; /** * This class was generated by Apache CXF 3.1.10 - * 2019-09-30T12:17:53.018+02:00 + * 2019-09-30T16:58:56.108+02:00 * Generated source version: 3.1.10 * */ @WebService(targetNamespace = "http://reference.e-government.gv.at/namespace/mandates/mis/2.0/wsdl", name = "GetMandatesPortType") -@XmlSeeAlso({at.gv.util.xsd.w3c_xmlenc.ObjectFactory.class, at.gv.util.xsd.mis_v2.ObjectFactory.class, at.gv.util.xsd.saml.v2_0.assertion.ObjectFactory.class, at.gv.util.xsd.w3c_xmldsig.ObjectFactory.class, at.gv.util.xsd.mis_v2.persondata.ObjectFactory.class}) +@XmlSeeAlso({at.gv.util.xsd.mis_v2.ObjectFactory.class, at.gv.util.xsd.w3c_xmldsig.ObjectFactory.class, at.gv.util.xsd.mis_v2.persondata.ObjectFactory.class}) @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) public interface GetMandatesPortType { diff --git a/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesService.java b/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesService.java index f0f9ceb..7e08ba0 100644 --- a/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesService.java +++ b/src/main/java/at/gv/util/wsdl/mis_v2/GetMandatesService.java @@ -10,7 +10,7 @@ import javax.xml.ws.Service; /** * This class was generated by Apache CXF 3.1.10 - * 2019-09-30T12:17:53.040+02:00 + * 2019-09-30T16:58:56.124+02:00 * Generated source version: 3.1.10 * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/AttributeType.java b/src/main/java/at/gv/util/xsd/mis_v2/AttributeType.java new file mode 100644 index 0000000..0d986a6 --- /dev/null +++ b/src/main/java/at/gv/util/xsd/mis_v2/AttributeType.java @@ -0,0 +1,146 @@ + +package at.gv.util.xsd.mis_v2; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java-Klasse für AttributeType complex type. + * + *

Das folgende Schemafragment gibt den erwarteten Content an, der in dieser Klasse enthalten ist. + * + *

+ * <complexType name="AttributeType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <element name="AttributeValue" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *       </sequence>
+ *       <attribute name="Name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       <attribute name="FriendlyName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *       <attribute name="NameFormat" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "AttributeType", propOrder = { + "attributeValue" +}) +public class AttributeType { + + @XmlElement(name = "AttributeValue", required = true) + protected String attributeValue; + @XmlAttribute(name = "Name", required = true) + protected String name; + @XmlAttribute(name = "FriendlyName") + protected String friendlyName; + @XmlAttribute(name = "NameFormat") + @XmlSchemaType(name = "anyURI") + protected String nameFormat; + + /** + * Ruft den Wert der attributeValue-Eigenschaft ab. + * + * @return + * possible object is + * {@link String } + * + */ + public String getAttributeValue() { + return attributeValue; + } + + /** + * Legt den Wert der attributeValue-Eigenschaft fest. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setAttributeValue(String value) { + this.attributeValue = value; + } + + /** + * Ruft den Wert der name-Eigenschaft ab. + * + * @return + * possible object is + * {@link String } + * + */ + public String getName() { + return name; + } + + /** + * Legt den Wert der name-Eigenschaft fest. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setName(String value) { + this.name = value; + } + + /** + * Ruft den Wert der friendlyName-Eigenschaft ab. + * + * @return + * possible object is + * {@link String } + * + */ + public String getFriendlyName() { + return friendlyName; + } + + /** + * Legt den Wert der friendlyName-Eigenschaft fest. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setFriendlyName(String value) { + this.friendlyName = value; + } + + /** + * Ruft den Wert der nameFormat-Eigenschaft ab. + * + * @return + * possible object is + * {@link String } + * + */ + public String getNameFormat() { + return nameFormat; + } + + /** + * Legt den Wert der nameFormat-Eigenschaft fest. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setNameFormat(String value) { + this.nameFormat = value; + } + +} diff --git a/src/main/java/at/gv/util/xsd/mis_v2/GetMandatesRequestType.java b/src/main/java/at/gv/util/xsd/mis_v2/GetMandatesRequestType.java index c384aca..c1aacd8 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/GetMandatesRequestType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/GetMandatesRequestType.java @@ -3,9 +3,13 @@ package at.gv.util.xsd.mis_v2; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlSchemaType; import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; /** @@ -21,6 +25,7 @@ import javax.xml.bind.annotation.XmlType; * <element name="PersonInformation" type="{http://reference.e-government.gv.at/namespace/mandates/mis/2.0/xsd}PersonInformationType"/> * <element name="MandateCollectionToken" type="{http://www.w3.org/2001/XMLSchema}anyURI"/> * </choice> + * <attribute name="reqId" use="required" type="{http://www.w3.org/2001/XMLSchema}ID" /> * </restriction> * </complexContent> * </complexType> @@ -40,6 +45,11 @@ public class GetMandatesRequestType { @XmlElement(name = "MandateCollectionToken") @XmlSchemaType(name = "anyURI") protected String mandateCollectionToken; + @XmlAttribute(name = "reqId", required = true) + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + @XmlID + @XmlSchemaType(name = "ID") + protected String reqId; /** * Ruft den Wert der personInformation-Eigenschaft ab. @@ -89,4 +99,28 @@ public class GetMandatesRequestType { this.mandateCollectionToken = value; } + /** + * Ruft den Wert der reqId-Eigenschaft ab. + * + * @return + * possible object is + * {@link String } + * + */ + public String getReqId() { + return reqId; + } + + /** + * Legt den Wert der reqId-Eigenschaft fest. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setReqId(String value) { + this.reqId = value; + } + } diff --git a/src/main/java/at/gv/util/xsd/mis_v2/MisMandateType.java b/src/main/java/at/gv/util/xsd/mis_v2/MisMandateType.java index 984369b..1a0eaed 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/MisMandateType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/MisMandateType.java @@ -7,7 +7,6 @@ import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlType; -import at.gv.util.xsd.saml.v2_0.assertion.AttributeType; /** @@ -20,7 +19,7 @@ import at.gv.util.xsd.saml.v2_0.assertion.AttributeType; * <complexContent> * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> * <sequence> - * <element ref="{urn:oasis:names:tc:SAML:2.0:assertion}Attribute" maxOccurs="unbounded"/> + * <element name="Attribute" type="{http://reference.e-government.gv.at/namespace/mandates/mis/2.0/xsd}AttributeType" maxOccurs="unbounded"/> * </sequence> * </restriction> * </complexContent> @@ -35,7 +34,7 @@ import at.gv.util.xsd.saml.v2_0.assertion.AttributeType; }) public class MisMandateType { - @XmlElement(name = "Attribute", namespace = "urn:oasis:names:tc:SAML:2.0:assertion", required = true) + @XmlElement(name = "Attribute", required = true) protected List attribute; /** diff --git a/src/main/java/at/gv/util/xsd/mis_v2/ObjectFactory.java b/src/main/java/at/gv/util/xsd/mis_v2/ObjectFactory.java index c376013..678e61f 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/ObjectFactory.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/ObjectFactory.java @@ -75,6 +75,14 @@ public class ObjectFactory { return new MisMandateType(); } + /** + * Create an instance of {@link AttributeType } + * + */ + public AttributeType createAttributeType() { + return new AttributeType(); + } + /** * Create an instance of {@link JAXBElement }{@code <}{@link GetMandatesRequestType }{@code >}} * diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/AbstractPersonType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/AbstractPersonType.java index 04d5139..8de0335 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/AbstractPersonType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/AbstractPersonType.java @@ -119,15 +119,15 @@ public class AbstractPersonType { * *

* Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link ERJPZahl }{@code >} + * {@link JAXBElement }{@code <}{@link Vereinsnummer }{@code >} * {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >} - * {@link JAXBElement }{@code <}{@link ZMRzahl }{@code >} * {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >} - * {@link JAXBElement }{@code <}{@link Vereinsnummer }{@code >} + * {@link JAXBElement }{@code <}{@link ZMRzahl }{@code >} * {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >} - * {@link JAXBElement }{@code <}{@link Firmenbuchnummer }{@code >} * {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >} + * {@link JAXBElement }{@code <}{@link Firmenbuchnummer }{@code >} + * {@link JAXBElement }{@code <}{@link ERJPZahl }{@code >} * * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactCorporateBodyType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactCorporateBodyType.java index 6fad454..f58755e 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactCorporateBodyType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactCorporateBodyType.java @@ -188,8 +188,8 @@ public class CompactCorporateBodyType * *

* Objects of the following type(s) are allowed in the list - * {@link Element } * {@link Object } + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactPersonDataType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactPersonDataType.java index 925e0c9..1e572a4 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactPersonDataType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactPersonDataType.java @@ -75,10 +75,10 @@ public class CompactPersonDataType * * @return * possible object is - * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} * {@link JAXBElement }{@code <}{@link CorporateBodyType }{@code >} + * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} + * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} + * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractPersonType }{@code >} * */ @@ -91,10 +91,10 @@ public class CompactPersonDataType * * @param value * allowed object is - * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} * {@link JAXBElement }{@code <}{@link CorporateBodyType }{@code >} + * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} + * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} + * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractPersonType }{@code >} * */ @@ -120,12 +120,12 @@ public class CompactPersonDataType * *

* Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link PostalAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactPostalAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link TypedPostalAddressType }{@code >} + * {@link JAXBElement }{@code <}{@link TelephoneAddressType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractAddressType }{@code >} * {@link JAXBElement }{@code <}{@link InternetAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link TelephoneAddressType }{@code >} + * {@link JAXBElement }{@code <}{@link PostalAddressType }{@code >} + * {@link JAXBElement }{@code <}{@link TypedPostalAddressType }{@code >} + * {@link JAXBElement }{@code <}{@link CompactPostalAddressType }{@code >} * * */ @@ -237,9 +237,9 @@ public class CompactPersonDataType * *

* Objects of the following type(s) are allowed in the list + * {@link Object } * {@link String } * {@link Element } - * {@link Object } * * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactPhysicalPersonType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactPhysicalPersonType.java index 7b395f0..d97e067 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactPhysicalPersonType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/CompactPhysicalPersonType.java @@ -243,8 +243,8 @@ public class CompactPhysicalPersonType * *

* Objects of the following type(s) are allowed in the list - * {@link Element } * {@link Object } + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/CorporateBodyType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/CorporateBodyType.java index 7eea511..25e86fa 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/CorporateBodyType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/CorporateBodyType.java @@ -256,8 +256,8 @@ public class CorporateBodyType * *

* Objects of the following type(s) are allowed in the list - * {@link Element } * {@link Object } + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/IdentificationType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/IdentificationType.java index 948d89a..b919b3d 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/IdentificationType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/IdentificationType.java @@ -172,8 +172,8 @@ public class IdentificationType { * *

* Objects of the following type(s) are allowed in the list - * {@link Element } * {@link Object } + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/InternetAddressType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/InternetAddressType.java index ab7946c..90f82ef 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/InternetAddressType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/InternetAddressType.java @@ -121,8 +121,8 @@ public class InternetAddressType * *

* Objects of the following type(s) are allowed in the list - * {@link Element } * {@link Object } + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/NationalityType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/NationalityType.java index 2a3018b..78113c0 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/NationalityType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/NationalityType.java @@ -52,10 +52,10 @@ import org.w3c.dom.Element; public class NationalityType { @XmlElementRefs({ - @XmlElementRef(name = "CountryNameDE", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class), - @XmlElementRef(name = "ISOCode3", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class), @XmlElementRef(name = "CountryNameFR", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class), - @XmlElementRef(name = "CountryNameEN", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class) + @XmlElementRef(name = "CountryNameEN", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class), + @XmlElementRef(name = "ISOCode3", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class), + @XmlElementRef(name = "CountryNameDE", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class) }) @XmlMixed @XmlAnyElement(lax = true) @@ -80,11 +80,11 @@ public class NationalityType { *

* Objects of the following type(s) are allowed in the list * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link String } - * {@link Element } - * {@link Object } * {@link JAXBElement }{@code <}{@link String }{@code >} * {@link JAXBElement }{@code <}{@link String }{@code >} + * {@link Object } + * {@link String } + * {@link Element } * {@link JAXBElement }{@code <}{@link String }{@code >} * * diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/PersonDataType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/PersonDataType.java index 1be64ea..e3f3e34 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/PersonDataType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/PersonDataType.java @@ -75,10 +75,10 @@ public class PersonDataType * * @return * possible object is - * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} * {@link JAXBElement }{@code <}{@link CorporateBodyType }{@code >} + * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} + * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} + * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractPersonType }{@code >} * */ @@ -91,10 +91,10 @@ public class PersonDataType * * @param value * allowed object is - * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} * {@link JAXBElement }{@code <}{@link CorporateBodyType }{@code >} + * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} + * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} + * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractPersonType }{@code >} * */ @@ -120,12 +120,12 @@ public class PersonDataType * *

* Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link PostalAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactPostalAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link TypedPostalAddressType }{@code >} + * {@link JAXBElement }{@code <}{@link TelephoneAddressType }{@code >} * {@link JAXBElement }{@code <}{@link AbstractAddressType }{@code >} * {@link JAXBElement }{@code <}{@link InternetAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link TelephoneAddressType }{@code >} + * {@link JAXBElement }{@code <}{@link PostalAddressType }{@code >} + * {@link JAXBElement }{@code <}{@link TypedPostalAddressType }{@code >} + * {@link JAXBElement }{@code <}{@link CompactPostalAddressType }{@code >} * * */ @@ -237,9 +237,9 @@ public class PersonDataType * *

* Objects of the following type(s) are allowed in the list + * {@link Object } * {@link String } * {@link Element } - * {@link Object } * * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/PhysicalPersonType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/PhysicalPersonType.java index cbec436..24ab584 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/PhysicalPersonType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/PhysicalPersonType.java @@ -488,8 +488,8 @@ public class PhysicalPersonType * *

* Objects of the following type(s) are allowed in the list - * {@link Element } * {@link Object } + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/TelephoneAddressType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/TelephoneAddressType.java index 2a65cab..03809cd 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/TelephoneAddressType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/TelephoneAddressType.java @@ -125,8 +125,8 @@ public class TelephoneAddressType * *

* Objects of the following type(s) are allowed in the list - * {@link Element } * {@link Object } + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/mis_v2/persondata/TypedPostalAddressType.java b/src/main/java/at/gv/util/xsd/mis_v2/persondata/TypedPostalAddressType.java index 0bb2141..bcd27a8 100644 --- a/src/main/java/at/gv/util/xsd/mis_v2/persondata/TypedPostalAddressType.java +++ b/src/main/java/at/gv/util/xsd/mis_v2/persondata/TypedPostalAddressType.java @@ -120,8 +120,8 @@ public class TypedPostalAddressType * *

* Objects of the following type(s) are allowed in the list - * {@link Element } * {@link Object } + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/CanonicalizationMethodType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/CanonicalizationMethodType.java index 06ae1dc..ac1a64f 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/CanonicalizationMethodType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/CanonicalizationMethodType.java @@ -63,8 +63,8 @@ public class CanonicalizationMethodType { * *

* Objects of the following type(s) are allowed in the list - * {@link String } * {@link Object } + * {@link String } * * */ diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/DigestMethodType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/DigestMethodType.java index c430ddb..ee5ff4f 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/DigestMethodType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/DigestMethodType.java @@ -64,9 +64,9 @@ public class DigestMethodType { * *

* Objects of the following type(s) are allowed in the list + * {@link Object } * {@link String } * {@link Element } - * {@link Object } * * */ diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/KeyInfoType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/KeyInfoType.java index a21d4ab..ac5821e 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/KeyInfoType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/KeyInfoType.java @@ -53,13 +53,13 @@ import org.w3c.dom.Element; public class KeyInfoType { @XmlElementRefs({ + @XmlElementRef(name = "RetrievalMethod", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), @XmlElementRef(name = "KeyValue", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), - @XmlElementRef(name = "SPKIData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), - @XmlElementRef(name = "KeyName", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), - @XmlElementRef(name = "X509Data", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), + @XmlElementRef(name = "MgmtData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), @XmlElementRef(name = "PGPData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), - @XmlElementRef(name = "RetrievalMethod", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), - @XmlElementRef(name = "MgmtData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false) + @XmlElementRef(name = "X509Data", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), + @XmlElementRef(name = "SPKIData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), + @XmlElementRef(name = "KeyName", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false) }) @XmlMixed @XmlAnyElement(lax = true) @@ -88,15 +88,15 @@ public class KeyInfoType { * *

* Objects of the following type(s) are allowed in the list + * {@link JAXBElement }{@code <}{@link RetrievalMethodType }{@code >} * {@link JAXBElement }{@code <}{@link KeyValueType }{@code >} + * {@link Object } * {@link String } - * {@link JAXBElement }{@code <}{@link SPKIDataType }{@code >} - * {@link JAXBElement }{@code <}{@link String }{@code >} * {@link Element } - * {@link JAXBElement }{@code <}{@link X509DataType }{@code >} - * {@link Object } + * {@link JAXBElement }{@code <}{@link String }{@code >} * {@link JAXBElement }{@code <}{@link PGPDataType }{@code >} - * {@link JAXBElement }{@code <}{@link RetrievalMethodType }{@code >} + * {@link JAXBElement }{@code <}{@link X509DataType }{@code >} + * {@link JAXBElement }{@code <}{@link SPKIDataType }{@code >} * {@link JAXBElement }{@code <}{@link String }{@code >} * * diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/KeyValueType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/KeyValueType.java index e5ac1b6..796512f 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/KeyValueType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/KeyValueType.java @@ -42,8 +42,8 @@ import org.w3c.dom.Element; public class KeyValueType { @XmlElementRefs({ - @XmlElementRef(name = "RSAKeyValue", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), - @XmlElementRef(name = "DSAKeyValue", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false) + @XmlElementRef(name = "DSAKeyValue", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), + @XmlElementRef(name = "RSAKeyValue", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false) }) @XmlMixed @XmlAnyElement(lax = true) @@ -67,11 +67,11 @@ public class KeyValueType { * *

* Objects of the following type(s) are allowed in the list + * {@link JAXBElement }{@code <}{@link DSAKeyValueType }{@code >} + * {@link Object } * {@link String } - * {@link Element } * {@link JAXBElement }{@code <}{@link RSAKeyValueType }{@code >} - * {@link Object } - * {@link JAXBElement }{@code <}{@link DSAKeyValueType }{@code >} + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/ObjectType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/ObjectType.java index e40340e..e0e0021 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/ObjectType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/ObjectType.java @@ -76,9 +76,9 @@ public class ObjectType { * *

* Objects of the following type(s) are allowed in the list + * {@link Object } * {@link String } * {@link Element } - * {@link Object } * * */ diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/PGPDataType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/PGPDataType.java index 07eb0e1..d9cec44 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/PGPDataType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/PGPDataType.java @@ -47,8 +47,8 @@ import org.w3c.dom.Element; public class PGPDataType { @XmlElementRefs({ - @XmlElementRef(name = "PGPKeyPacket", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), - @XmlElementRef(name = "PGPKeyID", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false) + @XmlElementRef(name = "PGPKeyID", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), + @XmlElementRef(name = "PGPKeyPacket", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false) }) @XmlAnyElement(lax = true) protected List content; @@ -82,9 +82,9 @@ public class PGPDataType { *

* Objects of the following type(s) are allowed in the list * {@link JAXBElement }{@code <}{@link byte[]}{@code >} - * {@link Element } - * {@link Object } * {@link JAXBElement }{@code <}{@link byte[]}{@code >} + * {@link Object } + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/SPKIDataType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/SPKIDataType.java index 3e7a6f7..2f127cb 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/SPKIDataType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/SPKIDataType.java @@ -60,9 +60,9 @@ public class SPKIDataType { * *

* Objects of the following type(s) are allowed in the list + * {@link Object } * {@link JAXBElement }{@code <}{@link byte[]}{@code >} * {@link Element } - * {@link Object } * * */ diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/SignatureMethodType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/SignatureMethodType.java index 5f1cf91..6010677 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/SignatureMethodType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/SignatureMethodType.java @@ -68,9 +68,9 @@ public class SignatureMethodType { * *

* Objects of the following type(s) are allowed in the list - * {@link String } * {@link Object } * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} + * {@link String } * * */ diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/SignaturePropertyType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/SignaturePropertyType.java index 71614cf..0aab37a 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/SignaturePropertyType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/SignaturePropertyType.java @@ -73,9 +73,9 @@ public class SignaturePropertyType { * *

* Objects of the following type(s) are allowed in the list + * {@link Object } * {@link String } * {@link Element } - * {@link Object } * * */ diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/TransformType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/TransformType.java index bcf0b35..0f061e0 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/TransformType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/TransformType.java @@ -68,10 +68,10 @@ public class TransformType { * *

* Objects of the following type(s) are allowed in the list - * {@link String } - * {@link Element } * {@link JAXBElement }{@code <}{@link String }{@code >} * {@link Object } + * {@link String } + * {@link Element } * * */ diff --git a/src/main/java/at/gv/util/xsd/w3c_xmldsig/X509DataType.java b/src/main/java/at/gv/util/xsd/w3c_xmldsig/X509DataType.java index 9077b3c..078ab82 100644 --- a/src/main/java/at/gv/util/xsd/w3c_xmldsig/X509DataType.java +++ b/src/main/java/at/gv/util/xsd/w3c_xmldsig/X509DataType.java @@ -47,9 +47,9 @@ public class X509DataType { @XmlElementRefs({ @XmlElementRef(name = "X509SubjectName", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), + @XmlElementRef(name = "X509IssuerSerial", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), @XmlElementRef(name = "X509SKI", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), @XmlElementRef(name = "X509Certificate", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), - @XmlElementRef(name = "X509IssuerSerial", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false), @XmlElementRef(name = "X509CRL", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class, required = false) }) @XmlAnyElement(lax = true) @@ -74,11 +74,11 @@ public class X509DataType { *

* Objects of the following type(s) are allowed in the list * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link Element } - * {@link JAXBElement }{@code <}{@link byte[]}{@code >} + * {@link JAXBElement }{@code <}{@link X509IssuerSerialType }{@code >} * {@link Object } * {@link JAXBElement }{@code <}{@link byte[]}{@code >} - * {@link JAXBElement }{@code <}{@link X509IssuerSerialType }{@code >} + * {@link JAXBElement }{@code <}{@link byte[]}{@code >} + * {@link Element } * {@link JAXBElement }{@code <}{@link byte[]}{@code >} * * diff --git a/src/main/resources/wsdl/custom-bindings/mis_v2-schemas.xml b/src/main/resources/wsdl/custom-bindings/mis_v2-schemas.xml index 63c6681..10e5981 100644 --- a/src/main/resources/wsdl/custom-bindings/mis_v2-schemas.xml +++ b/src/main/resources/wsdl/custom-bindings/mis_v2-schemas.xml @@ -19,13 +19,13 @@ - + @@ -35,13 +35,13 @@ - + \ No newline at end of file diff --git a/src/main/resources/wsdl/mis/mis_2.0/PersonData_20_en_moaWID.xsd b/src/main/resources/wsdl/mis/mis_2.0/PersonData_20_en_moaWID.xsd index 02771c0..8854c85 100644 --- a/src/main/resources/wsdl/mis/mis_2.0/PersonData_20_en_moaWID.xsd +++ b/src/main/resources/wsdl/mis/mis_2.0/PersonData_20_en_moaWID.xsd @@ -8,7 +8,6 @@ --> - This version of person deploys only global elements. All types derived from abstract types have been replaced by substitution groups diff --git a/src/main/resources/wsdl/mis/mis_2.0/mis-2.0.0.xsd b/src/main/resources/wsdl/mis/mis_2.0/mis-2.0.0.xsd index 9a49f1f..9b1ac83 100644 --- a/src/main/resources/wsdl/mis/mis_2.0/mis-2.0.0.xsd +++ b/src/main/resources/wsdl/mis/mis_2.0/mis-2.0.0.xsd @@ -1,6 +1,5 @@ - @@ -13,6 +12,7 @@ + @@ -38,9 +38,18 @@ - + + + + + + + + + + diff --git a/src/test/java/at/gv/util/demo/Clienttests.java b/src/test/java/at/gv/util/demo/Clienttests.java index e233944..b2f90ae 100644 --- a/src/test/java/at/gv/util/demo/Clienttests.java +++ b/src/test/java/at/gv/util/demo/Clienttests.java @@ -36,6 +36,7 @@ import javax.xml.bind.JAXBElement; import javax.xml.namespace.QName; import javax.xml.transform.TransformerException; +import org.apache.commons.lang.RandomStringUtils; import org.apache.cxf.common.util.Base64Utility; import org.apache.cxf.helpers.IOUtils; import org.w3c.dom.Element; @@ -44,6 +45,7 @@ import at.gv.util.BpkUtil; import at.gv.util.DOMUtils; import at.gv.util.MiscUtil; import at.gv.util.client.mis.usp_v2.USPClient; +import at.gv.util.client.mis_v2.MISV2Client; import at.gv.util.client.mms.MMSClient; import at.gv.util.client.szr.SZRClient; import at.gv.util.client.ur_V5.URClient; @@ -52,7 +54,12 @@ import at.gv.util.client.ur_V5.URClientException; import at.gv.util.config.EgovUtilPropertiesConfiguration; import at.gv.util.data.BPK; import at.gv.util.ex.EgovUtilException; +import at.gv.util.wsdl.mis_v2.GetMandatesError; import at.gv.util.wsdl.szr.SZRException; +import at.gv.util.xsd.mis_v2.GetMandatesRequestType; +import at.gv.util.xsd.mis_v2.GetMandatesResponseType; +import at.gv.util.xsd.mis_v2.PersonInformationType; +import at.gv.util.xsd.mis_v2.persondata.IdentificationType.Value; import at.gv.util.xsd.mms.GetMandatesRequest; import at.gv.util.xsd.mms.GetMandatesRequest.MandateIdentifiers; import at.gv.util.xsd.mms.GetMandatesResponse; @@ -134,7 +141,7 @@ public class Clienttests { SZRClient szrClient = new SZRClient(egovUtilConfiguration); URClient urClient = new URClient(egovUtilConfiguration, UR_TYPES, ERSB_KEYS, false, true); MMSClient mmsClient = new MMSClient(egovUtilConfiguration); - + MISV2Client misV2Client = new MISV2Client(egovUtilConfiguration); PersonInfoType personInfo = new PersonInfoType(); @@ -291,28 +298,87 @@ public class Clienttests { personName.setFamilyName("Mustermann"); personName.setGivenName("Max"); person.setDateOfBirth("1940-01-01"); +// id.setType(SSPIN_PREFIX + "ZP"); +// id.setValue("nOuO8JELgLMCke6qWSAfNSDPPcM="); + id.setType(SSPIN_PREFIX + "ZU"); + id.setValue("NEK/9ZsnA7e2phK71F/OSdIjwbU="); + person.setIdentification(id); + +// personName.setFamilyName("Hiptmair"); +// personName.setGivenName("Karl"); + //person.setDateOfBirth("1968-04-07"); +// id.setType(SSPIN_PREFIX + "ZU"); +// id.setValue("WlDEwRwleyT9gyCRedqhL+vNmBs="); + +// id.setType(SSPIN_PREFIX + "ZP"); +// id.setValue("OzlNpKPY4oFt10uu0dQ55G/uaCE="); + + person.setIdentification(id); + + + //************************************* + //MIS v2.0 test + GetMandatesRequestType getMandatesRequest = new GetMandatesRequestType(); + getMandatesRequest.setReqId(RandomStringUtils.randomAlphabetic(10)); + PersonInformationType pInfo = new PersonInformationType(); + pInfo.setDateOfBirth(person.getDateOfBirth()); + pInfo.setGivenName(person.getName().getGivenName()); + pInfo.setFamilyName(person.getName().getFamilyName()); + at.gv.util.xsd.mis_v2.persondata.IdentificationType idType = new at.gv.util.xsd.mis_v2.persondata.IdentificationType(); + idType.setType(person.getIdentification().getType()); + Value idValue = new Value(); + idValue.setValue(person.getIdentification().getValue()); + idType.setValue(idValue ); + pInfo.setIdentification(idType ); + getMandatesRequest.setPersonInformation(pInfo ); + + try { + GetMandatesResponseType getMandatesResp = misV2Client.sendMandateIssueRequest(getMandatesRequest, "https://labda.iaik.tugraz.at:5343/mis/services/GetMandatesRequest"); + System.out.println("Get result from MIS v2.0 with #" + getMandatesResp.getMisMandate().size() + " mandates"); + + } catch (GetMandatesError e) { + e.printStackTrace(); + + } + + //************************************* String baseID = szrClient.getStammzahl(personInfo ); - BPK zpBpk = BpkUtil.createBPK(baseID, "ZP"); + BPK zpBpk; + BPK zuBpk; + //BPK zuBpk = BpkUtil.createBPK(baseID, "ZU"); + zuBpk = new BPK("ZU", id.getValue()); + zpBpk = new BPK("ZP", id.getValue()); + +// id.setType(SSPIN_PREFIX + zuBpk.getSector()); +// id.setValue(zuBpk.getBpk()); +// person.setDateOfBirth(null); +// person.setIdentification(id); + + + // BPK zpBpk = BpkUtil.createBPK(baseID, "ZP-MH"); // System.out.print(zpBpk); - GetMandatesRequest mmsRequest = new GetMandatesRequest(); - mmsRequest.setBPK(zpBpk.getBpk()); - mmsRequest.setBPKType(BpkUtil.PREFIX_BPK_TYPE + "ZU"); - MandateIdentifiers filters = new MandateIdentifiers(); - filters.getMandateIdentifier().add("GeneralvollmachtBilateral"); - mmsRequest.setMandateIdentifiers(filters ); - GetMandatesResponse mmsResult = mmsClient.sendGetMandatesRequest(mmsRequest, "https://vollmachten.egiz.gv.at/mms-test/services/GetMandatesService"); +// GetMandatesRequest mmsRequest = new GetMandatesRequest(); +// mmsRequest.setBPK(zpBpk.getBpk()); +// mmsRequest.setBPKType(BpkUtil.PREFIX_BPK_TYPE + "ZU"); +// MandateIdentifiers filters = new MandateIdentifiers(); +// filters.getMandateIdentifier().add("GeneralvollmachtBilateral"); +// mmsRequest.setMandateIdentifiers(filters ); +// GetMandatesResponse mmsResult = mmsClient.sendGetMandatesRequest(mmsRequest, "https://vollmachten.egiz.gv.at/mms-test/services/GetMandatesService"); // personInfo.getPerson().setDateOfBirth(null); -// String test = szrClient.getBPK(personInfo, "BF", "BBA-STA"); +// String test = szrClient.getBPK(personInfo, "ZP", "BBA-STA"); + String test = szrClient.getBPK(personInfo, "ZP", "BKA"); + //String test = szrClient.getBPK(personInfo, "ZU", "BKA"); // String encryptedbPK = szrClient.transformBPK(personInfo, zpBpk.getBpk(), SSPIN_PREFIX + "ZP", SSPIN_PREFIX + "WT-UR", "BBA-STA"); - FremdBPKType encryptedbPK = szrClient.transformBPK(personInfo, zpBpk.getBpk(), SSPIN_PREFIX + "ZP", SSPIN_PREFIX + "WT-UR", "BMF"); +// FremdBPKType encryptedbPK = szrClient.transformBPK(personInfo, zpBpk.getBpk(), SSPIN_PREFIX + "ZP", SSPIN_PREFIX + "WT-UR", "BMF"); + FremdBPKType encryptedbPK = szrClient.transformBPK(personInfo, zuBpk.getBpk(), SSPIN_PREFIX + "ZU", SSPIN_PREFIX + "WT-UR", "BMF"); // String encryptedbPK = szrClient.transformBPK(personInfo, zpBpk.getBpk(), SSPIN_PREFIX + "ZP", SSPIN_PREFIX + "ZU", "ZUSETNVZ"); diff --git a/src/test/java/at/gv/util/demo/ZuseSSLTest.java b/src/test/java/at/gv/util/demo/ZuseSSLTest.java index 359cb4e..516c228 100644 --- a/src/test/java/at/gv/util/demo/ZuseSSLTest.java +++ b/src/test/java/at/gv/util/demo/ZuseSSLTest.java @@ -4,6 +4,7 @@ import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; +import java.io.UnsupportedEncodingException; import java.net.Socket; import java.security.Key; import java.security.KeyManagementException; @@ -35,7 +36,19 @@ import at.gv.util.xsd.szr.pvp.sec.Security; public class ZuseSSLTest { - public static void main(String[] args) { + public static void main(String[] args) throws UnsupportedEncodingException { + + String b64AuthBlock = "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiID8+CjxzbDpDcmVhdGVYTUxTaWduYXR1cmVSZXF1ZXN0IHhtbG5zOmRzaWc9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvMDkveG1sZHNpZyMnIHhtbG5zOnNsPSdodHRwOi8vd3d3LmJ1ZXJnZXJrYXJ0ZS5hdC9uYW1lc3BhY2VzL3NlY3VyaXR5bGF5ZXIvMS4yIyc+CiA8c2w6S2V5Ym94SWRlbnRpZmllcj5TZWN1cmVTaWduYXR1cmVLZXlwYWlyPC9zbDpLZXlib3hJZGVudGlmaWVyPgogPHNsOkRhdGFPYmplY3RJbmZvIFN0cnVjdHVyZT0nZGV0YWNoZWQnPgogIDxzbDpEYXRhT2JqZWN0IFJlZmVyZW5jZT0nJy8+CjxzbDpUcmFuc2Zvcm1zSW5mbz4NCgk8ZHNpZzpUcmFuc2Zvcm1zIHhtbG5zOmRzaWc9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvMDkveG1sZHNpZyMiPg0KCQk8ZHNpZzpUcmFuc2Zvcm0gQWxnb3JpdGhtPSJodHRwOi8vd3d3LnczLm9yZy9UUi8xOTk5L1JFQy14c2x0LTE5OTkxMTE2Ij4NCgkJCTx4c2w6c3R5bGVzaGVldCB2ZXJzaW9uPSIxLjAiIHhtbG5zOnhzbD0iaHR0cDovL3d3dy53My5vcmcvMTk5OS9YU0wvVHJhbnNmb3JtIiB4bWxuczpzYW1sPSJ1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoxLjA6YXNzZXJ0aW9uIiB4bWxuczpwcj0iaHR0cDovL3JlZmVyZW5jZS5lLWdvdmVybm1lbnQuZ3YuYXQvbmFtZXNwYWNlL3BlcnNvbmRhdGEvMjAwMjAyMjgjIiBleGNsdWRlLXJlc3VsdC1wcmVmaXhlcz0icHIgc2FtbCI+DQoJCQkJPHhzbDpvdXRwdXQgbWV0aG9kPSJ4bWwiIHhtbDpzcGFjZT0iZGVmYXVsdCIvPg0KCQkJCTx4c2w6dGVtcGxhdGUgbWF0Y2g9Ii8iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hodG1sIj4NCgkJCQkJPGh0bWw+DQoJCQkJCQk8aGVhZD4NCgkJCQkJCQk8dGl0bGU+U2lnbmF0dXIgZGVyIEFubWVsZGVkYXRlbjwvdGl0bGU+DQoJCQkJCQkJPHN0eWxlIHR5cGU9InRleHQvY3NzIiBtZWRpYT0ic2NyZWVuIj4NCiAgICAgICAgICAgICAgCQkJCQkubm9ybWFsc3R5bGUgeyBmb250LXNpemU6IG1lZGl1bTsgfSANCiAgICAgICAgICAgICAgCQkJCQkuaXRhbGljc3R5bGUgeyBmb250LXNpemU6IG1lZGl1bTsgZm9udC1zdHlsZTogaXRhbGljOyB9DQoJCQkJCQkJCS50aXRsZXN0eWxleyB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyBmb250LXdlaWdodDpib2xkOyBmb250LXNpemU6IG1lZGl1bTsgfSANCgkJCQkJCQkJLmg0c3R5bGV7IGZvbnQtc2l6ZTogbGFyZ2U7IH0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAJCQkJPC9zdHlsZT4NCgkJCQkJCTwvaGVhZD4NCgkJCQkJCTxib2R5Pg0KCQkJCQkJCTxoNCBjbGFzcz0iaDRzdHlsZSI+QW5tZWxkZWRhdGVuOjwvaDQ+DQoJCQkJCQkJPHAgY2xhc3M9InRpdGxlc3R5bGUiPkRhdGVuIHp1ciBQZXJzb248L3A+DQoJCQkJCQkJPHRhYmxlIGNsYXNzPSJwYXJhbWV0ZXJzIj4NCgkJCQkJCQkJPHhzbDppZiB0ZXN0PSJub3JtYWxpemUtc3BhY2UoLy9ASXNzdWVyKSI+DQoJCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQkJPHRkIGNsYXNzPSJpdGFsaWNzdHlsZSI+TmFtZTo8L3RkPg0KCQkJCQkJCQkJCTx0ZCBjbGFzcz0ibm9ybWFsc3R5bGUiPg0KCQkJCQkJCQkJCQk8eHNsOnZhbHVlLW9mIHNlbGVjdD0iLy9ASXNzdWVyIi8+DQoJCQkJCQkJCQkJPC90ZD4NCgkJCQkJCQkJCTwvdHI+DQoJCQkJCQkJCTwveHNsOmlmPg0KCQkJCQkJCQk8eHNsOmlmIHRlc3Q9InN0cmluZygvL3NhbWw6QXR0cmlidXRlW0BBdHRyaWJ1dGVOYW1lPSdHZWJ1cnRzZGF0dW0nXS9zYW1sOkF0dHJpYnV0ZVZhbHVlKSI+DQoJCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQkJPHRkIGNsYXNzPSJpdGFsaWNzdHlsZSI+R2VidXJ0c2RhdHVtOjwvdGQ+DQoJCQkJCQkJCQkJPHRkIGNsYXNzPSJub3JtYWxzdHlsZSI+DQoJCQkJCQkJCQkJCTx4c2w6dmFsdWUtb2Ygc2VsZWN0PSJzdWJzdHJpbmcoLy9zYW1sOkF0dHJpYnV0ZVtAQXR0cmlidXRlTmFtZT0nR2VidXJ0c2RhdHVtJ10vc2FtbDpBdHRyaWJ1dGVWYWx1ZSw5LDIpIi8+DQoJCQkJCQkJCQkJCTx4c2w6dGV4dD4uPC94c2w6dGV4dD4NCgkJCQkJCQkJCQkJPHhzbDp2YWx1ZS1vZiBzZWxlY3Q9InN1YnN0cmluZygvL3NhbWw6QXR0cmlidXRlW0BBdHRyaWJ1dGVOYW1lPSdHZWJ1cnRzZGF0dW0nXS9zYW1sOkF0dHJpYnV0ZVZhbHVlLDYsMikiLz4NCgkJCQkJCQkJCQkJPHhzbDp0ZXh0Pi48L3hzbDp0ZXh0Pg0KCQkJCQkJCQkJCQk8eHNsOnZhbHVlLW9mIHNlbGVjdD0ic3Vic3RyaW5nKC8vc2FtbDpBdHRyaWJ1dGVbQEF0dHJpYnV0ZU5hbWU9J0dlYnVydHNkYXR1bSddL3NhbWw6QXR0cmlidXRlVmFsdWUsMSw0KSIvPg0KCQkJCQkJCQkJCTwvdGQ+DQoJCQkJCQkJCQk8L3RyPg0KCQkJCQkJCQk8L3hzbDppZj4NCgkJCQkJCQkJPHhzbDppZiB0ZXN0PSIvL3NhbWw6QXR0cmlidXRlW0BBdHRyaWJ1dGVOYW1lPSdPSURUZXh0dWFsRGVzY3JpcHRpb24nXSI+DQoJCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQkJPHRkIGNsYXNzPSJpdGFsaWNzdHlsZSI+Um9sbGU6PC90ZD4NCgkJCQkJCQkJCQk8dGQgY2xhc3M9Im5vcm1hbHN0eWxlIj4NCgkJCQkJCQkJCQkJPHhzbDp2YWx1ZS1vZiBzZWxlY3Q9Ii8vc2FtbDpBdHRyaWJ1dGVbQEF0dHJpYnV0ZU5hbWU9J09JRFRleHR1YWxEZXNjcmlwdGlvbiddL3NhbWw6QXR0cmlidXRlVmFsdWUiLz4NCgkJCQkJCQkJCQk8L3RkPg0KCQkJCQkJCQkJPC90cj4NCgkJCQkJCQkJPC94c2w6aWY+DQoJCQkJCQkJCTx4c2w6aWYgdGVzdD0iLy9zYW1sOkF0dHJpYnV0ZVtAQXR0cmlidXRlTmFtZT0nbWFuZGF0ZVJlZmVyZW5jZVZhbHVlJ10iPg0KCQkJCQkJCQkJPHRyPg0KCQkJCQkJCQkJCTx0ZCBjbGFzcz0iaXRhbGljc3R5bGUiPlZvbGxtYWNodDo8L3RkPg0KCQkJCQkJCQkJCTx0ZCBjbGFzcz0ibm9ybWFsc3R5bGUiPg0KCQkJCQkJCQkJCQk8eHNsOnRleHQ+SWNoIG1lbGRlIG1pY2ggaW4gVmVydHJldHVuZyBhbi4gSW0gbsOkY2hzdGVuIFNjaHJpdHQgd2lyZCBtaXIgZWluZSBMaXN0ZSBkZXIgZsO8ciBtaWNoIHZlcmbDvGdiYXJlbiBWZXJ0cmV0dW5nc3ZlcmjDpGx0bmlzc2UgYW5nZXplaWd0LCBhdXMgZGVuZW4gaWNoIGVpbmVzIGF1c3fDpGhsZW4gd2VyZGUuPC94c2w6dGV4dD4NCgkJCQkJCQkJCQk8L3RkPg0KCQkJCQkJCQkJPC90cj4NCgkJCQkJCQkJPC94c2w6aWY+DQoJCQkJCQkJPC90YWJsZT4NCgkJCQkJCQk8cCBjbGFzcz0idGl0bGVzdHlsZSI+RGF0ZW4genVyIEFud2VuZHVuZzwvcD4NCgkJCQkJCQk8dGFibGUgY2xhc3M9InBhcmFtZXRlcnMiPg0KCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQk8dGQgY2xhc3M9Iml0YWxpY3N0eWxlIj5OYW1lOjwvdGQ+DQoJCQkJCQkJCQk8dGQgY2xhc3M9Im5vcm1hbHN0eWxlIj4NCgkJCQkJCQkJCQk8eHNsOnZhbHVlLW9mIHNlbGVjdD0iLy9zYW1sOkF0dHJpYnV0ZVtAQXR0cmlidXRlTmFtZT0nb2FGcmllbmRseU5hbWUnXS9zYW1sOkF0dHJpYnV0ZVZhbHVlIi8+DQoJCQkJCQkJCQk8L3RkPg0KCQkJCQkJCQk8L3RyPg0KCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQk8dGQgY2xhc3M9Iml0YWxpY3N0eWxlIj5TdGFhdDo8L3RkPg0KCQkJCQkJCQkJPHRkIGNsYXNzPSJub3JtYWxzdHlsZSI+w5ZzdGVycmVpY2g8L3RkPg0KCQkJCQkJCQk8L3RyPg0KCQkJCQkJCTwvdGFibGU+DQoJCQkJCQkJPHAgY2xhc3M9InRpdGxlc3R5bGUiPlRlY2huaXNjaGUgUGFyYW1ldGVyPC9wPg0KCQkJCQkJCTx0YWJsZSBjbGFzcz0icGFyYW1ldGVycyI+DQoJCQkJCQkJCTx0cj4NCgkJCQkJCQkJCTx0ZCBjbGFzcz0iaXRhbGljc3R5bGUiPlVSTDo8L3RkPg0KCQkJCQkJCQkJPHRkIGNsYXNzPSJub3JtYWxzdHlsZSI+DQoJCQkJCQkJCQkJPHhzbDp2YWx1ZS1vZiBzZWxlY3Q9Ii8vc2FtbDpBdHRyaWJ1dGVbQEF0dHJpYnV0ZU5hbWU9J09BJ10vc2FtbDpBdHRyaWJ1dGVWYWx1ZSIvPg0KCQkJCQkJCQkJPC90ZD4NCgkJCQkJCQkJPC90cj4NCgkJCQkJCQkJPHhzbDppZiB0ZXN0PSIvL3NhbWw6QXR0cmlidXRlW0BBdHRyaWJ1dGVOYW1lPSdHZXNjaGFlZnRzYmVyZWljaCddIj4NCgkJCQkJCQkJCTx0cj4NCgkJCQkJCQkJCQk8dGQgY2xhc3M9Iml0YWxpY3N0eWxlIj5CZXJlaWNoOjwvdGQ+DQoJCQkJCQkJCQkJPHRkIGNsYXNzPSJub3JtYWxzdHlsZSI+DQoJCQkJCQkJCQkJCTx4c2w6dmFsdWUtb2Ygc2VsZWN0PSIvL3NhbWw6QXR0cmlidXRlW0BBdHRyaWJ1dGVOYW1lPSdHZXNjaGFlZnRzYmVyZWljaCddL3NhbWw6QXR0cmlidXRlVmFsdWUiLz4NCgkJCQkJCQkJCQk8L3RkPg0KCQkJCQkJCQkJPC90cj4NCgkJCQkJCQkJPC94c2w6aWY+DQoJCQkJCQkJCTx4c2w6aWYgdGVzdD0iLy9zYW1sOkF0dHJpYnV0ZVtAQXR0cmlidXRlTmFtZT0nbWFuZGF0ZVJlZmVyZW5jZVZhbHVlJ10iPg0KCQkJCQkJCQkJPHRyPg0KCQkJCQkJCQkJCTx0ZCBjbGFzcz0iaXRhbGljc3R5bGUiPg0KCQkJCQkJCQkJCQlWb2xsbWFjaHRlbi1SZWZlcmVuejo8L3RkPg0KCQkJCQkJCQkJCTx0ZCBjbGFzcz0ibm9ybWFsc3R5bGUiPg0KCQkJCQkJCQkJCQk8eHNsOnZhbHVlLW9mIHNlbGVjdD0iLy9zYW1sOkF0dHJpYnV0ZVtAQXR0cmlidXRlTmFtZT0nbWFuZGF0ZVJlZmVyZW5jZVZhbHVlJ10iLz4NCgkJCQkJCQkJCQk8L3RkPg0KCQkJCQkJCQkJPC90cj4NCgkJCQkJCQkJPC94c2w6aWY+DQoJCQkJCQkJCTx4c2w6aWYgdGVzdD0iLy9zYW1sOkF0dHJpYnV0ZVtAQXR0cmlidXRlTmFtZT0nSWRlbnRpdHlMaW5rRG9tYWluSWRlbnRpZmllclR5cGUnXSI+DQoJCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQkJPHRkIGNsYXNzPSJpdGFsaWNzdHlsZSI+DQoJCQkJCQkJCQkJCTx4c2w6dmFsdWUtb2Ygc2VsZWN0PSIvL3NhbWw6QXR0cmlidXRlW0BBdHRyaWJ1dGVOYW1lPSdJZGVudGl0eUxpbmtEb21haW5JZGVudGlmaWVyVHlwZSddIi8+OjwvdGQ+DQoJCQkJCQkJCQkJPHRkIGNsYXNzPSJub3JtYWxzdHlsZSI+DQoJCQkJCQkJCQkJCTx4c2w6dmFsdWUtb2Ygc2VsZWN0PSIvL3NhbWw6QXR0cmlidXRlW0BBdHRyaWJ1dGVOYW1lPSd3YlBLJ10vc2FtbDpBdHRyaWJ1dGVWYWx1ZS9wcjpJZGVudGlmaWNhdGlvbi9wcjpUeXBlIi8+DQoJCQkJCQkJCQkJPC90ZD4NCgkJCQkJCQkJCTwvdHI+DQoJCQkJCQkJCTwveHNsOmlmPg0KCQkJCQkJCQk8eHNsOmlmIHRlc3Q9Ii8vc2FtbDpBdHRyaWJ1dGVbQEF0dHJpYnV0ZU5hbWU9J2JQSyddIG9yIC8vc2FtbDpBdHRyaWJ1dGVbQEF0dHJpYnV0ZU5hbWU9J3diUEsnXSI+DQoJCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQkJPHRkIGNsYXNzPSJpdGFsaWNzdHlsZSI+SWRlbnRpZmlrYXRvcjo8L3RkPg0KCQkJCQkJCQkJCTx0ZCBjbGFzcz0ibm9ybWFsc3R5bGUiPg0KCQkJCQkJCQkJCQk8eHNsOnZhbHVlLW9mIHNlbGVjdD0iLy9zYW1sOkF0dHJpYnV0ZVtAQXR0cmlidXRlTmFtZT0nYlBLJ10vc2FtbDpBdHRyaWJ1dGVWYWx1ZS9wcjpJZGVudGlmaWNhdGlvbi9wcjpWYWx1ZSIvPg0KCQkJCQkJCQkJCQk8eHNsOnZhbHVlLW9mIHNlbGVjdD0iLy9zYW1sOkF0dHJpYnV0ZVtAQXR0cmlidXRlTmFtZT0nd2JQSyddL3NhbWw6QXR0cmlidXRlVmFsdWUvcHI6SWRlbnRpZmljYXRpb24vcHI6VmFsdWUiLz4NCgkJCQkJCQkJCQk8L3RkPg0KCQkJCQkJCQkJPC90cj4NCgkJCQkJCQkJPC94c2w6aWY+DQoJCQkJCQkJCTx4c2w6aWYgdGVzdD0iLy9zYW1sOkF0dHJpYnV0ZVtAQXR0cmlidXRlTmFtZT0nT0lEVGV4dHVhbERlc2NyaXB0aW9uJ10iPg0KCQkJCQkJCQkJPHRyPg0KCQkJCQkJCQkJCTx0ZCBjbGFzcz0iaXRhbGljc3R5bGUiPk9JRDo8L3RkPg0KCQkJCQkJCQkJCTx0ZCBjbGFzcz0ibm9ybWFsc3R5bGUiPg0KCQkJCQkJCQkJCQk8eHNsOnZhbHVlLW9mIHNlbGVjdD0iLy9zYW1sOkF0dHJpYnV0ZVtAQXR0cmlidXRlTmFtZT0nT0lEJ10vc2FtbDpBdHRyaWJ1dGVWYWx1ZSIvPg0KCQkJCQkJCQkJCTwvdGQ+DQoJCQkJCQkJCQk8L3RyPg0KCQkJCQkJCQk8L3hzbDppZj4NCgkJCQkJCQkJPHhzbDppZiB0ZXN0PSIvL3NhbWw6QXR0cmlidXRlW0BBdHRyaWJ1dGVOYW1lPSdIUEknXSI+DQoJCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQkJPHRkIGNsYXNzPSJpdGFsaWNzdHlsZSI+SFBJOjwvdGQ+DQoJCQkJCQkJCQkJPHRkIGNsYXNzPSJub3JtYWxzdHlsZSI+DQoJCQkJCQkJCQkJCTx4c2w6dmFsdWUtb2Ygc2VsZWN0PSIvL3NhbWw6QXR0cmlidXRlW0BBdHRyaWJ1dGVOYW1lPSdIUEknXS9zYW1sOkF0dHJpYnV0ZVZhbHVlIi8+DQoJCQkJCQkJCQkJPC90ZD4NCgkJCQkJCQkJCTwvdHI+DQoJCQkJCQkJCTwveHNsOmlmPg0KCQkJCQkJCQk8dHI+DQoJCQkJCQkJCQk8dGQgY2xhc3M9Iml0YWxpY3N0eWxlIj5EYXR1bTo8L3RkPg0KCQkJCQkJCQkJPHRkIGNsYXNzPSJub3JtYWxzdHlsZSI+DQoJCQkJCQkJCQkJPHhzbDp2YWx1ZS1vZiBzZWxlY3Q9InN1YnN0cmluZygvL0BJc3N1ZUluc3RhbnQsOSwyKSIvPg0KCQkJCQkJCQkJCTx4c2w6dGV4dD4uPC94c2w6dGV4dD4NCgkJCQkJCQkJCQk8eHNsOnZhbHVlLW9mIHNlbGVjdD0ic3Vic3RyaW5nKC8vQElzc3VlSW5zdGFudCw2LDIpIi8+DQoJCQkJCQkJCQkJPHhzbDp0ZXh0Pi48L3hzbDp0ZXh0Pg0KCQkJCQkJCQkJCTx4c2w6dmFsdWUtb2Ygc2VsZWN0PSJzdWJzdHJpbmcoLy9ASXNzdWVJbnN0YW50LDEsNCkiLz4NCgkJCQkJCQkJCTwvdGQ+DQoJCQkJCQkJCTwvdHI+DQoJCQkJCQkJCTx0cj4NCgkJCQkJCQkJCTx0ZCBjbGFzcz0iaXRhbGljc3R5bGUiPlVocnplaXQ6PC90ZD4NCgkJCQkJCQkJCTx0ZCBjbGFzcz0ibm9ybWFsc3R5bGUiPg0KCQkJCQkJCQkJCTx4c2w6dmFsdWUtb2Ygc2VsZWN0PSJzdWJzdHJpbmcoLy9ASXNzdWVJbnN0YW50LDEyLDIpIi8+DQoJCQkJCQkJCQkJPHhzbDp0ZXh0Pjo8L3hzbDp0ZXh0Pg0KCQkJCQkJCQkJCTx4c2w6dmFsdWUtb2Ygc2VsZWN0PSJzdWJzdHJpbmcoLy9ASXNzdWVJbnN0YW50LDE1LDIpIi8+DQoJCQkJCQkJCQkJPHhzbDp0ZXh0Pjo8L3hzbDp0ZXh0Pg0KCQkJCQkJCQkJCTx4c2w6dmFsdWUtb2Ygc2VsZWN0PSJzdWJzdHJpbmcoLy9ASXNzdWVJbnN0YW50LDE4LDIpIi8+DQoJCQkJCQkJCQk8L3RkPg0KCQkJCQkJCQk8L3RyPg0KCQkJCQkJCTwvdGFibGU+DQoJCQkJCQk8L2JvZHk+DQoJCQkJCTwvaHRtbD4NCgkJCQk8L3hzbDp0ZW1wbGF0ZT4NCgkJCTwveHNsOnN0eWxlc2hlZXQ+DQoJCTwvZHNpZzpUcmFuc2Zvcm0+DQoJCTxkc2lnOlRyYW5zZm9ybSBBbGdvcml0aG09Imh0dHA6Ly93d3cudzMub3JnL1RSLzIwMDEvUkVDLXhtbC1jMTRuLTIwMDEwMzE1I1dpdGhDb21tZW50cyIvPg0KCTwvZHNpZzpUcmFuc2Zvcm1zPg0KCTxzbDpGaW5hbERhdGFNZXRhSW5mbz4NCgkJPHNsOk1pbWVUeXBlPmFwcGxpY2F0aW9uL3hodG1sK3htbDwvc2w6TWltZVR5cGU+DQoJPC9zbDpGaW5hbERhdGFNZXRhSW5mbz4NCjwvc2w6VHJhbnNmb3Jtc0luZm8+DQogPC9zbDpEYXRhT2JqZWN0SW5mbz4KIDxzbDpTaWduYXR1cmVJbmZvPgogIDxzbDpTaWduYXR1cmVFbnZpcm9ubWVudD4KICAgPHNsOlhNTENvbnRlbnQ+PHNhbWw6QXNzZXJ0aW9uIHhtbG5zOnNhbWw9J3VybjpvYXNpczpuYW1lczp0YzpTQU1MOjEuMDphc3NlcnRpb24nIHhtbG5zOnByPSJodHRwOi8vcmVmZXJlbmNlLmUtZ292ZXJubWVudC5ndi5hdC9uYW1lc3BhY2UvcGVyc29uZGF0YS8yMDAyMDIyOCMiIE1ham9yVmVyc2lvbj0nMScgTWlub3JWZXJzaW9uPScwJyBBc3NlcnRpb25JRD0nYW55JyBJc3N1ZXI9J0dyZWdvciBKb2hhbm5lcyBXZWlzc2Vuc3RlaW5lcicgSXNzdWVJbnN0YW50PScyMDE4LTAzLTEyVDE2OjAzOjQzWic+CiA8c2FtbDpBdHRyaWJ1dGVTdGF0ZW1lbnQ+CiAgIDxzYW1sOlN1YmplY3Q+CiAgICAgPHNhbWw6TmFtZUlkZW50aWZpZXI+aHR0cHM6Ly9tb2FpZC5ibWkuZ3YuYXQvbW9hLWlkLWF1dGg8L3NhbWw6TmFtZUlkZW50aWZpZXI+CiAgIDwvc2FtbDpTdWJqZWN0PgogICA8c2FtbDpBdHRyaWJ1dGUgQXR0cmlidXRlTmFtZT0nR2VzY2hhZWZ0c2JlcmVpY2gnIEF0dHJpYnV0ZU5hbWVzcGFjZT0naHR0cDovL3JlZmVyZW5jZS5lLWdvdmVybm1lbnQuZ3YuYXQvbmFtZXNwYWNlL21vYS8yMDAyMDgyMiMnPgogICAgIDxzYW1sOkF0dHJpYnV0ZVZhbHVlPlpQIChQZXJzb25lbmlkZW50aXTDpHQgdW5kIELDvHJnZXJyZWNodGUgKHp1ciBQZXJzb24pKTwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT4KICAgPC9zYW1sOkF0dHJpYnV0ZT4KICAgPHNhbWw6QXR0cmlidXRlIEF0dHJpYnV0ZU5hbWU9J09BJyBBdHRyaWJ1dGVOYW1lc3BhY2U9J2h0dHA6Ly9yZWZlcmVuY2UuZS1nb3Zlcm5tZW50Lmd2LmF0L25hbWVzcGFjZS9tb2EvMjAwMjA4MjIjJz4KICAgICA8c2FtbDpBdHRyaWJ1dGVWYWx1ZT5odHRwczovL2NpdGl6ZW4uYm1pLmd2LmF0PC9zYW1sOkF0dHJpYnV0ZVZhbHVlPgogICA8L3NhbWw6QXR0cmlidXRlPgogICA8c2FtbDpBdHRyaWJ1dGUgQXR0cmlidXRlTmFtZT0nR2VidXJ0c2RhdHVtJyBBdHRyaWJ1dGVOYW1lc3BhY2U9J2h0dHA6Ly9yZWZlcmVuY2UuZS1nb3Zlcm5tZW50Lmd2LmF0L25hbWVzcGFjZS9tb2EvMjAwMjA4MjIjJz4KICAgICA8c2FtbDpBdHRyaWJ1dGVWYWx1ZT4xOTg4LTEyLTI5PC9zYW1sOkF0dHJpYnV0ZVZhbHVlPgogICA8L3NhbWw6QXR0cmlidXRlPgogICA8c2FtbDpBdHRyaWJ1dGUgQXR0cmlidXRlTmFtZT0nU3BlY2lhbFRleHQnIEF0dHJpYnV0ZU5hbWVzcGFjZT0naHR0cDovL3JlZmVyZW5jZS5lLWdvdmVybm1lbnQuZ3YuYXQvbmFtZXNwYWNlL21vYS8yMDAyMDgyMiMnPgogICAgIDxzYW1sOkF0dHJpYnV0ZVZhbHVlPjwvc2FtbDpBdHRyaWJ1dGVWYWx1ZT4KICAgPC9zYW1sOkF0dHJpYnV0ZT4KICAgPHNhbWw6QXR0cmlidXRlIEF0dHJpYnV0ZU5hbWU9J1VuaXF1ZVRva2tlbicgQXR0cmlidXRlTmFtZXNwYWNlPSdodHRwOi8vcmVmZXJlbmNlLmUtZ292ZXJubWVudC5ndi5hdC9uYW1lc3BhY2UvbW9hLzIwMDIwODIyIyc+CiAgICAgPHNhbWw6QXR0cmlidXRlVmFsdWU+czMyMzAzMTM4MzEzMjMwMzM1NzdhM2M3NDVkYjA2NWNiYTEzNzg1PC9zYW1sOkF0dHJpYnV0ZVZhbHVlPgogICA8L3NhbWw6QXR0cmlidXRlPgogICA8c2FtbDpBdHRyaWJ1dGUgQXR0cmlidXRlTmFtZT0nYlBLJyBBdHRyaWJ1dGVOYW1lc3BhY2U9J2h0dHA6Ly9yZWZlcmVuY2UuZS1nb3Zlcm5tZW50Lmd2LmF0L25hbWVzcGFjZS9tb2EvMjAwMjA4MjIjJz4KICAgICA8c2FtbDpBdHRyaWJ1dGVWYWx1ZT48cHI6SWRlbnRpZmljYXRpb24geG1sbnM6cHI9Imh0dHA6Ly9yZWZlcmVuY2UuZS1nb3Zlcm5tZW50Lmd2LmF0L25hbWVzcGFjZS9wZXJzb25kYXRhLzIwMDIwMjI4IyI+CiAgICAgICAgIDxwcjpWYWx1ZT5tYzA2V3NNbnIvRXNVZ2o4RXBYZ3hSaW9IcDg9PC9wcjpWYWx1ZT4KICAgICAgICAgPHByOlR5cGU+dXJuOnB1YmxpY2lkOmd2LmF0OmNkaWQrYnBrPC9wcjpUeXBlPgogICAgICAgPC9wcjpJZGVudGlmaWNhdGlvbj48L3NhbWw6QXR0cmlidXRlVmFsdWU+CiAgIDwvc2FtbDpBdHRyaWJ1dGU+CiAgIDxzYW1sOkF0dHJpYnV0ZSBBdHRyaWJ1dGVOYW1lPSdvYUZyaWVuZGx5TmFtZScgQXR0cmlidXRlTmFtZXNwYWNlPSdodHRwOi8vcmVmZXJlbmNlLmUtZ292ZXJubWVudC5ndi5hdC9uYW1lc3BhY2UvbW9hLzIwMDIwODIyIyc+CiAgICAgPHNhbWw6QXR0cmlidXRlVmFsdWU+QsO8cmdlcnBvcnRhbCAtIE5ldWVyIE5hbWU8L3NhbWw6QXR0cmlidXRlVmFsdWU+CiAgIDwvc2FtbDpBdHRyaWJ1dGU+CiA8L3NhbWw6QXR0cmlidXRlU3RhdGVtZW50Pgo8L3NhbWw6QXNzZXJ0aW9uPjwvc2w6WE1MQ29udGVudD4KICA8L3NsOlNpZ25hdHVyZUVudmlyb25tZW50PgogIDxzbDpTaWduYXR1cmVMb2NhdGlvbiB4bWxuczpzYW1sPSd1cm46b2FzaXM6bmFtZXM6dGM6U0FNTDoxLjA6YXNzZXJ0aW9uJyBJbmRleD0nMic+L3NhbWw6QXNzZXJ0aW9uPC9zbDpTaWduYXR1cmVMb2NhdGlvbj4KIDwvc2w6U2lnbmF0dXJlSW5mbz4KPC9zbDpDcmVhdGVYTUxTaWduYXR1cmVSZXF1ZXN0Pg=="; + byte[] authBlock = Base64.getDecoder().decode(b64AuthBlock); + + new String(authBlock, "UTF-8"); + new String(authBlock, "ISO-8859-1"); + new String(authBlock, "Cp850"); + new String(authBlock, "Cp1252"); + + + + String keyStoreFile = "F:/Projekte/configs/mis/egiz.gv.at-816-2018-06-07.jks"; char[] keyStorePassword = "OSgmSn!".toCharArray(); char[] keyPassword = "nichts".toCharArray(); -- cgit v1.2.3