From 32d17447a258188b2d534bcb0bf65a659ba7b7d0 Mon Sep 17 00:00:00 2001 From: mcentner Date: Fri, 29 Aug 2008 12:11:34 +0000 Subject: Initial import. git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@1 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- STAL/catalog.xml | 4 + STAL/pom.xml | 48 + STAL/private/cache/retriever/catalog.xml | 5 + .../java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd | 362 +++ .../cache/retriever/www.w3.org/2001/XMLSchema.xsd | 2534 ++++++++++++++++++++ STAL/src/main/java/META-INF/MANIFEST.MF | 3 + .../main/java/at/gv/egiz/stal/ErrorResponse.java | 112 + .../at/gv/egiz/stal/HashDataInputCallback.java | 24 + .../java/at/gv/egiz/stal/InfoboxReadRequest.java | 112 + .../java/at/gv/egiz/stal/InfoboxReadResponse.java | 78 + .../src/main/java/at/gv/egiz/stal/QuitRequest.java | 48 + STAL/src/main/java/at/gv/egiz/stal/STAL.java | 43 + .../src/main/java/at/gv/egiz/stal/STALFactory.java | 22 + .../src/main/java/at/gv/egiz/stal/STALRequest.java | 54 + .../main/java/at/gv/egiz/stal/STALResponse.java | 89 + .../src/main/java/at/gv/egiz/stal/SignRequest.java | 113 + .../main/java/at/gv/egiz/stal/SignResponse.java | 78 + .../signedinfo/CanonicalizationMethodType.java | 125 + .../gv/egiz/stal/signedinfo/DigestMethodType.java | 127 + .../at/gv/egiz/stal/signedinfo/ObjectFactory.java | 178 ++ .../at/gv/egiz/stal/signedinfo/ReferenceType.java | 230 ++ .../egiz/stal/signedinfo/SignatureMethodType.java | 125 + .../at/gv/egiz/stal/signedinfo/SignedInfoType.java | 183 ++ .../at/gv/egiz/stal/signedinfo/TransformsType.java | 88 + .../at/gv/egiz/stal/signedinfo/package-info.java | 25 + .../at/gv/egiz/stal/util/JCEAlgorithmNames.java | 51 + 26 files changed, 4861 insertions(+) create mode 100644 STAL/catalog.xml create mode 100644 STAL/pom.xml create mode 100644 STAL/private/cache/retriever/catalog.xml create mode 100644 STAL/private/cache/retriever/java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd create mode 100644 STAL/private/cache/retriever/www.w3.org/2001/XMLSchema.xsd create mode 100644 STAL/src/main/java/META-INF/MANIFEST.MF create mode 100644 STAL/src/main/java/at/gv/egiz/stal/ErrorResponse.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/HashDataInputCallback.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/InfoboxReadRequest.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/InfoboxReadResponse.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/QuitRequest.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/STAL.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/STALFactory.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/STALRequest.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/STALResponse.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/SignRequest.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/SignResponse.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/signedinfo/CanonicalizationMethodType.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/signedinfo/DigestMethodType.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/signedinfo/ObjectFactory.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/signedinfo/ReferenceType.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/signedinfo/SignatureMethodType.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/signedinfo/SignedInfoType.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/signedinfo/TransformsType.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/signedinfo/package-info.java create mode 100644 STAL/src/main/java/at/gv/egiz/stal/util/JCEAlgorithmNames.java (limited to 'STAL') diff --git a/STAL/catalog.xml b/STAL/catalog.xml new file mode 100644 index 00000000..38c98894 --- /dev/null +++ b/STAL/catalog.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/STAL/pom.xml b/STAL/pom.xml new file mode 100644 index 00000000..6b49ed47 --- /dev/null +++ b/STAL/pom.xml @@ -0,0 +1,48 @@ + + + + bku + at.gv.egiz + 1.0-SNAPSHOT + + 4.0.0 + at.gv.egiz + STAL + STAL + 1.0-SNAPSHOT + + + commons-logging + commons-logging + + + + \ No newline at end of file diff --git a/STAL/private/cache/retriever/catalog.xml b/STAL/private/cache/retriever/catalog.xml new file mode 100644 index 00000000..c40b0d50 --- /dev/null +++ b/STAL/private/cache/retriever/catalog.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/STAL/private/cache/retriever/java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd b/STAL/private/cache/retriever/java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd new file mode 100644 index 00000000..f9a884c0 --- /dev/null +++ b/STAL/private/cache/retriever/java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd @@ -0,0 +1,362 @@ + + + + Schema for JAXB 2.0 binding declarations. + + + +Model group that represents a binding declaration. Each new binding +declaration added to the jaxb namespace that is not restricted to +globalBindings should be added as a child element to this model group. + + + + + + + + + + + + + + + + + +Used to specify the version of the binding schema on the schema element for +inline annotations or jaxb:bindings for external binding. + + + + +Attributes used for property customization. The attribute group can be +referenced either from the globalBindings declaration or from the +property declaration. The following defaults are defined by the JAXB +specification in global scope only. Thus they apply when the +propertyAttributes group is referenced from the globalBindings declaration +but not when referenced from the property declaration. + collectionType a class that implements java.util.List. + fixedAttributeAsConstantProperty false + enableFailFastCheck false + generateIsSetMethod false + optionalProperty wrapper + generateElementProperty false + attachmentRef default + + + + + + + + + + + + + + + + + + + + + + + + + + + Customize XMLNames to Java id mapping + + + + + + + + + + Customization values defined in global scope. + + + + + + allows extension binding declarations to be specified. + + + + + + + + + + + + + + + + + + + + + + + Customization values with schema scope + + + + + + + + + Customize interface and implementation class. + + + + + + Java class name without package prefix. + + + Implementation class name including package prefix. + + + Default value derived from [jaxb:globalBindings]@generateValueClass. + + + + + Customize property. + + + + + + + + + + + Data type conversions; overriding builtins + + + name of the java type to which xml type is to be bound. + + + xml type to which java datatype has to be bound.Must be present when javaType is scoped to globalBindings + + + + + +If true, the parsMethod and printMethod must reference a method +signtature that has a second parameter of type NamespaceContext. + + + + + + Bind to a type safe enumeration class. + + + + + + + + + + + Enumeration member name in a type safe enumeration class. + + + + + + + + + + + + + + + + + +The name attribute for [baseType] enables more precise control over the actual base type for a JAXB property. This customization enables specifying a more general base type than the property's default base type. The name attribute value must be a fully qualified Java class name. Additionally, this Java class must be a super interface/class of the default Java base type for the property. When the default base type is a primitive type, consider the default Java base type to be the Java wrapper class of that primitive type.This customization is useful to enable simple type substitution for a JAXB property representing with too restrictive of a default base type. + + + + + + + + + + + + + + Treate underscore in XML Name to Java identifier mapping. + + + + + + + +XML types or types derived from them which have enumeration facet(s) which are be mapped to typesafeEnumClass by default. The following types cannot be specified in this list: "xsd:QName", "xsd:base64Binary", "xsd:hexBinary", "xsd:date", "xsd:time", "xsd:dateTime", "xsd:duration","xsd:gDay", "xsd:gMonth", "xsd:Year", "xsd:gMonthDay", "xsd:YearMonth", "xsd:ID", "xsd:IDREF", "xsd:NOTATION" + + + + + Used to customize how to handle name collisions. + + + + + + + + Placeholder type to indicate Legal Java identifier. + + + + Rule to transform an Xml name into another Xml name + + prepend the string to QName. + + + Append the string to QName. + + + + Allows transforming an xml name into another xml name. Use case UDDI 2.0 schema. + + + Mapping rule for type definitions. + + + Mapping rule for elements + + + Mapping rule for model group + + + Mapping rule for class names generated for an anonymous type. + + + + + +A binding compiler only processes this attribute when it occurs on an +an instance of xs:schema element. The value of this attribute is a +whitespace-separated list of namespace prefixes. The namespace bound +to each of the prefixes is designated as a customization declaration +namespace. + + + + + + +Binding declaration(s) for a remote schema. +If attribute node is set, the binding declaraions +are associated with part of the remote schema +designated by schemaLocation attribute. The node +attribute identifies the node in the remote schema +to associate the binding declaration(s) with. + + + + + + + + + + + +Location of the remote schema to associate binding declarations with. + + + + +The value of the string is an XPATH 1.0 compliant string that +resolves to a node in a remote schema to associate +binding declarations with. The remote schema is specified +by the schemaLocation attribute occuring in the current +element or in a parent of this element. + + + + +Used to indicate the version of binding declarations. Only valid on root level bindings element. Either this or "jaxb:version" attribute but not both may be specified. + + + + +Used to indicate the version of binding declarations. Only valid on root level bindings element. Either this attribute or "version" attribute but not both may be specified. + + + + + + + + + + + + + + + + + + + Specify DOM API to bind to JAXB property to. + + + + + Disable MTOM/XOP encoding for this binary data. Annotation can be placed on a type defintion that derives from a W3C XSD binary data type or on an element that has a type that is or derives from a W3C XSD binary data type. + + + + + + + + + diff --git a/STAL/private/cache/retriever/www.w3.org/2001/XMLSchema.xsd b/STAL/private/cache/retriever/www.w3.org/2001/XMLSchema.xsd new file mode 100644 index 00000000..2e9a2729 --- /dev/null +++ b/STAL/private/cache/retriever/www.w3.org/2001/XMLSchema.xsd @@ -0,0 +1,2534 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ]> + + + + Part 1 version: Id: structures.xsd,v 1.2 2004/01/15 11:34:25 ht Exp + Part 2 version: Id: datatypes.xsd,v 1.3 2004/01/23 18:11:13 ht Exp + + + + + + The schema corresponding to this document is normative, + with respect to the syntactic constraints it expresses in the + XML Schema language. The documentation (within <documentation> elements) + below, is not normative, but rather highlights important aspects of + the W3C Recommendation of which this is a part + + + + + The simpleType element and all of its members are defined + towards the end of this schema document + + + + + + Get access to the xml: attribute groups for xml:lang + as declared on 'schema' and 'documentation' below + + + + + + + + This type is extended by almost all schema types + to allow attributes from other namespaces to be + added to user schemas. + + + + + + + + + + + + + This type is extended by all types which allow annotation + other than <schema> itself + + + + + + + + + + + + + + + + This group is for the + elements which occur freely at the top level of schemas. + All of their types are based on the "annotated" type by extension. + + + + + + + + + + + + + This group is for the + elements which can self-redefine (see <redefine> below). + + + + + + + + + + + + + A utility type, not for public use + + + + + + + + + + + A utility type, not for public use + + + + + + + + + + + A utility type, not for public use + + #all or (possibly empty) subset of {extension, restriction} + + + + + + + + + + + + + + + + + A utility type, not for public use + + + + + + + + + + + + + A utility type, not for public use + + #all or (possibly empty) subset of {extension, restriction, list, union} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + for maxOccurs + + + + + + + + + + + + for all particles + + + + + + + for element, group and attributeGroup, + which both define and reference + + + + + + + + 'complexType' uses this + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This branch is short for + <complexContent> + <restriction base="xs:anyType"> + ... + </restriction> + </complexContent> + + + + + + + + + + + + + + + Will be restricted to required or forbidden + + + + + + Not allowed if simpleContent child is chosen. + May be overriden by setting on complexContent child. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This choice is added simply to + make this a valid restriction per the REC + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Overrides any setting on complexType parent. + + + + + + + + + + + + + + + This choice is added simply to + make this a valid restriction per the REC + + + + + + + + + + + + + + + + + No typeDefParticle group reference + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A utility type, not for public use + + #all or (possibly empty) subset of {substitution, extension, + restriction} + + + + + + + + + + + + + + + + + + + + + + + + + The element element can be used either + at the top level to define an element-type binding globally, + or within a content model to either reference a globally-defined + element or type or declare an element-type binding locally. + The ref form is not allowed at the top level. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + group type for explicit groups, named top-level groups and + group references + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + group type for the three kinds of group + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This choice with min/max is here to + avoid a pblm with the Elt:All/Choice/Seq + Particle derivation constraint + + + + + + + + + + restricted max/min + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Only elements allowed inside + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + simple type for the value of the 'namespace' attr of + 'any' and 'anyAttribute' + + + + Value is + ##any - - any non-conflicting WFXML/attribute at all + + ##other - - any non-conflicting WFXML/attribute from + namespace other than targetNS + + ##local - - any unqualified non-conflicting WFXML/attribute + + one or - - any non-conflicting WFXML/attribute from + more URI the listed namespaces + references + (space separated) + + ##targetNamespace or ##local may appear in the above list, to + refer to the targetNamespace of the enclosing + schema or an absent targetNamespace respectively + + + + + + A utility type, not for public use + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A subset of XPath expressions for use +in selectors + A utility type, not for public +use + + + + The following pattern is intended to allow XPath + expressions per the following EBNF: + Selector ::= Path ( '|' Path )* + Path ::= ('.//')? Step ( '/' Step )* + Step ::= '.' | NameTest + NameTest ::= QName | '*' | NCName ':' '*' + child:: is also allowed + + + + + + + + + + + + + + + + + + + + + + + A subset of XPath expressions for use +in fields + A utility type, not for public +use + + + + The following pattern is intended to allow XPath + expressions per the same EBNF as for selector, + with the following change: + Path ::= ('.//')? ( Step '/' )* ( Step | '@' NameTest ) + + + + + + + + + + + + + + + + + + + + + + + + + + + The three kinds of identity constraints, all with + type of or derived from 'keybase'. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A utility type, not for public use + + A public identifier, per ISO 8879 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + notations for use within XML Schema schemas + + + + + + + + + Not the real urType, but as close an approximation as we can + get in the XML representation + + + + + + + + + + First the built-in primitive datatypes. These definitions are for + information only, the real built-in definitions are magic. + + + + For each built-in datatype in this schema (both primitive and + derived) can be uniquely addressed via a URI constructed + as follows: + 1) the base URI is the URI of the XML Schema namespace + 2) the fragment identifier is the name of the datatype + + For example, to address the int datatype, the URI is: + + http://www.w3.org/2001/XMLSchema#int + + Additionally, each facet definition element can be uniquely + addressed via a URI constructed as follows: + 1) the base URI is the URI of the XML Schema namespace + 2) the fragment identifier is the name of the facet + + For example, to address the maxInclusive facet, the URI is: + + http://www.w3.org/2001/XMLSchema#maxInclusive + + Additionally, each facet usage in a built-in datatype definition + can be uniquely addressed via a URI constructed as follows: + 1) the base URI is the URI of the XML Schema namespace + 2) the fragment identifier is the name of the datatype, followed + by a period (".") followed by the name of the facet + + For example, to address the usage of the maxInclusive facet in + the definition of int, the URI is: + + http://www.w3.org/2001/XMLSchema#int.maxInclusive + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + NOTATION cannot be used directly in a schema; rather a type + must be derived from it by specifying at least one enumeration + facet whose value is the name of a NOTATION declared in the + schema. + + + + + + + + + + Now the derived primitive types + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pattern specifies the content of section 2.12 of XML 1.0e2 + and RFC 3066 (Revised version of RFC 1766). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pattern matches production 7 from the XML spec + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + pattern matches production 5 from the XML spec + + + + + + + + + + + + + + + pattern matches production 4 from the Namespaces in XML spec + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A utility type, not for public use + + + + + + + + + + + + + + + + + + + + + + #all or (possibly empty) subset of {restriction, union, list} + + + A utility type, not for public use + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Can be restricted to required or forbidden + + + + + + + + + + + + + + + + + + Required at the top level + + + + + + + + + + + + + + + + + + + Forbidden when nested + + + + + + + + + + + + + + + + + + + We should use a substitution group for facets, but + that's ruled out because it would allow users to + add their own, which we're not ready for yet. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + base attribute and simpleType child are mutually + exclusive, but one or other is required + + + + + + + + + + + + + + + + itemType attribute and simpleType child are mutually + exclusive, but one or other is required + + + + + + + + + + + + + + + + + + memberTypes attribute must be non-empty or there must be + at least one simpleType child + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/STAL/src/main/java/META-INF/MANIFEST.MF b/STAL/src/main/java/META-INF/MANIFEST.MF new file mode 100644 index 00000000..5e949512 --- /dev/null +++ b/STAL/src/main/java/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Class-Path: + diff --git a/STAL/src/main/java/at/gv/egiz/stal/ErrorResponse.java b/STAL/src/main/java/at/gv/egiz/stal/ErrorResponse.java new file mode 100644 index 00000000..11d8637a --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/ErrorResponse.java @@ -0,0 +1,112 @@ +/* +* 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 at.gv.egiz.stal; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlTransient; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for ErrorResponseType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="ErrorResponseType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}ResponseType">
+ *       <sequence>
+ *         <element name="ErrorCode" type="{http://www.w3.org/2001/XMLSchema}int"/>
+ *         <element name="ErrorMessage" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *       </sequence>
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "ErrorResponseType", propOrder = { + "errorCode", + "errorMessage" +}) +public class ErrorResponse + extends STALResponse +{ + + @XmlTransient + public static final int ERR_4000 = 4000; + + @XmlElement(name = "ErrorCode") + protected int errorCode; + @XmlElement(name = "ErrorMessage", required = true) + protected String errorMessage; + + public ErrorResponse() { + this.errorCode = ERR_4000; + } + + public ErrorResponse(int errorCode) { + this.errorCode = errorCode; + } + + /** + * Gets the value of the errorCode property. + * + */ + public int getErrorCode() { + return errorCode; + } + + /** + * Sets the value of the errorCode property. + * + */ + public void setErrorCode(int value) { + this.errorCode = value; + } + + /** + * Gets the value of the errorMessage property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getErrorMessage() { + return errorMessage; + } + + /** + * Sets the value of the errorMessage property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setErrorMessage(String value) { + this.errorMessage = value; + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/HashDataInputCallback.java b/STAL/src/main/java/at/gv/egiz/stal/HashDataInputCallback.java new file mode 100644 index 00000000..f1ccf937 --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/HashDataInputCallback.java @@ -0,0 +1,24 @@ +/* +* 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 at.gv.egiz.stal; + +import java.io.InputStream; + +public interface HashDataInputCallback { + + InputStream getHashDataInput(String referenceId); +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/InfoboxReadRequest.java b/STAL/src/main/java/at/gv/egiz/stal/InfoboxReadRequest.java new file mode 100644 index 00000000..783113ab --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/InfoboxReadRequest.java @@ -0,0 +1,112 @@ +/* +* 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 at.gv.egiz.stal; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for InfoboxReadRequestType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="InfoboxReadRequestType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}RequestType">
+ *       <sequence>
+ *         <element name="InfoboxIdentifier" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="DomainIdentifier" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/>
+ *       </sequence>
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "InfoboxReadRequestType", propOrder = { + "infoboxIdentifier", + "domainIdentifier" +}) +public class InfoboxReadRequest + extends STALRequest +{ + + @XmlElement(name = "InfoboxIdentifier", required = true) + protected String infoboxIdentifier; + @XmlElement(name = "DomainIdentifier") + protected String domainIdentifier; + + /** + * Gets the value of the infoboxIdentifier property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getInfoboxIdentifier() { + return infoboxIdentifier; + } + + /** + * Sets the value of the infoboxIdentifier property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setInfoboxIdentifier(String value) { + this.infoboxIdentifier = value; + } + + /** + * Gets the value of the domainIdentifier property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getDomainIdentifier() { + return domainIdentifier; + } + + /** + * Sets the value of the domainIdentifier property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setDomainIdentifier(String value) { + this.domainIdentifier = value; + } + + public String toString() { + return "InfoboxReadRequest for: "+infoboxIdentifier; + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/InfoboxReadResponse.java b/STAL/src/main/java/at/gv/egiz/stal/InfoboxReadResponse.java new file mode 100644 index 00000000..54476764 --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/InfoboxReadResponse.java @@ -0,0 +1,78 @@ +/* +* 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 at.gv.egiz.stal; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for InfoboxReadResponseType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="InfoboxReadResponseType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}ResponseType">
+ *       <sequence>
+ *         <element name="InfoboxValue" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/>
+ *       </sequence>
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "InfoboxReadResponseType", propOrder = { + "infoboxValue" +}) +public class InfoboxReadResponse + extends STALResponse +{ + + @XmlElement(name = "InfoboxValue", required = true) + protected byte[] infoboxValue; + + /** + * Gets the value of the infoboxValue property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getInfoboxValue() { + return infoboxValue; + } + + /** + * Sets the value of the infoboxValue property. + * + * @param value + * allowed object is + * byte[] + */ + public void setInfoboxValue(byte[] value) { + this.infoboxValue = ((byte[]) value); + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/QuitRequest.java b/STAL/src/main/java/at/gv/egiz/stal/QuitRequest.java new file mode 100644 index 00000000..ed180d58 --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/QuitRequest.java @@ -0,0 +1,48 @@ +/* +* 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 at.gv.egiz.stal; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for QuitRequestType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="QuitRequestType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}RequestType">
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "QuitRequestType") +public class QuitRequest + extends STALRequest +{ + + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/STAL.java b/STAL/src/main/java/at/gv/egiz/stal/STAL.java new file mode 100644 index 00000000..de29de9a --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/STAL.java @@ -0,0 +1,43 @@ +/* +* 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 at.gv.egiz.stal; + +import java.util.List; +import java.util.Locale; + +/** + * Interface for all implementations of the Security Tokean Abstraction Layer. + * This interface is used by the BKU to handle all security token related parts. + * + * + */ +public interface STAL { + + /** + * Handles a list of security token commands. + * @param aRequestList + * @return + */ + public List handleRequest(List aRequestList); + + /** + * Sets the preferred locale for userinteraction (e.g. PIN dialogs). + * If the locale is not set the default locale will be used. + * @param locale must not be null. + */ + public void setLocale(Locale locale); +} \ No newline at end of file diff --git a/STAL/src/main/java/at/gv/egiz/stal/STALFactory.java b/STAL/src/main/java/at/gv/egiz/stal/STALFactory.java new file mode 100644 index 00000000..e7b3edd1 --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/STALFactory.java @@ -0,0 +1,22 @@ +/* +* 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 at.gv.egiz.stal; + +public interface STALFactory { + + public STAL createSTAL(); +} \ No newline at end of file diff --git a/STAL/src/main/java/at/gv/egiz/stal/STALRequest.java b/STAL/src/main/java/at/gv/egiz/stal/STALRequest.java new file mode 100644 index 00000000..0c3f88c2 --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/STALRequest.java @@ -0,0 +1,54 @@ +/* +* 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 at.gv.egiz.stal; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlSeeAlso; +import javax.xml.bind.annotation.XmlType; + + +/** + *

TODO update java doc: not only for RequestType complex type.

+ * + *

Java class for RequestType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="RequestType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "RequestType") +@XmlSeeAlso({ + SignRequest.class, + InfoboxReadRequest.class, + QuitRequest.class +}) +public abstract class STALRequest { + + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/STALResponse.java b/STAL/src/main/java/at/gv/egiz/stal/STALResponse.java new file mode 100644 index 00000000..91ef3c24 --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/STALResponse.java @@ -0,0 +1,89 @@ +/* +* 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 at.gv.egiz.stal; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlID; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlSeeAlso; +import javax.xml.bind.annotation.XmlType; +import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; +import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; + + +/** + *

TODO update java doc: not only for ResponseType complex type.

+ * + *

Java class for ResponseType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="ResponseType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "ResponseType") +@XmlSeeAlso({ + ErrorResponse.class, + SignResponse.class, + InfoboxReadResponse.class +}) +public abstract class STALResponse { + + @XmlAttribute(name = "Id") + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + @XmlID + @XmlSchemaType(name = "ID") + protected String id; + + /** + * Gets the value of the id property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getId() { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setId(String value) { + this.id = value; + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/SignRequest.java b/STAL/src/main/java/at/gv/egiz/stal/SignRequest.java new file mode 100644 index 00000000..8c996d2c --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/SignRequest.java @@ -0,0 +1,113 @@ +/* +* 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 at.gv.egiz.stal; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlTransient; +import javax.xml.bind.annotation.XmlType; + +/** + *

Java class for SignRequestType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="SignRequestType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}RequestType">
+ *       <sequence>
+ *         <element name="KeyIdentifier" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *         <element name="SignedInfo" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/>
+ *       </sequence>
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "SignRequestType", propOrder = { + "keyIdentifier", + "signedInfo" +}) +public class SignRequest + extends STALRequest { + + @XmlElement(name = "KeyIdentifier", required = true) + protected String keyIdentifier; + @XmlElement(name = "SignedInfo", required = true) + protected byte[] signedInfo; + @XmlTransient + protected HashDataInputCallback hashData; + + /** + * Gets the value of the keyIdentifier property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getKeyIdentifier() { + return keyIdentifier; + } + + /** + * Sets the value of the keyIdentifier property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setKeyIdentifier(String value) { + this.keyIdentifier = value; + } + + /** + * Gets the value of the signedInfo property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getSignedInfo() { + return signedInfo; + } + + /** + * Sets the value of the signedInfo property. + * + * @param value + * allowed object is + * byte[] + */ + public void setSignedInfo(byte[] value) { + this.signedInfo = ((byte[]) value); + } + + public HashDataInputCallback getHashDataInput() { + return hashData; + } + + public void setHashDataInput(HashDataInputCallback hashData) { + this.hashData = hashData; + } +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/SignResponse.java b/STAL/src/main/java/at/gv/egiz/stal/SignResponse.java new file mode 100644 index 00000000..462af30b --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/SignResponse.java @@ -0,0 +1,78 @@ +/* +* 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 at.gv.egiz.stal; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for SignResponseType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="SignResponseType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}ResponseType">
+ *       <sequence>
+ *         <element name="SignatureValue" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/>
+ *       </sequence>
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "SignResponseType", propOrder = { + "signatureValue" +}) +public class SignResponse + extends STALResponse +{ + + @XmlElement(name = "SignatureValue", required = true) + protected byte[] signatureValue; + + /** + * Gets the value of the signatureValue property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getSignatureValue() { + return signatureValue; + } + + /** + * Sets the value of the signatureValue property. + * + * @param value + * allowed object is + * byte[] + */ + public void setSignatureValue(byte[] value) { + this.signatureValue = ((byte[]) value); + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/signedinfo/CanonicalizationMethodType.java b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/CanonicalizationMethodType.java new file mode 100644 index 00000000..35de75fe --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/CanonicalizationMethodType.java @@ -0,0 +1,125 @@ +/* +* 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. +*/ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-520 +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2008.07.28 at 08:23:24 AM GMT +// + + +package at.gv.egiz.stal.signedinfo; + +import java.util.ArrayList; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAnyElement; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlMixed; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for CanonicalizationMethodType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="CanonicalizationMethodType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <any/>
+ *       </sequence>
+ *       <attribute name="Algorithm" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "CanonicalizationMethodType", propOrder = { + "content" +}) +public class CanonicalizationMethodType { + + @XmlMixed + @XmlAnyElement(lax = true) + protected List content; + @XmlAttribute(name = "Algorithm", required = true) + @XmlSchemaType(name = "anyURI") + protected String algorithm; + + /** + * Gets the value of the content property. + * + *

+ * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a set method for the content property. + * + *

+ * For example, to add a new item, do as follows: + *

+     *    getContent().add(newItem);
+     * 
+ * + * + *

+ * Objects of the following type(s) are allowed in the list + * {@link Object } + * {@link String } + * + * + */ + public List getContent() { + if (content == null) { + content = new ArrayList(); + } + return this.content; + } + + /** + * Gets the value of the algorithm property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getAlgorithm() { + return algorithm; + } + + /** + * Sets the value of the algorithm property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setAlgorithm(String value) { + this.algorithm = value; + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/signedinfo/DigestMethodType.java b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/DigestMethodType.java new file mode 100644 index 00000000..9c6b01f4 --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/DigestMethodType.java @@ -0,0 +1,127 @@ +/* +* 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. +*/ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-520 +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2008.07.28 at 08:23:24 AM GMT +// + + +package at.gv.egiz.stal.signedinfo; + +import java.util.ArrayList; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAnyElement; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlMixed; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; +import org.w3c.dom.Element; + + +/** + *

Java class for DigestMethodType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="DigestMethodType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <any/>
+ *       </sequence>
+ *       <attribute name="Algorithm" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "DigestMethodType", propOrder = { + "content" +}) +public class DigestMethodType { + + @XmlMixed + @XmlAnyElement(lax = true) + protected List content; + @XmlAttribute(name = "Algorithm", required = true) + @XmlSchemaType(name = "anyURI") + protected String algorithm; + + /** + * Gets the value of the content property. + * + *

+ * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a set method for the content property. + * + *

+ * For example, to add a new item, do as follows: + *

+     *    getContent().add(newItem);
+     * 
+ * + * + *

+ * Objects of the following type(s) are allowed in the list + * {@link String } + * {@link Element } + * {@link Object } + * + * + */ + public List getContent() { + if (content == null) { + content = new ArrayList(); + } + return this.content; + } + + /** + * Gets the value of the algorithm property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getAlgorithm() { + return algorithm; + } + + /** + * Sets the value of the algorithm property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setAlgorithm(String value) { + this.algorithm = value; + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/signedinfo/ObjectFactory.java b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/ObjectFactory.java new file mode 100644 index 00000000..c5f99f01 --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/ObjectFactory.java @@ -0,0 +1,178 @@ +/* +* 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. +*/ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-520 +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2008.07.28 at 08:23:24 AM GMT +// + + +package at.gv.egiz.stal.signedinfo; + +import javax.xml.bind.JAXBElement; +import javax.xml.bind.annotation.XmlElementDecl; +import javax.xml.bind.annotation.XmlRegistry; +import javax.xml.namespace.QName; + + +/** + * Do not use this package in jaxb context together with org.w3._2000._09.xmldsig_ + *
+ * This object contains factory methods for each + * Java content interface and Java element interface + * generated in the at.gv.egiz.stal.signedinfo package. + *

An ObjectFactory allows you to programatically + * construct new instances of the Java representation + * for XML content. The Java representation of XML + * content can consist of schema derived interfaces + * and classes representing the binding of schema + * type definitions, element declarations and model + * groups. Factory methods for each of these are + * provided in this class. + * + */ +@XmlRegistry +public class ObjectFactory { + + private final static QName _CanonicalizationMethod_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "CanonicalizationMethod"); + private final static QName _Reference_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "Reference"); + private final static QName _SignatureMethod_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "SignatureMethod"); + private final static QName _SignedInfo_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "SignedInfo"); + private final static QName _Transforms_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "Transforms"); + private final static QName _DigestMethod_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "DigestMethod"); + private final static QName _DigestValue_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "DigestValue"); + + /** + * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.gv.egiz.stal.signedinfo + * + */ + public ObjectFactory() { + } + + /** + * Create an instance of {@link ReferenceType } + * + */ + public ReferenceType createReferenceType() { + return new ReferenceType(); + } + + /** + * Create an instance of {@link CanonicalizationMethodType } + * + */ + public CanonicalizationMethodType createCanonicalizationMethodType() { + return new CanonicalizationMethodType(); + } + + /** + * Create an instance of {@link DigestMethodType } + * + */ + public DigestMethodType createDigestMethodType() { + return new DigestMethodType(); + } + + /** + * Create an instance of {@link TransformsType } + * + */ + public TransformsType createTransformsType() { + return new TransformsType(); + } + + /** + * Create an instance of {@link SignatureMethodType } + * + */ + public SignatureMethodType createSignatureMethodType() { + return new SignatureMethodType(); + } + + /** + * Create an instance of {@link SignedInfoType } + * + */ + public SignedInfoType createSignedInfoType() { + return new SignedInfoType(); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link CanonicalizationMethodType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "CanonicalizationMethod") + public JAXBElement createCanonicalizationMethod(CanonicalizationMethodType value) { + return new JAXBElement(_CanonicalizationMethod_QNAME, CanonicalizationMethodType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link ReferenceType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "Reference") + public JAXBElement createReference(ReferenceType value) { + return new JAXBElement(_Reference_QNAME, ReferenceType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link SignatureMethodType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "SignatureMethod") + public JAXBElement createSignatureMethod(SignatureMethodType value) { + return new JAXBElement(_SignatureMethod_QNAME, SignatureMethodType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link SignedInfoType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "SignedInfo") + public JAXBElement createSignedInfo(SignedInfoType value) { + return new JAXBElement(_SignedInfo_QNAME, SignedInfoType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link TransformsType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "Transforms") + public JAXBElement createTransforms(TransformsType value) { + return new JAXBElement(_Transforms_QNAME, TransformsType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link DigestMethodType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "DigestMethod") + public JAXBElement createDigestMethod(DigestMethodType value) { + return new JAXBElement(_DigestMethod_QNAME, DigestMethodType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link byte[]}{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "DigestValue") + public JAXBElement createDigestValue(byte[] value) { + return new JAXBElement(_DigestValue_QNAME, byte[].class, null, ((byte[]) value)); + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/signedinfo/ReferenceType.java b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/ReferenceType.java new file mode 100644 index 00000000..12fbf83f --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/ReferenceType.java @@ -0,0 +1,230 @@ +/* +* 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. +*/ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-520 +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2008.07.28 at 08:23:24 AM GMT +// + + +package at.gv.egiz.stal.signedinfo; + +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; + + +/** + *

Java class for ReferenceType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="ReferenceType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <element ref="{http://www.w3.org/2000/09/xmldsig#}Transforms" minOccurs="0"/>
+ *         <element ref="{http://www.w3.org/2000/09/xmldsig#}DigestMethod"/>
+ *         <element ref="{http://www.w3.org/2000/09/xmldsig#}DigestValue"/>
+ *       </sequence>
+ *       <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ *       <attribute name="URI" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ *       <attribute name="Type" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "ReferenceType", propOrder = { + "transforms", + "digestMethod", + "digestValue" +}) +public class ReferenceType { + + @XmlElement(name = "Transforms") + protected TransformsType transforms; + @XmlElement(name = "DigestMethod", required = true) + protected DigestMethodType digestMethod; + @XmlElement(name = "DigestValue", required = true) + protected byte[] digestValue; + @XmlAttribute(name = "Id") + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + @XmlID + @XmlSchemaType(name = "ID") + protected String id; + @XmlAttribute(name = "URI") + @XmlSchemaType(name = "anyURI") + protected String uri; + @XmlAttribute(name = "Type") + @XmlSchemaType(name = "anyURI") + protected String type; + + /** + * Gets the value of the transforms property. + * + * @return + * possible object is + * {@link TransformsType } + * + */ + public TransformsType getTransforms() { + return transforms; + } + + /** + * Sets the value of the transforms property. + * + * @param value + * allowed object is + * {@link TransformsType } + * + */ + public void setTransforms(TransformsType value) { + this.transforms = value; + } + + /** + * Gets the value of the digestMethod property. + * + * @return + * possible object is + * {@link DigestMethodType } + * + */ + public DigestMethodType getDigestMethod() { + return digestMethod; + } + + /** + * Sets the value of the digestMethod property. + * + * @param value + * allowed object is + * {@link DigestMethodType } + * + */ + public void setDigestMethod(DigestMethodType value) { + this.digestMethod = value; + } + + /** + * Gets the value of the digestValue property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getDigestValue() { + return digestValue; + } + + /** + * Sets the value of the digestValue property. + * + * @param value + * allowed object is + * byte[] + */ + public void setDigestValue(byte[] value) { + this.digestValue = ((byte[]) value); + } + + /** + * Gets the value of the id property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getId() { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setId(String value) { + this.id = value; + } + + /** + * Gets the value of the uri property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getURI() { + return uri; + } + + /** + * Sets the value of the uri property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setURI(String value) { + this.uri = value; + } + + /** + * Gets the value of the type property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getType() { + return type; + } + + /** + * Sets the value of the type property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setType(String value) { + this.type = value; + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/signedinfo/SignatureMethodType.java b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/SignatureMethodType.java new file mode 100644 index 00000000..cfc1f822 --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/SignatureMethodType.java @@ -0,0 +1,125 @@ +/* +* 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. +*/ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-520 +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2008.07.28 at 08:23:24 AM GMT +// + + +package at.gv.egiz.stal.signedinfo; + +import java.util.ArrayList; +import java.util.List; +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAnyElement; +import javax.xml.bind.annotation.XmlAttribute; +import javax.xml.bind.annotation.XmlMixed; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for SignatureMethodType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="SignatureMethodType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <any/>
+ *       </sequence>
+ *       <attribute name="Algorithm" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "SignatureMethodType", propOrder = { + "content" +}) +public class SignatureMethodType { + + @XmlMixed + @XmlAnyElement(lax = true) + protected List content; + @XmlAttribute(name = "Algorithm", required = true) + @XmlSchemaType(name = "anyURI") + protected String algorithm; + + /** + * Gets the value of the content property. + * + *

+ * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a set method for the content property. + * + *

+ * For example, to add a new item, do as follows: + *

+     *    getContent().add(newItem);
+     * 
+ * + * + *

+ * Objects of the following type(s) are allowed in the list + * {@link Object } + * {@link String } + * + * + */ + public List getContent() { + if (content == null) { + content = new ArrayList(); + } + return this.content; + } + + /** + * Gets the value of the algorithm property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getAlgorithm() { + return algorithm; + } + + /** + * Sets the value of the algorithm property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setAlgorithm(String value) { + this.algorithm = value; + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/signedinfo/SignedInfoType.java b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/SignedInfoType.java new file mode 100644 index 00000000..e93f988c --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/SignedInfoType.java @@ -0,0 +1,183 @@ +/* +* 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. +*/ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-520 +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2008.07.28 at 08:23:24 AM GMT +// + + +package at.gv.egiz.stal.signedinfo; + +import java.util.ArrayList; +import java.util.List; +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; + + +/** + *

Java class for SignedInfoType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="SignedInfoType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <element ref="{http://www.w3.org/2000/09/xmldsig#}CanonicalizationMethod"/>
+ *         <element ref="{http://www.w3.org/2000/09/xmldsig#}SignatureMethod"/>
+ *         <element ref="{http://www.w3.org/2000/09/xmldsig#}Reference" maxOccurs="unbounded"/>
+ *       </sequence>
+ *       <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "SignedInfoType", propOrder = { + "canonicalizationMethod", + "signatureMethod", + "reference" +}) +public class SignedInfoType { + + @XmlElement(name = "CanonicalizationMethod", required = true) + protected CanonicalizationMethodType canonicalizationMethod; + @XmlElement(name = "SignatureMethod", required = true) + protected SignatureMethodType signatureMethod; + @XmlElement(name = "Reference", required = true) + protected List reference; + @XmlAttribute(name = "Id") + @XmlJavaTypeAdapter(CollapsedStringAdapter.class) + @XmlID + @XmlSchemaType(name = "ID") + protected String id; + + /** + * Gets the value of the canonicalizationMethod property. + * + * @return + * possible object is + * {@link CanonicalizationMethodType } + * + */ + public CanonicalizationMethodType getCanonicalizationMethod() { + return canonicalizationMethod; + } + + /** + * Sets the value of the canonicalizationMethod property. + * + * @param value + * allowed object is + * {@link CanonicalizationMethodType } + * + */ + public void setCanonicalizationMethod(CanonicalizationMethodType value) { + this.canonicalizationMethod = value; + } + + /** + * Gets the value of the signatureMethod property. + * + * @return + * possible object is + * {@link SignatureMethodType } + * + */ + public SignatureMethodType getSignatureMethod() { + return signatureMethod; + } + + /** + * Sets the value of the signatureMethod property. + * + * @param value + * allowed object is + * {@link SignatureMethodType } + * + */ + public void setSignatureMethod(SignatureMethodType value) { + this.signatureMethod = value; + } + + /** + * Gets the value of the reference property. + * + *

+ * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a set method for the reference property. + * + *

+ * For example, to add a new item, do as follows: + *

+     *    getReference().add(newItem);
+     * 
+ * + * + *

+ * Objects of the following type(s) are allowed in the list + * {@link ReferenceType } + * + * + */ + public List getReference() { + if (reference == null) { + reference = new ArrayList(); + } + return this.reference; + } + + /** + * Gets the value of the id property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getId() { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setId(String value) { + this.id = value; + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/signedinfo/TransformsType.java b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/TransformsType.java new file mode 100644 index 00000000..8f5c1ade --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/TransformsType.java @@ -0,0 +1,88 @@ +/* +* 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. +*/ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-520 +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2008.07.28 at 08:23:24 AM GMT +// + + +package at.gv.egiz.stal.signedinfo; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlAnyElement; +import javax.xml.bind.annotation.XmlType; +import org.w3c.dom.Element; + + +/** + *

Java class for TransformsType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="TransformsType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <any/>
+ *       </sequence>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "TransformsType", propOrder = { + "any" +}) +public class TransformsType { + + @XmlAnyElement(lax = true) + protected Object any; + + /** + * Gets the value of the any property. + * + * @return + * possible object is + * {@link Element } + * {@link Object } + * + */ + public Object getAny() { + return any; + } + + /** + * Sets the value of the any property. + * + * @param value + * allowed object is + * {@link Element } + * {@link Object } + * + */ + public void setAny(Object value) { + this.any = value; + } + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/signedinfo/package-info.java b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/package-info.java new file mode 100644 index 00000000..6b323fea --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/signedinfo/package-info.java @@ -0,0 +1,25 @@ +/* +* 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. +*/ +// +// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, vhudson-jaxb-ri-2.1-520 +// See http://java.sun.com/xml/jaxb +// Any modifications to this file will be lost upon recompilation of the source schema. +// Generated on: 2008.07.28 at 08:23:24 AM GMT +// + +@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.w3.org/2000/09/xmldsig#", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) +package at.gv.egiz.stal.signedinfo; diff --git a/STAL/src/main/java/at/gv/egiz/stal/util/JCEAlgorithmNames.java b/STAL/src/main/java/at/gv/egiz/stal/util/JCEAlgorithmNames.java new file mode 100644 index 00000000..7e8a767e --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/util/JCEAlgorithmNames.java @@ -0,0 +1,51 @@ +/* +* 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 at.gv.egiz.stal.util; + +import java.util.HashMap; +import java.util.Map; + +/** + * Maps XML Algorithms to JCE Hash names. + * + */ +public class JCEAlgorithmNames { + + private Map hashNameMap = new HashMap(); + + public static String[] JCE_HASH_NAMES = { "SHA-1" }; + + public static String[] SHA_1_ALGORITMS = { + "http://www.w3.org/2001/04/xmldsig-more#ecdsa-sha1", + "http://www.w3.org/2000/09/xmldsig#sha1" }; + + private static JCEAlgorithmNames instance = new JCEAlgorithmNames(); + + private JCEAlgorithmNames() { + for (String alg : SHA_1_ALGORITMS) { + registerHash(alg, JCE_HASH_NAMES[0]); + } + } + + public static String getJCEHashName(String xmlAlgorithmURI) { + return instance.hashNameMap.get(xmlAlgorithmURI); + } + + public void registerHash(String xmlAlgorithmURI, String jceName) { + hashNameMap.put(xmlAlgorithmURI, jceName); + } +} -- cgit v1.2.3 From 35b64892bad13c846f19260311c7625d88cef7a1 Mon Sep 17 00:00:00 2001 From: clemenso Date: Fri, 5 Sep 2008 13:39:53 +0000 Subject: HashDataInput git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@23 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../main/java/at/gv/egiz/stal/HashDataInput.java | 22 ++ .../at/gv/egiz/stal/HashDataInputCallback.java | 24 -- .../src/main/java/at/gv/egiz/stal/SignRequest.java | 7 +- .../gv/egiz/stal/impl/ByteArrayHashDataInput.java | 47 +++ .../stal/service/GetHashDataInputResponseType.java | 39 ++- smccSTAL/pom.xml | 74 ++--- .../egiz/bku/smccstal/AbstractRequestHandler.java | 139 +++++---- .../at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java | 196 ++++++------ .../egiz/bku/smccstal/SMCCSTALRequestHandler.java | 39 ++- .../gv/egiz/bku/smccstal/SignRequestHandler.java | 337 ++++++++++++--------- 10 files changed, 511 insertions(+), 413 deletions(-) create mode 100644 STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java delete mode 100644 STAL/src/main/java/at/gv/egiz/stal/HashDataInputCallback.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/impl/ByteArrayHashDataInput.java (limited to 'STAL') diff --git a/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java b/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java new file mode 100644 index 00000000..2d1e9ce6 --- /dev/null +++ b/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java @@ -0,0 +1,22 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +package at.gv.egiz.stal; + +import java.io.InputStream; + +/** + * + * @author clemens + */ +public interface HashDataInput { + + public String getReferenceId(); + + public String getMimeType(); + + public InputStream getHashDataInput(); + +} diff --git a/STAL/src/main/java/at/gv/egiz/stal/HashDataInputCallback.java b/STAL/src/main/java/at/gv/egiz/stal/HashDataInputCallback.java deleted file mode 100644 index f1ccf937..00000000 --- a/STAL/src/main/java/at/gv/egiz/stal/HashDataInputCallback.java +++ /dev/null @@ -1,24 +0,0 @@ -/* -* 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 at.gv.egiz.stal; - -import java.io.InputStream; - -public interface HashDataInputCallback { - - InputStream getHashDataInput(String referenceId); -} diff --git a/STAL/src/main/java/at/gv/egiz/stal/SignRequest.java b/STAL/src/main/java/at/gv/egiz/stal/SignRequest.java index 8c996d2c..b1fea0fe 100644 --- a/STAL/src/main/java/at/gv/egiz/stal/SignRequest.java +++ b/STAL/src/main/java/at/gv/egiz/stal/SignRequest.java @@ -16,6 +16,7 @@ */ package at.gv.egiz.stal; +import java.util.List; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlElement; @@ -55,7 +56,7 @@ public class SignRequest @XmlElement(name = "SignedInfo", required = true) protected byte[] signedInfo; @XmlTransient - protected HashDataInputCallback hashData; + protected List hashData; /** * Gets the value of the keyIdentifier property. @@ -103,11 +104,11 @@ public class SignRequest this.signedInfo = ((byte[]) value); } - public HashDataInputCallback getHashDataInput() { + public List getHashDataInput() { return hashData; } - public void setHashDataInput(HashDataInputCallback hashData) { + public void setHashDataInput(List hashData) { this.hashData = hashData; } } diff --git a/STALService/src/main/java/at/gv/egiz/stal/impl/ByteArrayHashDataInput.java b/STALService/src/main/java/at/gv/egiz/stal/impl/ByteArrayHashDataInput.java new file mode 100644 index 00000000..1f6e7935 --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/impl/ByteArrayHashDataInput.java @@ -0,0 +1,47 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ + +package at.gv.egiz.stal.impl; + +import at.gv.egiz.stal.HashDataInput; +import java.io.ByteArrayInputStream; +import java.io.InputStream; + +/** + * + * @author clemens + */ +public class ByteArrayHashDataInput implements HashDataInput { + + protected byte[] hashData; + protected String id; + protected String mimeType; + + public ByteArrayHashDataInput(byte[] hashData, String id, String mimeType) { + if (hashData == null) { + throw new NullPointerException("HashDataInput not provided."); + } + this.hashData = hashData; + this.id = id; + this.mimeType = mimeType; + } + + @Override + public String getReferenceId() { + return id; + } + + @Override + public String getMimeType() { + return mimeType; + } + + @Override + public InputStream getHashDataInput() { + return new ByteArrayInputStream(hashData); + } + + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java index b5f24030..cf8545e9 100644 --- a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java +++ b/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java @@ -23,12 +23,8 @@ 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.XmlValue; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; /** @@ -45,7 +41,8 @@ import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; * <complexType> * <simpleContent> * <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary"> - * <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}ID" /> + * <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" /> + * <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" /> * </extension> * </simpleContent> * </complexType> @@ -133,7 +130,8 @@ public class GetHashDataInputResponseType { * <complexType> * <simpleContent> * <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary"> - * <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}ID" /> + * <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" /> + * <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" /> * </extension> * </simpleContent> * </complexType> @@ -150,10 +148,9 @@ public class GetHashDataInputResponseType { @XmlValue protected byte[] value; @XmlAttribute(name = "ID") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") protected String id; + @XmlAttribute(name = "MimeType") + protected String mimeType; /** * Gets the value of the value property. @@ -201,6 +198,30 @@ public class GetHashDataInputResponseType { this.id = value; } + /** + * Gets the value of the mimeType property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getMimeType() { + return mimeType; + } + + /** + * Sets the value of the mimeType property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setMimeType(String value) { + this.mimeType = value; + } + } } diff --git a/smccSTAL/pom.xml b/smccSTAL/pom.xml index 4af8c6de..8b1a24b0 100644 --- a/smccSTAL/pom.xml +++ b/smccSTAL/pom.xml @@ -1,40 +1,40 @@ - - bku - at.gv.egiz - 1.0-SNAPSHOT - - 4.0.0 - at.gv.egiz - smccSTAL - smcc STAL - 1.0-SNAPSHOT - - - - at.gv.egiz - STAL - 1.0-SNAPSHOT - - - at.gv.egiz - smcc - 1.0-SNAPSHOT - - - at.gv.egiz - BKUCommonGUI - 1.0-SNAPSHOT - - - iaik - iaik_jce_me4se - - - commons-logging - commons-logging - - + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + + bku + at.gv.egiz + 1.0-SNAPSHOT + + 4.0.0 + at.gv.egiz + smccSTAL + smcc STAL + 1.0-SNAPSHOT + + + + at.gv.egiz + STAL + 1.0-SNAPSHOT + + + at.gv.egiz + smcc + 1.0-SNAPSHOT + + + at.gv.egiz + BKUCommonGUI + 1.0-SNAPSHOT + + + iaik + iaik_jce_me4se + + + commons-logging + commons-logging + + \ No newline at end of file diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractRequestHandler.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractRequestHandler.java index e5afa478..995e2b77 100644 --- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractRequestHandler.java +++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractRequestHandler.java @@ -14,73 +14,72 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package at.gv.egiz.bku.smccstal; - -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import at.gv.egiz.bku.gui.BKUGUIFacade; -import at.gv.egiz.smcc.PINProvider; -import at.gv.egiz.smcc.SignatureCard; -import at.gv.egiz.stal.STALRequest; -import at.gv.egiz.stal.STALResponse; - -public abstract class AbstractRequestHandler implements SMCCSTALRequestHandler, - ActionListener { - private final static Log log = LogFactory - .getLog(AbstractRequestHandler.class); - - protected SignatureCard card; - protected BKUGUIFacade gui; - protected static STALMessageConsumer messageConsumer = null; - protected String actionCommand; - protected boolean actionPerformed = false; - - @Override - public abstract STALResponse handleRequest(STALRequest request); - - @Override - public void init(SignatureCard sc, BKUGUIFacade gui) { - if ((sc == null) || (gui == null)) { - throw new NullPointerException("Parameter must not be set to null"); - } - this.card = sc; - this.gui = gui; - } - - public static void setMessageConsumer(STALMessageConsumer messageConsumer) { - AbstractRequestHandler.messageConsumer = messageConsumer; - } - - protected static void newSTALMessage(String caption, String message) { - if (messageConsumer != null) { - messageConsumer.consumeNewSTALMessage(caption, message); - } - } - - protected synchronized void waitForAction() { - try { - while (!actionPerformed) { - wait(); - } - } catch (InterruptedException e) { - log.info(e); - } - actionPerformed = false; - } - - private synchronized void actionPerformed() { - actionPerformed = true; - notifyAll(); - } - - @Override - public void actionPerformed(ActionEvent e) { - actionCommand = e.getActionCommand(); - actionPerformed(); - } - -} +package at.gv.egiz.bku.smccstal; + +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import at.gv.egiz.bku.gui.BKUGUIFacade; +import at.gv.egiz.smcc.SignatureCard; +import at.gv.egiz.stal.STALRequest; +import at.gv.egiz.stal.STALResponse; + +public abstract class AbstractRequestHandler implements SMCCSTALRequestHandler, + ActionListener { + private final static Log log = LogFactory + .getLog(AbstractRequestHandler.class); + + protected SignatureCard card; + protected BKUGUIFacade gui; + protected static STALMessageConsumer messageConsumer = null; + protected String actionCommand; + protected boolean actionPerformed = false; + + @Override + public abstract STALResponse handleRequest(STALRequest request); + + @Override + public void init(SignatureCard sc, BKUGUIFacade gui) { + if ((sc == null) || (gui == null)) { + throw new NullPointerException("Parameter must not be set to null"); + } + this.card = sc; + this.gui = gui; + } + + public static void setMessageConsumer(STALMessageConsumer messageConsumer) { + AbstractRequestHandler.messageConsumer = messageConsumer; + } + + protected static void newSTALMessage(String caption, String message) { + if (messageConsumer != null) { + messageConsumer.consumeNewSTALMessage(caption, message); + } + } + + protected synchronized void waitForAction() { + try { + while (!actionPerformed) { + wait(); + } + } catch (InterruptedException e) { + log.info(e); + } + actionPerformed = false; + } + + private synchronized void actionPerformed() { + actionPerformed = true; + notifyAll(); + } + + @Override + public void actionPerformed(ActionEvent e) { + actionCommand = e.getActionCommand(); + actionPerformed(); + } + +} diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java index 7bd9e264..56c8340b 100644 --- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java +++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java @@ -14,103 +14,99 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package at.gv.egiz.bku.smccstal; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Locale; -import java.util.Map; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import at.gv.egiz.bku.gui.BKUGUIFacade; -import at.gv.egiz.smcc.PINProvider; -import at.gv.egiz.smcc.SignatureCard; -import at.gv.egiz.smcc.util.SMCCHelper; -import at.gv.egiz.stal.ErrorResponse; -import at.gv.egiz.stal.InfoboxReadRequest; -import at.gv.egiz.stal.STAL; -import at.gv.egiz.stal.STALRequest; -import at.gv.egiz.stal.STALResponse; -import at.gv.egiz.stal.SignRequest; - -public abstract class AbstractSMCCSTAL implements STAL { - private static Log log = LogFactory.getLog(AbstractSMCCSTAL.class); - - protected Locale locale = Locale.getDefault(); - protected SMCCHelper smccHelper = new SMCCHelper(); - protected SignatureCard signatureCard = null; - protected static Map handlerMap = new HashMap(); - - static { - addRequestHandler(InfoboxReadRequest.class, new InfoBoxReadRequestHandler()); - addRequestHandler(SignRequest.class, new SignRequestHandler()); - } - - public AbstractSMCCSTAL() { - } - - /** - * Implementations must assign the signature card within this method. - * - * @return if the user canceled - */ - protected abstract boolean waitForCard(); - - protected abstract BKUGUIFacade getGUI(); - - @Override - public List handleRequest( - List requestList) { - log.debug("Got request list containing " + requestList.size() - + " STAL requests"); - List responseList = new ArrayList(requestList - .size()); - for (STALRequest request : requestList) { - log.info("Processing: " + request); - SMCCSTALRequestHandler handler = null; - handler = handlerMap.get(request.getClass().getSimpleName()); - if (handler != null) { - if (handler.requireCard()) { - if (waitForCard()) { - responseList.add(new ErrorResponse(6001)); - break; - } - } - try { - handler = handler.newInstance(); - handler.init(signatureCard, getGUI()); - responseList.add(handler.handleRequest(request)); - } catch (Exception e) { - log.info("Error while handling STAL request:" + e); - responseList.add(new ErrorResponse(6000)); - } - } else { - log.error("Cannot find a handler for STAL request: " + request); - responseList.add(new ErrorResponse()); - } - } - return responseList; - } - - public static void addRequestHandler(Class id, - SMCCSTALRequestHandler handler) { - log.debug("Registering STAL request handler: " + id.getSimpleName()); - handlerMap.put(id.getSimpleName(), handler); - } - - public static SMCCSTALRequestHandler getRequestHandler( - Class request) { - return handlerMap.get(request.getSimpleName()); - } - - @Override - public void setLocale(Locale locale) { - if (locale == null) { - throw new NullPointerException("Locale must not be set to null"); - } - this.locale = locale; - } -} +package at.gv.egiz.bku.smccstal; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Locale; +import java.util.Map; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import at.gv.egiz.bku.gui.BKUGUIFacade; +import at.gv.egiz.smcc.SignatureCard; +import at.gv.egiz.smcc.util.SMCCHelper; +import at.gv.egiz.stal.ErrorResponse; +import at.gv.egiz.stal.InfoboxReadRequest; +import at.gv.egiz.stal.STAL; +import at.gv.egiz.stal.STALRequest; +import at.gv.egiz.stal.STALResponse; +import at.gv.egiz.stal.SignRequest; + +public abstract class AbstractSMCCSTAL implements STAL { + private static Log log = LogFactory.getLog(AbstractSMCCSTAL.class); + + protected Locale locale = Locale.getDefault(); + protected SMCCHelper smccHelper = new SMCCHelper(); + protected SignatureCard signatureCard = null; + protected static Map handlerMap = new HashMap(); + + static { + addRequestHandler(InfoboxReadRequest.class, new InfoBoxReadRequestHandler()); + addRequestHandler(SignRequest.class, new SignRequestHandler()); + } + + /** + * Implementations must assign the signature card within this method. + * + * @return if the user canceled + */ + protected abstract boolean waitForCard(); + + protected abstract BKUGUIFacade getGUI(); + + @Override + public List handleRequest( + List requestList) { + log.debug("Got request list containing " + requestList.size() + + " STAL requests"); + List responseList = new ArrayList(requestList + .size()); + for (STALRequest request : requestList) { + log.info("Processing: " + request); + SMCCSTALRequestHandler handler = null; + handler = handlerMap.get(request.getClass().getSimpleName()); + if (handler != null) { + if (handler.requireCard()) { + if (waitForCard()) { + responseList.add(new ErrorResponse(6001)); + break; + } + } + try { + handler = handler.newInstance(); + handler.init(signatureCard, getGUI()); + responseList.add(handler.handleRequest(request)); + } catch (Exception e) { + log.info("Error while handling STAL request:" + e); + responseList.add(new ErrorResponse(6000)); + } + } else { + log.error("Cannot find a handler for STAL request: " + request); + responseList.add(new ErrorResponse()); + } + } + return responseList; + } + + public static void addRequestHandler(Class id, + SMCCSTALRequestHandler handler) { + log.debug("Registering STAL request handler: " + id.getSimpleName()); + handlerMap.put(id.getSimpleName(), handler); + } + + public static SMCCSTALRequestHandler getRequestHandler( + Class request) { + return handlerMap.get(request.getSimpleName()); + } + + @Override + public void setLocale(Locale locale) { + if (locale == null) { + throw new NullPointerException("Locale must not be set to null"); + } + this.locale = locale; + } +} diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SMCCSTALRequestHandler.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SMCCSTALRequestHandler.java index 7badb2a0..6f303f76 100644 --- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SMCCSTALRequestHandler.java +++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SMCCSTALRequestHandler.java @@ -14,23 +14,22 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package at.gv.egiz.bku.smccstal; - - -import at.gv.egiz.bku.gui.BKUGUIFacade; -import at.gv.egiz.smcc.PINProvider; -import at.gv.egiz.smcc.SignatureCard; -import at.gv.egiz.stal.STALRequest; -import at.gv.egiz.stal.STALResponse; - -public interface SMCCSTALRequestHandler { - - public void init(SignatureCard sc, BKUGUIFacade gui); - - public STALResponse handleRequest(STALRequest request); - - public boolean requireCard(); - - public SMCCSTALRequestHandler newInstance(); - -} +package at.gv.egiz.bku.smccstal; + + +import at.gv.egiz.bku.gui.BKUGUIFacade; +import at.gv.egiz.smcc.SignatureCard; +import at.gv.egiz.stal.STALRequest; +import at.gv.egiz.stal.STALResponse; + +public interface SMCCSTALRequestHandler { + + public void init(SignatureCard sc, BKUGUIFacade gui); + + public STALResponse handleRequest(STALRequest request); + + public boolean requireCard(); + + public SMCCSTALRequestHandler newInstance(); + +} diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SignRequestHandler.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SignRequestHandler.java index 6ae4fa01..2fe77c5d 100644 --- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SignRequestHandler.java +++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/SignRequestHandler.java @@ -1,151 +1,188 @@ /* -* 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 at.gv.egiz.bku.smccstal; - -import java.io.ByteArrayInputStream; -import java.io.InputStream; -import java.security.MessageDigest; -import java.security.NoSuchAlgorithmException; - -import javax.xml.bind.JAXBContext; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.JAXBException; -import javax.xml.bind.Unmarshaller; - -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; - -import at.gv.egiz.smcc.CancelledException; -import at.gv.egiz.smcc.PINProvider; -import at.gv.egiz.smcc.PINSpec; -import at.gv.egiz.smcc.SignatureCard; -import at.gv.egiz.smcc.SignatureCardException; -import at.gv.egiz.smcc.SignatureCard.KeyboxName; -import at.gv.egiz.stal.ErrorResponse; -import at.gv.egiz.stal.STALRequest; -import at.gv.egiz.stal.STALResponse; -import at.gv.egiz.stal.SignRequest; -import at.gv.egiz.stal.SignResponse; -import at.gv.egiz.stal.signedinfo.ObjectFactory; -import at.gv.egiz.stal.signedinfo.SignedInfoType; -import at.gv.egiz.stal.util.JCEAlgorithmNames; - -public class SignRequestHandler extends AbstractRequestHandler implements - PINProvider { - private static Log log = LogFactory.getLog(SignRequestHandler.class); - - private static JAXBContext jaxbContext; - - static { - try { - jaxbContext = JAXBContext.newInstance(ObjectFactory.class.getPackage() - .getName()); - } catch (JAXBException e) { - log.fatal("Cannot init jaxbContext", e); - } - } - - private int retryCounter = 0; - - public SignRequestHandler() { - } - - @SuppressWarnings("unchecked") - @Override - public STALResponse handleRequest(STALRequest request) { - if (request instanceof SignRequest) { - SignRequest signReq = (SignRequest) request; - newSTALMessage("Message.RequestCaption", "Message.SignRequest"); - try { - Unmarshaller unmarshaller = jaxbContext.createUnmarshaller(); - InputStream is = new ByteArrayInputStream(signReq.getSignedInfo()); - JAXBElement signedInfo = (JAXBElement) unmarshaller - .unmarshal(is); - String signatureMethod = signedInfo.getValue().getSignatureMethod() - .getAlgorithm(); - log.debug("Found signature method: " + signatureMethod); - String jceName = JCEAlgorithmNames.getJCEHashName(signatureMethod); - if (jceName == null) { - log.error("Hash algorithm not supported:"); - return new ErrorResponse(1000); - } - MessageDigest md = MessageDigest.getInstance(jceName); - md.update(signReq.getSignedInfo()); - KeyboxName kb = SignatureCard.KeyboxName.getKeyboxName(signReq - .getKeyIdentifier()); - byte[] resp = card.createSignature(md.digest(), kb, this); - if (resp == null) { - return new ErrorResponse(6001); - } - SignResponse stalResp = new SignResponse(); - stalResp.setSignatureValue(resp); - return stalResp; - } catch (CancelledException cx) { - log.debug("User cancelled request"); - return new ErrorResponse(6001); - } catch (SignatureCardException e) { - log.error("Error while creating signature: " + e); - return new ErrorResponse(4000); - } catch (JAXBException e) { - log.error("Cannot unmarshall signed info", e); - return new ErrorResponse(1000); - } catch (NoSuchAlgorithmException e) { - log.error(e); - return new ErrorResponse(1000); - } - } else { - log.fatal("Got unexpected STAL request: " + request); - return new ErrorResponse(1000); - } - } - - @Override - public boolean requireCard() { - return true; - } - - @Override - public String providePIN(PINSpec spec, int retries) { - if (retryCounter++ > 0) { - log.info("PIN wrong retrying ..."); - gui.showSignaturePINRetryDialog(spec, retries, this, "sign", this, - "cancel", this, "hashData"); - } else { - gui.showSignaturePINDialog(spec, this, "sign", this, "cancel", this, - "hashData"); - } - do { - waitForAction(); - if (actionCommand.equals("cancel")) { - return null; - } else if (actionCommand.equals("hashData")) { - // FIXME provide hashdata input - gui.showHashDataInputDialog(null, this, "ok"); - } else if (actionCommand.equals("sign")) { - return new String(gui.getPin()); - } else if (actionCommand.equals("ok")) { - gui.showSignaturePINDialog(spec, this, "sign", this, "cancel", this, - "hashData"); - } - } while (true); - } - - @Override - public SMCCSTALRequestHandler newInstance() { - return new SignRequestHandler(); - } -} + * 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 at.gv.egiz.bku.smccstal; + +import java.io.ByteArrayInputStream; +import java.io.InputStream; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; + +import java.util.logging.Level; +import java.util.logging.Logger; +import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBElement; +import javax.xml.bind.JAXBException; +import javax.xml.bind.Unmarshaller; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import at.gv.egiz.smcc.CancelledException; +import at.gv.egiz.smcc.PINProvider; +import at.gv.egiz.smcc.PINSpec; +import at.gv.egiz.smcc.SignatureCard; +import at.gv.egiz.smcc.SignatureCardException; +import at.gv.egiz.smcc.SignatureCard.KeyboxName; +import at.gv.egiz.stal.ErrorResponse; +import at.gv.egiz.stal.HashDataInput; +import at.gv.egiz.stal.STALRequest; +import at.gv.egiz.stal.STALResponse; +import at.gv.egiz.stal.SignRequest; +import at.gv.egiz.stal.SignResponse; +import at.gv.egiz.stal.signedinfo.ObjectFactory; +import at.gv.egiz.stal.signedinfo.ReferenceType; +import at.gv.egiz.stal.signedinfo.SignedInfoType; +import at.gv.egiz.stal.util.JCEAlgorithmNames; +import java.util.ArrayList; +import java.util.List; + +/** + * This class is NOT thread-safe. + * handleRequest() sets the SignedInfo which is used in providePIN. + */ +public class SignRequestHandler extends AbstractRequestHandler implements + PINProvider { + + private static Log log = LogFactory.getLog(SignRequestHandler.class); + private static JAXBContext jaxbContext; + + + static { + try { + jaxbContext = JAXBContext.newInstance(ObjectFactory.class.getPackage().getName()); + } catch (JAXBException e) { + log.fatal("Cannot init jaxbContext", e); + } + } + /** the SignedInfo of the current SignRequest */ + protected SignedInfoType signedInfo; + protected List hashDataInputs; + + private int retryCounter = 0; + + @SuppressWarnings("unchecked") + @Override + public STALResponse handleRequest(STALRequest request) { + if (request instanceof SignRequest) { + SignRequest signReq = (SignRequest) request; + newSTALMessage("Message.RequestCaption", "Message.SignRequest"); + try { + Unmarshaller unmarshaller = jaxbContext.createUnmarshaller(); + InputStream is = new ByteArrayInputStream(signReq.getSignedInfo()); + JAXBElement si = (JAXBElement) unmarshaller.unmarshal(is); + signedInfo = si.getValue(); + String signatureMethod = signedInfo.getSignatureMethod().getAlgorithm(); + log.debug("Found signature method: " + signatureMethod); + String jceName = JCEAlgorithmNames.getJCEHashName(signatureMethod); + if (jceName == null) { + log.error("Hash algorithm not supported:"); + return new ErrorResponse(1000); + } + MessageDigest md = MessageDigest.getInstance(jceName); + md.update(signReq.getSignedInfo()); + KeyboxName kb = SignatureCard.KeyboxName.getKeyboxName(signReq.getKeyIdentifier()); + byte[] resp = card.createSignature(md.digest(), kb, this); + if (resp == null) { + return new ErrorResponse(6001); + } + SignResponse stalResp = new SignResponse(); + stalResp.setSignatureValue(resp); + return stalResp; + } catch (CancelledException cx) { + log.debug("User cancelled request"); + return new ErrorResponse(6001); + } catch (SignatureCardException e) { + log.error("Error while creating signature: " + e); + return new ErrorResponse(4000); + } catch (JAXBException e) { + log.error("Cannot unmarshall signed info", e); + return new ErrorResponse(1000); + } catch (NoSuchAlgorithmException e) { + log.error(e); + return new ErrorResponse(1000); + } finally { + signedInfo = null; + } + } else { + log.fatal("Got unexpected STAL request: " + request); + return new ErrorResponse(1000); + } + } + + @Override + public boolean requireCard() { + return true; + } + + @Override + public String providePIN(PINSpec spec, int retries) { + if (retryCounter++ > 0) { + log.info("PIN wrong retrying ..."); + gui.showSignaturePINRetryDialog(spec, retries, this, "sign", this, + "cancel", this, "hashData"); + } else { + gui.showSignaturePINDialog(spec, this, "sign", this, "cancel", this, + "hashData"); + } + do { + waitForAction(); + if (actionCommand.equals("cancel")) { + return null; + } else if (actionCommand.equals("hashData")) { + if (signedInfo != null) { + try { + gui.showWaitDialog(null); + if (hashDataInputs == null) { + hashDataInputs = getHashDataInputs(signedInfo.getReference()); + } + gui.showHashDataInputDialog(hashDataInputs, this, "ok"); + waitForAction(); + gui.showSignaturePINDialog(spec, this, "sign", this, "cancel", this, + "hashData"); + } catch (Exception ex) { + //FIXME localize messages + log.error("Failed to obtain HashDataInputs: " + ex.getMessage()); + gui.showErrorDialog("Failed to obtain HashDataInputs: " + ex.getMessage(), this, "ok"); + } + } else { + //FIXME get all hashdatainputs + gui.showErrorDialog("Failed to obtain HashDataInputs: No dsig:SignedInfo provided.", this, "ok"); + } + } else if (actionCommand.equals("sign")) { + return new String(gui.getPin()); + } else if (actionCommand.equals("ok")) { + gui.showSignaturePINDialog(spec, this, "sign", this, "cancel", this, + "hashData"); + } + } while (true); + } + + @Override + public SMCCSTALRequestHandler newInstance() { + return new SignRequestHandler(); + } + + /** + * override by subclass + * @return + */ + protected List getHashDataInputs(List signedReferences) throws Exception { + //TODO + log.warn("Return empty HashDataInput"); + return new ArrayList(); + } +} -- cgit v1.2.3 From 0df8bb10302989f41ed420ec0ff29b2fc2005471 Mon Sep 17 00:00:00 2001 From: wbauer Date: Mon, 15 Sep 2008 14:18:53 +0000 Subject: Migrated BKULocal to BKUCommonGUI and minor bug fixes git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@37 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../at/gv/egiz/bku/online/applet/BKUWorker.java | 11 + BKULocal/pom.xml | 5 + .../at/gv/egiz/bku/local/stal/BKUGuiProxy.java | 130 ++++++++++ .../bku/local/stal/LocalSignRequestHandler.java | 84 +++++++ .../java/at/gv/egiz/bku/local/stal/PINDialog.java | 214 ----------------- .../gv/egiz/bku/local/stal/QuitRequestHandler.java | 41 ---- .../java/at/gv/egiz/bku/local/stal/SMCCSTAL.java | 100 ++------ .../at/gv/egiz/bku/local/stal/SMCCSTALFactory.java | 100 ++++++-- .../egiz/bku/local/stal/SwingInsertCardDialog.java | 147 ------------ .../gv/egiz/bku/local/stal/SwingPINProvider.java | 57 ----- .../at/gv/egiz/bku/local/stal/SwingPinDialog.java | 265 --------------------- .../gv/egiz/bku/online/webapp/ResultServlet.java | 1 + .../service/impl/RequestBrokerSTALFactory.java | 5 + .../java/at/gv/egiz/bku/slxhtml/ValidatorTest.java | 5 +- .../src/main/java/at/gv/egiz/stal/STALFactory.java | 6 +- .../bku/binding/BindingProcessorManagerImpl.java | 1 + .../gv/egiz/bku/binding/DataUrlConnectionImpl.java | 20 +- .../egiz/bku/slcommands/impl/xsect/Signature.java | 25 ++ .../at/gv/egiz/bku/binding/DummyStalFactory.java | 8 + 19 files changed, 382 insertions(+), 843 deletions(-) create mode 100644 BKULocal/src/main/java/at/gv/egiz/bku/local/stal/BKUGuiProxy.java create mode 100644 BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java delete mode 100644 BKULocal/src/main/java/at/gv/egiz/bku/local/stal/PINDialog.java delete mode 100644 BKULocal/src/main/java/at/gv/egiz/bku/local/stal/QuitRequestHandler.java delete mode 100644 BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingInsertCardDialog.java delete mode 100644 BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingPINProvider.java delete mode 100644 BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingPinDialog.java (limited to 'STAL') diff --git a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java index 51ac243c..cd96a481 100644 --- a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java +++ b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java @@ -75,6 +75,17 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable, addRequestHandler(QuitRequest.class, this); //register SignRequestHandler once we have a webservice port } + + /** + * Used for non applet variants + * @param gui + * @param errorMessageBundle + */ + protected BKUWorker(BKUGUIFacade gui, ResourceBundle errorMessageBundle) { + this.gui = gui; + this.errorMessages = errorMessageBundle; + addRequestHandler(QuitRequest.class, this); + } private STALPortType getSTALPort() throws MalformedURLException { URL wsdlURL = null; diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index 3f77752a..341e574a 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -74,6 +74,11 @@ org.springframework spring-tx 2.5.5 + + + at.gv.egiz + BKUApplet + 1.0-SNAPSHOT \ No newline at end of file diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/BKUGuiProxy.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/BKUGuiProxy.java new file mode 100644 index 00000000..0bed928d --- /dev/null +++ b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/BKUGuiProxy.java @@ -0,0 +1,130 @@ +package at.gv.egiz.bku.local.stal; + +import java.awt.Container; +import java.awt.event.ActionListener; +import java.util.List; + +import javax.swing.JDialog; + +import at.gv.egiz.bku.gui.BKUGUIFacade; +import at.gv.egiz.smcc.PINSpec; +import at.gv.egiz.stal.HashDataInput; + +public class BKUGuiProxy implements BKUGUIFacade { + + private BKUGUIFacade delegate; + private JDialog dialog; + + public BKUGuiProxy(JDialog dialog, BKUGUIFacade delegate) { + this.delegate = delegate; + this.dialog = dialog; + } + + private void showDialog() { + dialog.setVisible(true); + dialog.setAlwaysOnTop(true); + } + + @Override + public char[] getPin() { + return delegate.getPin(); + } + + @Override + public void init(Container contentPane, String localeString) { + delegate.init(contentPane, localeString); + } + + @Override + public void showCardNotSupportedDialog(ActionListener cancelListener, + String actionCommand) { + showDialog(); + delegate.showCardNotSupportedDialog(cancelListener, actionCommand); + } + + @Override + public void showCardPINDialog(PINSpec pinSpec, ActionListener okListener, + String okCommand, ActionListener cancelListener, String cancelCommand) { + showDialog(); + delegate.showCardPINDialog(pinSpec, okListener, okCommand, cancelListener, + cancelCommand); + } + + @Override + public void showCardPINRetryDialog(PINSpec pinSpec, int numRetries, + ActionListener okListener, String okCommand, + ActionListener cancelListener, String cancelCommand) { + showDialog(); + delegate.showCardPINRetryDialog(pinSpec, numRetries, okListener, okCommand, + cancelListener, cancelCommand); + } + + @Override + public void showErrorDialog(String errorMsg, ActionListener okListener, + String actionCommand) { + showDialog(); + delegate.showErrorDialog(errorMsg, okListener, actionCommand); + } + + @Override + public void showErrorDialog(String errorMsg) { + showDialog(); + delegate.showErrorDialog(errorMsg); + } + + @Override + public void showHashDataInputDialog(List signedReferences, + ActionListener okListener, String actionCommand) { + showDialog(); + delegate.showHashDataInputDialog(signedReferences, okListener, + actionCommand); + } + + @Override + public void showInsertCardDialog(ActionListener cancelListener, + String actionCommand) { + showDialog(); + delegate.showInsertCardDialog(cancelListener, actionCommand); + } + + @Override + public void showLoginDialog(ActionListener loginListener, String actionCommand) { + showDialog(); + + delegate.showLoginDialog(loginListener, actionCommand); + } + + @Override + public void showSignaturePINDialog(PINSpec pinSpec, + ActionListener signListener, String signCommand, + ActionListener cancelListener, String cancelCommand, + ActionListener hashdataListener, String hashdataCommand) { + showDialog(); + delegate.showSignaturePINDialog(pinSpec, signListener, signCommand, + cancelListener, cancelCommand, hashdataListener, hashdataCommand); + } + + @Override + public void showSignaturePINRetryDialog(PINSpec pinSpec, int numRetries, + ActionListener okListener, String okCommand, + ActionListener cancelListener, String cancelCommand, + ActionListener hashdataListener, String hashdataCommand) { + showDialog(); + delegate.showSignaturePINRetryDialog(pinSpec, numRetries, okListener, + okCommand, cancelListener, cancelCommand, hashdataListener, + hashdataCommand); + } + + @Override + public void showWaitDialog(String waitMessage) { + showDialog(); + delegate.showWaitDialog(waitMessage); + } + + @Override + public void showWelcomeDialog() { + showDialog(); + delegate.showWelcomeDialog(); + } + +} diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java new file mode 100644 index 00000000..f8546e49 --- /dev/null +++ b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/LocalSignRequestHandler.java @@ -0,0 +1,84 @@ +/* + * 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 at.gv.egiz.bku.local.stal; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import at.gv.egiz.bku.smccstal.SMCCSTALRequestHandler; +import at.gv.egiz.bku.smccstal.SignRequestHandler; +import at.gv.egiz.stal.HashDataInput; +import at.gv.egiz.stal.STALRequest; +import at.gv.egiz.stal.STALResponse; +import at.gv.egiz.stal.SignRequest; +import at.gv.egiz.stal.signedinfo.ReferenceType; + +/** + * + * @author clemens + */ +public class LocalSignRequestHandler extends SignRequestHandler { + + private static final Log log = LogFactory + .getLog(LocalSignRequestHandler.class); + private List hashDataInput = Collections.EMPTY_LIST; + + public LocalSignRequestHandler() { + } + + @SuppressWarnings("unchecked") + @Override + public STALResponse handleRequest(STALRequest request) { + if (request instanceof SignRequest) { + SignRequest signReq = (SignRequest) request; + hashDataInput = signReq.getHashDataInput(); + } + return super.handleRequest(request); + } + + @Override + protected List getHashDataInputs( + List dsigReferences) throws Exception { + ArrayList result = new ArrayList(); + for (ReferenceType dsigRef : dsigReferences) { + // don't get Manifest, QualifyingProperties, ... + if (dsigRef.getType() == null) { + String dsigRefId = dsigRef.getId(); + if (dsigRefId != null) { + for (HashDataInput hdi : hashDataInput) { + if (hdi.getReferenceId().equals(dsigRefId)) { + result.add(hdi); + } + } + } else { + throw new Exception( + "Cannot get HashDataInput for dsig:Reference without Id attribute"); + } + } + } + return result; + } + + @Override + public SMCCSTALRequestHandler newInstance() { + return new LocalSignRequestHandler(); + } +} diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/PINDialog.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/PINDialog.java deleted file mode 100644 index 5bc6bab5..00000000 --- a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/PINDialog.java +++ /dev/null @@ -1,214 +0,0 @@ -/* -* 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 at.gv.egiz.bku.local.stal; - -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import javax.swing.JButton; -import javax.swing.JPasswordField; -import javax.swing.text.AttributeSet; -import javax.swing.text.BadLocationException; -import javax.swing.text.PlainDocument; - -import at.gv.egiz.smcc.PINSpec; - -public class PINDialog extends javax.swing.JDialog implements ActionListener { - - // Variables declaration - do not modify - private javax.swing.JButton okButton; - private javax.swing.JButton cancelButton; - private javax.swing.JLabel label; - private javax.swing.JPasswordField password; - // End of variables declaration - - private PINSpec pinSpec; - private String pinString; - private boolean finished = false; - - class PinDocument extends PlainDocument { - private Pattern pattern; - - public PinDocument() { - pattern = Pattern.compile(pinSpec.getRexepPattern()); - } - - public void insertString(int offs, String str, AttributeSet a) - throws BadLocationException { - if (pinSpec.getMaxLength() >= (getLength() + str.length())) { - Matcher matcher = pattern.matcher(str); - if (matcher.matches()) { - super.insertString(offs, str, a); - } - } - okButton.setEnabled(getLength() >= pinSpec.getMinLength()); - } - - @Override - public void remove(int offs, int len) throws BadLocationException { - super.remove(offs, len); - okButton.setEnabled(getLength() >= pinSpec.getMinLength()); - } - } - - public PINDialog() { - } - - private synchronized void finished(boolean ok) { - if (ok) { - pinString = password.getText(); - } else { - pinString = null; - } - finished = true; - notifyAll(); - } - - public synchronized void waitFinished() { - while (!finished) { - try { - wait(); - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - } - - public String getPIN() { - return pinString; - } - - /** Creates new form NewJDialog */ - public PINDialog(java.awt.Frame parent, boolean modal, PINSpec pinSpec, - int retries) { - super(parent, modal); - this.pinSpec = pinSpec; - initComponents(); - } - - private void initComponents() { - okButton = new javax.swing.JButton(); - cancelButton = new javax.swing.JButton(); - password = new javax.swing.JPasswordField(); - label = new javax.swing.JLabel(); - setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); - - setTitle("PIN Dialog"); // NOI18N - setName("Form"); // NOI18N - - okButton.setText("OK"); // NOI18N - okButton.setName("okButton"); // NOI18N - okButton.setEnabled(false); - okButton.addActionListener(this); - - cancelButton.setText("Cancel"); // NOI18N - cancelButton.setName("cancelButton"); // NOI18N - cancelButton.addActionListener(this); - - password.setText(""); // NOI18N - password.setName("password"); // NOI18N - password.addActionListener(this); - password.setDocument(new PinDocument()); - - label.setText("PIN: "); // NOI18N - label.setName("jLabel1"); // NOI18N - - javax.swing.GroupLayout layout = new javax.swing.GroupLayout( - getContentPane()); - getContentPane().setLayout(layout); - layout.setHorizontalGroup(layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.LEADING).addGroup( - layout.createSequentialGroup().addContainerGap().addGroup( - layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.LEADING).addGroup( - layout.createSequentialGroup().addComponent(label, - javax.swing.GroupLayout.PREFERRED_SIZE, 61, - javax.swing.GroupLayout.PREFERRED_SIZE).addPreferredGap( - javax.swing.LayoutStyle.ComponentPlacement.RELATED, - javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(password, - javax.swing.GroupLayout.PREFERRED_SIZE, 127, - javax.swing.GroupLayout.PREFERRED_SIZE)).addGroup( - javax.swing.GroupLayout.Alignment.TRAILING, - layout.createSequentialGroup().addComponent(cancelButton) - .addPreferredGap( - javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(okButton))).addContainerGap())); - layout.setVerticalGroup(layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.LEADING).addGroup( - layout.createSequentialGroup().addContainerGap().addGroup( - layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.BASELINE).addComponent(label, - javax.swing.GroupLayout.PREFERRED_SIZE, 33, - javax.swing.GroupLayout.PREFERRED_SIZE).addComponent(password, - javax.swing.GroupLayout.PREFERRED_SIZE, - javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.PREFERRED_SIZE)).addPreferredGap( - javax.swing.LayoutStyle.ComponentPlacement.RELATED, 14, - Short.MAX_VALUE).addGroup( - layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.BASELINE).addComponent( - okButton).addComponent(cancelButton)).addContainerGap())); - - pack(); - } - - /** - * @param args - * the command line arguments - */ - public static void main(String args[]) { - java.awt.EventQueue.invokeLater(new Runnable() { - public void run() { - PINDialog dialog = new PINDialog(new javax.swing.JFrame(), true, - new PINSpec(1, 5, "[0-9]*", "Hansi"), 10); - dialog.setResizable(false); - dialog.addWindowListener(new java.awt.event.WindowAdapter() { - public void windowClosing(java.awt.event.WindowEvent e) { - System.exit(0); - } - }); - dialog.setVisible(true); - } - }); - } - - @Override - public void actionPerformed(ActionEvent e) { - if (e.getSource() instanceof JButton) { - JButton pressed = (JButton) e.getSource(); - if (pressed.getName().equals("okButton")) { - finished(true); - } else if (pressed.getName().equals("cancelButton")) { - finished(false); - } - } else if (e.getSource() instanceof JPasswordField) { - JPasswordField pwf = (JPasswordField) e.getSource(); - if (pwf.getName().equals("password")) { - if (password.getPassword().length >= pinSpec.getMinLength()) { - finished(true); - } - } - } - } - -} diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/QuitRequestHandler.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/QuitRequestHandler.java deleted file mode 100644 index 5596b7bb..00000000 --- a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/QuitRequestHandler.java +++ /dev/null @@ -1,41 +0,0 @@ -/* -* 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 at.gv.egiz.bku.local.stal; - -import at.gv.egiz.bku.smccstal.AbstractRequestHandler; -import at.gv.egiz.bku.smccstal.SMCCSTALRequestHandler; -import at.gv.egiz.stal.STALRequest; -import at.gv.egiz.stal.STALResponse; - -public class QuitRequestHandler extends AbstractRequestHandler { - - @Override - public STALResponse handleRequest(STALRequest request) { - return null; - } - - @Override - public boolean requireCard() { - return false; - } - - @Override - public SMCCSTALRequestHandler newInstance() { - return this; - } - -} diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTAL.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTAL.java index 26ec2aa8..6f9e72c5 100644 --- a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTAL.java +++ b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTAL.java @@ -1,95 +1,33 @@ -/* -* 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 at.gv.egiz.bku.local.stal; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.util.Locale; +import java.util.List; +import java.util.ResourceBundle; -import org.apache.commons.logging.Log; -import org.apache.commons.logging.LogFactory; +import javax.swing.JDialog; import at.gv.egiz.bku.gui.BKUGUIFacade; -import at.gv.egiz.bku.local.ui.TrayIconDialog; -import at.gv.egiz.bku.smccstal.AbstractRequestHandler; -import at.gv.egiz.bku.smccstal.AbstractSMCCSTAL; -import at.gv.egiz.bku.smccstal.STALMessageConsumer; -import at.gv.egiz.smcc.PINProvider; -import at.gv.egiz.smcc.util.SMCCHelper; -import at.gv.egiz.stal.QuitRequest; +import at.gv.egiz.bku.online.applet.BKUWorker; +import at.gv.egiz.stal.STALRequest; +import at.gv.egiz.stal.STALResponse; +import at.gv.egiz.stal.SignRequest; -public class SMCCSTAL extends AbstractSMCCSTAL implements STALMessageConsumer { - private static Log log = LogFactory.getLog(SMCCSTAL.class); +public class SMCCSTAL extends BKUWorker { - protected PINProvider pinProvider = new SwingPINProvider(); - protected SwingInsertCardDialog insertCard = new SwingInsertCardDialog(); - private boolean canceled = false; + private JDialog container; - static { - addRequestHandler(QuitRequest.class, new QuitRequestHandler()); - } - - public SMCCSTAL() { - AbstractRequestHandler.setMessageConsumer(this); - } - - /** - * - * @return if the user canceled - */ - protected boolean waitForCard() { - canceled = false; - while ((smccHelper.getResultCode() != SMCCHelper.CARD_FOUND) && (!canceled)) { - insertCard.setVisible(true); - insertCard.setAlwaysOnTop(true); - insertCard.addCanceledListener(new ActionListener() { - @Override - public void actionPerformed(ActionEvent e) { - canceled = true; - } - }); - try { - smccHelper.update(1000); - } catch (Exception ex) { - log.info(ex); - } - } - insertCard.setVisible(false); - signatureCard = smccHelper.getSignatureCard(locale); - return canceled; + public SMCCSTAL(BKUGUIFacade gui, JDialog container, + ResourceBundle errorMessageBundle) { + super(gui, errorMessageBundle); + this.container = container; + addRequestHandler(SignRequest.class, new LocalSignRequestHandler()); } @Override - public void setLocale(Locale locale) { - super.setLocale(locale); - if (pinProvider instanceof SwingPINProvider) { - ((SwingPINProvider) pinProvider).setLocale(locale); - } + public List handleRequest(List requestList) { + signatureCard = null; + List responses = super.handleRequest(requestList); + container.setVisible(false); + return responses; } - @Override - public void consumeNewSTALMessage(String captionId, String messageId) { - TrayIconDialog.getInstance().displayInfo(captionId, messageId); - } - - @Override - protected BKUGUIFacade getGUI() { - // TODO Auto-generated method stub - //FIXME - return null; - } } diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTALFactory.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTALFactory.java index 014d884a..97646d09 100644 --- a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTALFactory.java +++ b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SMCCSTALFactory.java @@ -1,27 +1,75 @@ /* -* 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 at.gv.egiz.bku.local.stal; - -import at.gv.egiz.stal.STAL; -import at.gv.egiz.stal.STALFactory; - -public class SMCCSTALFactory implements STALFactory { - @Override - public STAL createSTAL() { - return new SMCCSTAL(); - } -} + * 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 at.gv.egiz.bku.local.stal; + +import java.awt.Dimension; +import java.awt.Toolkit; +import java.util.Locale; +import java.util.ResourceBundle; + +import javax.swing.JDialog; +import javax.swing.WindowConstants; + +import at.gv.egiz.bku.gui.BKUGUIFacade; +import at.gv.egiz.bku.gui.BKUGUIFactory; +import at.gv.egiz.bku.online.applet.BKUApplet; +import at.gv.egiz.stal.STAL; +import at.gv.egiz.stal.STALFactory; + +public class SMCCSTALFactory implements STALFactory { + + private Locale locale; + private SMCCSTAL stal; + private JDialog dialog; + + @Override + public STAL createSTAL() { + if (stal == null) { + ResourceBundle resourceBundle; + if (locale != null) { + resourceBundle = ResourceBundle.getBundle( + BKUApplet.RESOURCE_BUNDLE_BASE, locale); + } else { + resourceBundle = ResourceBundle + .getBundle(BKUApplet.RESOURCE_BUNDLE_BASE); + } + dialog = new JDialog(); + BKUGUIFacade gui = BKUGUIFactory.createGUI(); + gui.init(dialog.getContentPane(), locale.toString()); + stal = new SMCCSTAL(new BKUGuiProxy(dialog, gui), dialog, resourceBundle); + dialog.setPreferredSize(new Dimension(400, 200)); + dialog.setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE); + Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); + Dimension frameSize = dialog.getSize(); + if (frameSize.height > screenSize.height) { + frameSize.height = screenSize.height; + } + if (frameSize.width > screenSize.width) { + frameSize.width = screenSize.width; + } + dialog.setLocation((screenSize.width - frameSize.width) / 2, + (screenSize.height - frameSize.height) / 2); + dialog.pack(); + } + return stal; + } + + @Override + public void setLocale(Locale locale) { + this.locale = locale; + } +} diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingInsertCardDialog.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingInsertCardDialog.java deleted file mode 100644 index eb76f2f2..00000000 --- a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingInsertCardDialog.java +++ /dev/null @@ -1,147 +0,0 @@ -/* -* 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 at.gv.egiz.bku.local.stal; - -import java.awt.Dimension; -import java.awt.Font; -import java.awt.Toolkit; -import java.awt.event.ActionListener; -import java.awt.event.WindowAdapter; -import java.awt.event.WindowEvent; -import java.awt.event.WindowListener; -import java.io.ByteArrayOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.util.Locale; -import java.util.ResourceBundle; - -import javax.swing.ImageIcon; -import javax.swing.JDialog; - -import at.gv.egiz.bku.utils.StreamUtil; - -public class SwingInsertCardDialog extends JDialog { - - private javax.swing.JButton cancelButton; - private javax.swing.JLabel jLabel1; - private javax.swing.JLabel jLabel2; - private Locale locale = Locale.getDefault(); - - public SwingInsertCardDialog() { - super((java.awt.Frame) null, false); - initComponents(); - } - - public void setLocale(Locale locale) { - this.locale = locale; - } - - private void initComponents() { - ResourceBundle rb = ResourceBundle.getBundle( - "at/gv/egiz/bku/local/Userdialog", locale); - setTitle(rb.getString("Insert.Header")); - jLabel1 = new javax.swing.JLabel(); - jLabel2 = new javax.swing.JLabel(); - cancelButton = new javax.swing.JButton(); - - setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE); - setName("Form"); // NOI18N - setUndecorated(true); - - jLabel1.setFont(new Font("Tahoma", Font.BOLD, 14)); - jLabel1.setText(rb.getString("Insert.Text")); // NOI18N - jLabel1.setName("text"); // NOI18N - - ByteArrayOutputStream os = new ByteArrayOutputStream(); - InputStream is = getClass().getClassLoader().getResourceAsStream( - "at/gv/egiz/bku/local/logo.png"); - try { - StreamUtil.copyStream(is, os); - jLabel2.setIcon(new ImageIcon(os.toByteArray())); // NOI18N - } catch (IOException e) { - jLabel2.setText("Chipperling image missing"); // NOI18N - } - jLabel2.setName("jLabel2"); // NOI18N - cancelButton.setText(rb.getString("Insert.Button.Cancel")); // NOI18N - cancelButton.setName("jButton1"); // NOI18N - - javax.swing.GroupLayout layout = new javax.swing.GroupLayout( - getContentPane()); - getContentPane().setLayout(layout); - layout.setHorizontalGroup(layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.LEADING).addGroup( - layout.createSequentialGroup().addContainerGap().addComponent(jLabel2) - .addGroup( - layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.TRAILING).addGroup( - layout.createSequentialGroup().addGap(35, 35, 35) - .addComponent(jLabel1, - javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.DEFAULT_SIZE, - Short.MAX_VALUE)).addGroup( - layout.createSequentialGroup().addPreferredGap( - javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(cancelButton))).addGap(29, 29, 29))); - layout.setVerticalGroup(layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.LEADING).addGroup( - javax.swing.GroupLayout.Alignment.TRAILING, - layout.createSequentialGroup().addContainerGap().addGroup( - layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.TRAILING).addComponent( - jLabel2).addGroup( - layout.createSequentialGroup().addComponent(jLabel1, - javax.swing.GroupLayout.DEFAULT_SIZE, 53, Short.MAX_VALUE) - .addGap(35, 35, 35).addComponent(cancelButton).addGap(9, 9, - 9))).addContainerGap())); - - Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); - Dimension frameSize = getSize(); - if (frameSize.height > screenSize.height) { - frameSize.height = screenSize.height; - } - if (frameSize.width > screenSize.width) { - frameSize.width = screenSize.width; - } - setLocation((screenSize.width - frameSize.width) / 2, - (screenSize.height - frameSize.height) / 2); - setUndecorated(false); - pack(); - } - - public void addCanceledListener(ActionListener al) { - cancelButton.addActionListener(al); - } - - /** - * @param args - * the command line arguments - */ - public static void main(String args[]) { - java.awt.EventQueue.invokeLater(new Runnable() { - public void run() { - SwingInsertCardDialog dialog = new SwingInsertCardDialog(); - dialog.addWindowListener(new java.awt.event.WindowAdapter() { - public void windowClosing(java.awt.event.WindowEvent e) { - System.exit(0); - } - }); - // - } - }); - } - -} diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingPINProvider.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingPINProvider.java deleted file mode 100644 index 7d36e68e..00000000 --- a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingPINProvider.java +++ /dev/null @@ -1,57 +0,0 @@ -/* -* 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 at.gv.egiz.bku.local.stal; - -import java.util.Locale; - -import at.gv.egiz.smcc.PINProvider; -import at.gv.egiz.smcc.PINSpec; - -public class SwingPINProvider implements PINProvider { - - private Locale locale = Locale.getDefault(); - SwingPinDialog dialog; - - public SwingPINProvider() { - this.locale = Locale.getDefault(); - - } - - public Locale getLocale() { - return locale; - } - - public void setLocale(Locale locale) { - this.locale = locale; - } - - @Override - public String providePIN(PINSpec pinSpec, int retries) { - dialog = new SwingPinDialog(null, false); - dialog.setResizable(false); - dialog.setRetries(retries); - dialog.setPinSpec(pinSpec); - dialog.initComponents(); - dialog.setVisible(true); - dialog.requestFocus(); - dialog.setAlwaysOnTop(true); - dialog.waitFinished(); - dialog.dispose(); - return dialog.getPIN(); - } - -} diff --git a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingPinDialog.java b/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingPinDialog.java deleted file mode 100644 index 3e91972c..00000000 --- a/BKULocal/src/main/java/at/gv/egiz/bku/local/stal/SwingPinDialog.java +++ /dev/null @@ -1,265 +0,0 @@ -/* -* 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 at.gv.egiz.bku.local.stal; - -import java.awt.Dimension; -import java.awt.Font; -import java.awt.Toolkit; -import java.awt.event.ActionEvent; -import java.awt.event.ActionListener; -import java.io.ByteArrayOutputStream; -import java.io.InputStream; -import java.text.MessageFormat; -import java.util.Locale; -import java.util.ResourceBundle; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import javax.swing.ImageIcon; -import javax.swing.JButton; -import javax.swing.JPasswordField; -import javax.swing.text.AttributeSet; -import javax.swing.text.BadLocationException; -import javax.swing.text.PlainDocument; - -import at.gv.egiz.bku.utils.StreamUtil; -import at.gv.egiz.smcc.PINSpec; - -public class SwingPinDialog extends javax.swing.JDialog implements - ActionListener { - - private javax.swing.JButton okButton; - private javax.swing.JButton cancelButton; - private javax.swing.JLabel jLabel1; - private javax.swing.JLabel jLabel2; - private javax.swing.JPasswordField password; - - private PINSpec pinSpec; - private String pinString; - private boolean finished = false; - private int retries = -1; - private Locale locale = Locale.getDefault(); - private boolean setUp = false; - - class PinDocument extends PlainDocument { - private Pattern pattern; - - public PinDocument() { - if ((pinSpec != null) && (pinSpec.getRexepPattern() != null)) { - pattern = Pattern.compile(pinSpec.getRexepPattern()); - } else { - pattern = Pattern.compile("."); - } - } - - public void insertString(int offs, String str, AttributeSet a) - throws BadLocationException { - if (pinSpec.getMaxLength() >= (getLength() + str.length())) { - Matcher matcher = pattern.matcher(str); - if (matcher.matches()) { - super.insertString(offs, str, a); - } - } - okButton.setEnabled(getLength() >= pinSpec.getMinLength()); - } - - @Override - public void remove(int offs, int len) throws BadLocationException { - super.remove(offs, len); - okButton.setEnabled(getLength() >= pinSpec.getMinLength()); - } - } - - /** - * Make sure to call initComponents - * - * @param parent - * @param modal - */ - public SwingPinDialog(java.awt.Frame parent, boolean modal) { - super(parent, modal); - } - - public void setLocale(Locale locale) { - this.locale = locale; - } - - public void setPinSpec(PINSpec pinSpec) { - this.pinSpec = pinSpec; - } - - public void setRetries(int retries) { - this.retries = retries; - } - - public void initComponents() { - ResourceBundle rb = ResourceBundle.getBundle( - "at/gv/egiz/bku/local/Userdialog", locale); - okButton = new javax.swing.JButton(); - cancelButton = new javax.swing.JButton(); - password = new javax.swing.JPasswordField(); - jLabel1 = new javax.swing.JLabel(); - jLabel2 = new javax.swing.JLabel(); - - setTitle(rb.getString("Pin.Header")); - setName("Form"); - setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE); - - okButton.setText(rb.getString("Pin.Button.OK")); - okButton.setName("okButton"); - okButton.setEnabled(false); - okButton.addActionListener(this); - - cancelButton.setText(rb.getString("Pin.Button.Cancel")); - cancelButton.setName("cancelButton"); - cancelButton.addActionListener(this); - - password.setText(""); - password.setDocument(new PinDocument()); - password.setName("password"); - password.addActionListener(this); - password.setDocument(new PinDocument()); - password.setRequestFocusEnabled(true); - password.requestFocus(); - - jLabel1.setFont(new Font("Tahoma", Font.BOLD, 14)); - String text = null; - Object[] args; - if (retries > 0) { - text = rb.getString("Pin.Text.Retries"); - args = new Object[2]; - args[0] = pinSpec.getLocalizedName(); - args[1] = new Integer(retries); - } else { - text = rb.getString("Pin.Text.NoRetries"); - args = new Object[1]; - args[0] = pinSpec.getLocalizedName(); - } - text = MessageFormat.format(text, args); - jLabel1.setText(text); // NOI18N - jLabel1.setName("jLabel1"); // NOI18N - - ByteArrayOutputStream os = new ByteArrayOutputStream(); - InputStream is = getClass().getClassLoader().getResourceAsStream( - "at/gv/egiz/bku/local/logo.png"); - try { - StreamUtil.copyStream(is, os); - jLabel2.setIcon(new ImageIcon(os.toByteArray())); // NOI18N - } catch (Exception e) { - jLabel2.setText("Chipperling image missing"); // NOI18N - } - jLabel2.setName("jLabel2"); // NOI18N - - javax.swing.GroupLayout layout = new javax.swing.GroupLayout( - getContentPane()); - getContentPane().setLayout(layout); - layout.setHorizontalGroup(layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.LEADING).addGroup( - layout.createSequentialGroup().addContainerGap().addComponent(jLabel2) - .addGap(73, 73, 73).addGroup( - layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.LEADING).addComponent( - jLabel1).addGroup( - layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.TRAILING, false) - .addComponent(password, - javax.swing.GroupLayout.Alignment.LEADING) - .addGroup( - javax.swing.GroupLayout.Alignment.LEADING, - layout.createSequentialGroup().addComponent( - cancelButton).addGap(18, 18, 18).addComponent( - okButton)))).addContainerGap(31, - Short.MAX_VALUE))); - layout.setVerticalGroup(layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.LEADING).addGroup( - layout.createSequentialGroup().addContainerGap().addGroup( - layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(jLabel2).addGroup( - layout.createSequentialGroup().addPreferredGap( - javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(jLabel1, - javax.swing.GroupLayout.PREFERRED_SIZE, 33, - javax.swing.GroupLayout.PREFERRED_SIZE).addGap(18, - 18, 18).addComponent(password, - javax.swing.GroupLayout.PREFERRED_SIZE, - javax.swing.GroupLayout.DEFAULT_SIZE, - javax.swing.GroupLayout.PREFERRED_SIZE).addGap(20, - 20, 20).addGroup( - layout.createParallelGroup( - javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(cancelButton).addComponent( - okButton)))).addGap(36, 36, 36))); - Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); - Dimension frameSize = getSize(); - if (frameSize.height > screenSize.height) { - frameSize.height = screenSize.height; - } - if (frameSize.width > screenSize.width) { - frameSize.width = screenSize.width; - } - setLocation((screenSize.width - frameSize.width) / 2, - (screenSize.height - frameSize.height) / 2); - setUndecorated(false); - pack(); - } - - public String getPIN() { - return pinString; - } - - private synchronized void finished(boolean ok) { - if (ok) { - pinString = password.getText(); - } else { - pinString = null; - } - finished = true; - notifyAll(); - } - - public synchronized void waitFinished() { - while (!finished) { - try { - wait(); - } catch (InterruptedException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - } - - @Override - public void actionPerformed(ActionEvent e) { - if (e.getSource() instanceof JButton) { - JButton pressed = (JButton) e.getSource(); - if (pressed.getName().equals("okButton")) { - finished(true); - } else if (pressed.getName().equals("cancelButton")) { - finished(false); - } - } else if (e.getSource() instanceof JPasswordField) { - JPasswordField pwf = (JPasswordField) e.getSource(); - if (pwf.getName().equals("password")) { - if (password.getPassword().length >= pinSpec.getMinLength()) { - finished(true); - } - } - } - } - -} diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/ResultServlet.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/ResultServlet.java index 28c714c1..b70a6274 100644 --- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/ResultServlet.java +++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/ResultServlet.java @@ -123,6 +123,7 @@ public class ResultServlet extends SpringBKUServlet { resp.setContentType(bp.getResultContentType()); resp.setCharacterEncoding(encoding); bp.writeResultTo(resp.getOutputStream(), encoding); + resp.getOutputStream().flush(); session.invalidate(); getBindingProcessorManager().removeBindingProcessor(bp.getId()); } diff --git a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/RequestBrokerSTALFactory.java b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/RequestBrokerSTALFactory.java index 38c568ab..8e61230c 100644 --- a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/RequestBrokerSTALFactory.java +++ b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/RequestBrokerSTALFactory.java @@ -21,6 +21,8 @@ package at.gv.egiz.stal.service.impl; +import java.util.Locale; + import at.gv.egiz.stal.STAL; import at.gv.egiz.stal.STALFactory; @@ -35,4 +37,7 @@ public class RequestBrokerSTALFactory implements STALFactory { return new STALRequestBrokerImpl(); } + @Override + public void setLocale(Locale locale) { + } } diff --git a/BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/ValidatorTest.java b/BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/ValidatorTest.java index 38c64262..4708d6e7 100644 --- a/BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/ValidatorTest.java +++ b/BKUViewer/src/test/java/at/gv/egiz/bku/slxhtml/ValidatorTest.java @@ -16,19 +16,20 @@ */ package at.gv.egiz.bku.slxhtml; -import static org.junit.Assert.*; +import static org.junit.Assert.assertNotNull; import java.io.InputStream; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.junit.Ignore; import org.junit.Test; import at.gv.egiz.bku.viewer.ValidationException; import at.gv.egiz.bku.viewer.Validator; import at.gv.egiz.bku.viewer.ValidatorFactory; - +@Ignore public class ValidatorTest { private static Log log = LogFactory.getLog(ValidatorTest.class); diff --git a/STAL/src/main/java/at/gv/egiz/stal/STALFactory.java b/STAL/src/main/java/at/gv/egiz/stal/STALFactory.java index e7b3edd1..f9cf00c6 100644 --- a/STAL/src/main/java/at/gv/egiz/stal/STALFactory.java +++ b/STAL/src/main/java/at/gv/egiz/stal/STALFactory.java @@ -15,8 +15,10 @@ * limitations under the License. */ package at.gv.egiz.stal; + +import java.util.Locale; public interface STALFactory { - - public STAL createSTAL(); + public STAL createSTAL(); + public void setLocale(Locale locale); } \ No newline at end of file diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/binding/BindingProcessorManagerImpl.java b/bkucommon/src/main/java/at/gv/egiz/bku/binding/BindingProcessorManagerImpl.java index 0082de26..22ee0d1d 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/binding/BindingProcessorManagerImpl.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/binding/BindingProcessorManagerImpl.java @@ -187,6 +187,7 @@ public class BindingProcessorManagerImpl implements BindingProcessorManager { } BindingProcessor bindingProcessor = new HTTPBindingProcessor(aSessionId, commandInvokerClass.newInstance(), url); + stalFactory.setLocale(locale); STAL stal = stalFactory.createSTAL(); bindingProcessor.init(stal, commandInvokerClass.newInstance()); if (locale != null) { diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/binding/DataUrlConnectionImpl.java b/bkucommon/src/main/java/at/gv/egiz/bku/binding/DataUrlConnectionImpl.java index bb0314b5..775f4136 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/binding/DataUrlConnectionImpl.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/binding/DataUrlConnectionImpl.java @@ -36,6 +36,8 @@ import javax.net.ssl.HttpsURLConnection; import org.apache.commons.httpclient.methods.multipart.FilePart; import org.apache.commons.httpclient.methods.multipart.Part; import org.apache.commons.httpclient.methods.multipart.StringPart; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; import at.gv.egiz.bku.binding.multipart.InputStreamPartSource; import at.gv.egiz.bku.binding.multipart.SLResultPart; @@ -49,6 +51,8 @@ import at.gv.egiz.bku.utils.binding.Protocol; * */ public class DataUrlConnectionImpl implements DataUrlConnectionSPI { + + private final static Log log = LogFactory.getLog(DataUrlConnectionImpl.class); public final static Protocol[] SUPPORTED_PROTOCOLS = { Protocol.HTTP, Protocol.HTTPS }; @@ -80,10 +84,6 @@ public class DataUrlConnectionImpl implements DataUrlConnectionSPI { */ public void connect() throws SocketTimeoutException, IOException { connection = (HttpURLConnection) url.openConnection(); - - // FIXXME move this to config. - HttpURLConnection.setFollowRedirects(false); - connection.setDoOutput(true); Set headers = requestHttpHeaders.keySet(); Iterator headerIt = headers.iterator(); @@ -146,10 +146,14 @@ public class DataUrlConnectionImpl implements DataUrlConnectionSPI { Part[] parts = new Part[formParams.size()]; Part.sendParts(os, formParams.toArray(parts), boundary.getBytes()); os.close(); - // MultipartRequestEntity PostMethod - result = new DataUrlResponse(url.toString(), connection.getResponseCode(), - connection.getInputStream()); - + // MultipartRequestEntity PostMethod + InputStream is = null; + try { + is = connection.getInputStream(); + } catch (IOException iox) { + log.info(iox); + } + result = new DataUrlResponse(url.toString(), connection.getResponseCode(), is); Map responseHttpHeaders = new HashMap(); Map> httpHeaders = connection.getHeaderFields(); for (Iterator keyIt = httpHeaders.keySet().iterator(); keyIt diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/xsect/Signature.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/xsect/Signature.java index 2330ed3f..8baa0137 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/xsect/Signature.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/xsect/Signature.java @@ -463,6 +463,31 @@ public class Signature { log.trace("Reference caching is not enabled."); } } + for (Reference reference : getReferences()) { + if (reference.getType() != null) { + InputStream digestInputStream = reference.getDigestInputStream(); + if (digestInputStream != null) { + StringBuilder sb = new StringBuilder(); + sb.append("DigestInput for Reference with id='"); + sb.append(reference.getId()); + sb.append("'; Type:"); + sb.append(reference.getType()); + sb.append("):\n"); + try { + byte[] b = new byte[512]; + for (int l; (l = digestInputStream.read(b)) != -1;) { + sb.append(new String(b, 0, l)); + } + } catch (IOException e) { + log.error(e); + } + log.trace(sb.toString()); + } else { + log.trace("Reference caching is not enabled."); + } + + } + } } } diff --git a/bkucommon/src/test/java/at/gv/egiz/bku/binding/DummyStalFactory.java b/bkucommon/src/test/java/at/gv/egiz/bku/binding/DummyStalFactory.java index 45dcdc3a..f832f364 100644 --- a/bkucommon/src/test/java/at/gv/egiz/bku/binding/DummyStalFactory.java +++ b/bkucommon/src/test/java/at/gv/egiz/bku/binding/DummyStalFactory.java @@ -16,6 +16,8 @@ */ package at.gv.egiz.bku.binding; +import java.util.Locale; + import at.gv.egiz.stal.STAL; import at.gv.egiz.stal.STALFactory; @@ -25,6 +27,12 @@ public class DummyStalFactory implements STALFactory { public STAL createSTAL() { // TODO Auto-generated method stub return new at.gv.egiz.stal.dummy.DummySTAL(); + } + + @Override + public void setLocale(Locale locale) { + // TODO Auto-generated method stub + } } -- cgit v1.2.3 From 6cafec9a3f05bb5e24c364e51a336326a63b8296 Mon Sep 17 00:00:00 2001 From: clemenso Date: Mon, 15 Sep 2008 18:05:47 +0000 Subject: encoding git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@43 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../main/java/at/gv/egiz/stal/HashDataInput.java | 2 ++ .../gv/egiz/stal/impl/ByteArrayHashDataInput.java | 13 +++++++++- .../stal/service/GetHashDataInputResponseType.java | 28 ++++++++++++++++++++++ 3 files changed, 42 insertions(+), 1 deletion(-) (limited to 'STAL') diff --git a/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java b/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java index 2d1e9ce6..1c648531 100644 --- a/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java +++ b/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java @@ -17,6 +17,8 @@ public interface HashDataInput { public String getMimeType(); + public String getEncoding(); + public InputStream getHashDataInput(); } diff --git a/STALService/src/main/java/at/gv/egiz/stal/impl/ByteArrayHashDataInput.java b/STALService/src/main/java/at/gv/egiz/stal/impl/ByteArrayHashDataInput.java index 1f6e7935..b0285345 100644 --- a/STALService/src/main/java/at/gv/egiz/stal/impl/ByteArrayHashDataInput.java +++ b/STALService/src/main/java/at/gv/egiz/stal/impl/ByteArrayHashDataInput.java @@ -18,14 +18,16 @@ public class ByteArrayHashDataInput implements HashDataInput { protected byte[] hashData; protected String id; protected String mimeType; + protected String encoding; - public ByteArrayHashDataInput(byte[] hashData, String id, String mimeType) { + public ByteArrayHashDataInput(byte[] hashData, String id, String mimeType, String encoding) { if (hashData == null) { throw new NullPointerException("HashDataInput not provided."); } this.hashData = hashData; this.id = id; this.mimeType = mimeType; + this.encoding = encoding; } @Override @@ -43,5 +45,14 @@ public class ByteArrayHashDataInput implements HashDataInput { return new ByteArrayInputStream(hashData); } + /** + * may be null + * @return + */ + @Override + public String getEncoding() { + return encoding; + } + } diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java index cf8545e9..f02d1ce6 100644 --- a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java +++ b/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java @@ -43,6 +43,7 @@ import javax.xml.bind.annotation.XmlValue; * <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary"> * <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" /> + * <attribute name="Encoding" type="{http://www.w3.org/2001/XMLSchema}string" /> * </extension> * </simpleContent> * </complexType> @@ -132,6 +133,7 @@ public class GetHashDataInputResponseType { * <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary"> * <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" /> + * <attribute name="Encoding" type="{http://www.w3.org/2001/XMLSchema}string" /> * </extension> * </simpleContent> * </complexType> @@ -151,6 +153,8 @@ public class GetHashDataInputResponseType { protected String id; @XmlAttribute(name = "MimeType") protected String mimeType; + @XmlAttribute(name = "Encoding") + protected String encoding; /** * Gets the value of the value property. @@ -222,6 +226,30 @@ public class GetHashDataInputResponseType { this.mimeType = value; } + /** + * Gets the value of the encoding property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getEncoding() { + return encoding; + } + + /** + * Sets the value of the encoding property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setEncoding(String value) { + this.encoding = value; + } + } } -- cgit v1.2.3 From d0879e9058943c6afa1912ccbeae936db2811f26 Mon Sep 17 00:00:00 2001 From: clemenso Date: Tue, 30 Sep 2008 13:54:54 +0000 Subject: backport to JAXWS2.0 STALService initial connect() git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@76 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../at/gv/egiz/bku/online/applet/BKUWorker.java | 189 ++++++------ .../bku/online/applet/WSSignRequestHandler.java | 4 +- .../at/gv/egiz/stal/client/STALServiceTest.java | 20 +- BKUOnline/pom.xml | 37 ++- .../src/main/custom-binding/stalservice-custom.xml | 14 + .../src/main/custom-binding/staltypes-custom.xml | 27 +- .../egiz/stal/service/impl/STALRequestBroker.java | 8 +- .../stal/service/impl/STALRequestBrokerImpl.java | 324 +++++++++++++++------ .../gv/egiz/stal/service/impl/STALServiceImpl.java | 186 ++++++++---- BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.wsdl | 15 + BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd | 227 ++++++++------- .../egiz/stal/service/STALRequestBrokerTest.java | 57 ++-- .../main/java/at/gv/egiz/stal/HashDataInput.java | 18 +- .../src/main/java/at/gv/egiz/stal/STALRequest.java | 13 +- .../main/java/at/gv/egiz/stal/STALResponse.java | 70 ++--- .../egiz/stal/service/GetHashDataInputFault.java | 22 +- .../stal/service/GetHashDataInputFaultType.java | 98 ------- .../stal/service/GetHashDataInputResponseType.java | 255 ---------------- .../gv/egiz/stal/service/GetHashDataInputType.java | 172 ----------- .../stal/service/GetNextRequestResponseType.java | 114 -------- .../gv/egiz/stal/service/GetNextRequestType.java | 114 -------- .../at/gv/egiz/stal/service/ObjectFactory.java | 212 -------------- .../java/at/gv/egiz/stal/service/STALPortType.java | 44 ++- .../java/at/gv/egiz/stal/service/STALService.java | 32 +- .../java/at/gv/egiz/stal/service/package-info.java | 18 -- .../egiz/stal/service/types/ErrorResponseType.java | 84 ++++++ .../service/types/GetHashDataInputFaultType.java | 82 ++++++ .../types/GetHashDataInputResponseType.java | 239 +++++++++++++++ .../stal/service/types/GetHashDataInputType.java | 156 ++++++++++ .../service/types/GetNextRequestResponseType.java | 106 +++++++ .../stal/service/types/GetNextRequestType.java | 106 +++++++ .../stal/service/types/InfoboxReadRequestType.java | 102 +++++++ .../service/types/InfoboxReadResponseType.java | 62 ++++ .../gv/egiz/stal/service/types/ObjectFactory.java | 199 +++++++++++++ .../egiz/stal/service/types/QuitRequestType.java | 32 ++ .../at/gv/egiz/stal/service/types/RequestType.java | 30 ++ .../gv/egiz/stal/service/types/ResponseType.java | 30 ++ .../egiz/stal/service/types/SignRequestType.java | 97 ++++++ .../egiz/stal/service/types/SignResponseType.java | 62 ++++ .../gv/egiz/stal/service/types/package-info.java | 2 + .../java/at/gv/egiz/stal/util/STALTranslator.java | 109 +++++++ pom.xml | 290 +++++++++--------- .../at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java | 7 +- 43 files changed, 2425 insertions(+), 1660 deletions(-) delete mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputFaultType.java delete mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java delete mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputType.java delete mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/GetNextRequestResponseType.java delete mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/GetNextRequestType.java delete mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/ObjectFactory.java delete mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/package-info.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/ErrorResponseType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputFaultType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputResponseType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/GetNextRequestResponseType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/GetNextRequestType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/InfoboxReadRequestType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/InfoboxReadResponseType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/ObjectFactory.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/QuitRequestType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/RequestType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/ResponseType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/SignRequestType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/SignResponseType.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/service/types/package-info.java create mode 100644 STALService/src/main/java/at/gv/egiz/stal/util/STALTranslator.java (limited to 'STAL') diff --git a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java index 35fe652f..a87b04c4 100644 --- a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java +++ b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/BKUWorker.java @@ -34,23 +34,23 @@ import at.gv.egiz.bku.smccstal.AbstractSMCCSTAL; import at.gv.egiz.bku.smccstal.SMCCSTALRequestHandler; import at.gv.egiz.smcc.SignatureCard; import at.gv.egiz.smcc.util.SMCCHelper; -import at.gv.egiz.stal.ErrorResponse; -import at.gv.egiz.stal.InfoboxReadRequest; import at.gv.egiz.stal.QuitRequest; import at.gv.egiz.stal.STALRequest; import at.gv.egiz.stal.STALResponse; -import at.gv.egiz.stal.SignRequest; -import at.gv.egiz.stal.service.GetNextRequestResponseType; -import at.gv.egiz.stal.service.GetNextRequestType; -import at.gv.egiz.stal.service.ObjectFactory; +import at.gv.egiz.stal.service.types.GetNextRequestResponseType; +import at.gv.egiz.stal.service.types.GetNextRequestType; +import at.gv.egiz.stal.service.types.ObjectFactory; import at.gv.egiz.stal.service.STALPortType; import at.gv.egiz.stal.service.STALService; +import at.gv.egiz.stal.service.types.ErrorResponseType; +import at.gv.egiz.stal.service.types.RequestType; +import at.gv.egiz.stal.service.types.ResponseType; +import at.gv.egiz.stal.util.STALTranslator; public class BKUWorker extends AbstractSMCCSTAL implements Runnable, - ActionListener, SMCCSTALRequestHandler { + ActionListener, SMCCSTALRequestHandler { private static Log log = LogFactory.getLog(BKUWorker.class); - protected BKUGUIFacade gui; protected BKUApplet parent; private STALPortType stalPort; @@ -65,7 +65,7 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable, * must not be null */ public BKUWorker(BKUGUIFacade gui, BKUApplet parent, - ResourceBundle errorMessageBundle) { + ResourceBundle errorMessageBundle) { if ((gui == null) || (parent == null) || (errorMessageBundle == null)) { throw new NullPointerException("Parameter must not be set to null"); } @@ -73,7 +73,7 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable, this.parent = parent; this.errorMessages = errorMessageBundle; addRequestHandler(QuitRequest.class, this); - // register SignRequestHandler once we have a webservice port + // register SignRequestHandler once we have a webservice port } /** @@ -111,7 +111,7 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable, } log.debug("Found WSDL url: " + wsdlURL); QName endpointName = new QName("http://www.egiz.gv.at/wsdl/stal", - "STALService"); + "STALService"); STALService stal = new STALService(wsdlURL, endpointName); return stal.getSTALPort(); } @@ -135,49 +135,75 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable, return; } try { - ObjectFactory factory = new ObjectFactory(); - GetNextRequestType nextRequest = factory.createGetNextRequestType(); - String sessionId = parent.getMyAppletParameter(BKUApplet.SESSION_ID); if (sessionId == null) { // use the testsession for testing sessionId = "TestSession"; } - nextRequest.setSessionId(sessionId); - addRequestHandler(SignRequest.class, new WSSignRequestHandler(sessionId, - stalPort)); + addRequestHandler(at.gv.egiz.stal.SignRequest.class, new WSSignRequestHandler(sessionId, stalPort)); + + ObjectFactory of = new ObjectFactory(); + GetNextRequestResponseType nextRequestResp = stalPort.connect(sessionId); do { - GetNextRequestResponseType resp = stalPort.getNextRequest(nextRequest); - log.info("Got " + resp.getRequest().size() + " requests from server."); - List stalRequests = resp.getRequest(); + List requests = nextRequestResp.getInfoboxReadRequestOrSignRequestOrQuitRequest(); + List stalRequests = STALTranslator.translateRequests(requests); + + if (log.isInfoEnabled()) { + StringBuilder sb = new StringBuilder("Received "); + sb.append(stalRequests.size()); + sb.append(" STAL requests: "); + for (STALRequest r : stalRequests) { + sb.append(r.getClass()); + sb.append(' '); + } + log.info(sb.toString()); + } + boolean handle = true; for (STALRequest request : stalRequests) { - if (request instanceof InfoboxReadRequest) { - InfoboxReadRequest infobx = (InfoboxReadRequest) request; - if (infobx.getInfoboxIdentifier().equals("IdentityLink")) { - if (infobx.getDomainIdentifier() == null) { - if (!InternalSSLSocketFactory.getInstance().isEgovAgency()) { - handle = false; - } + if (request instanceof at.gv.egiz.stal.InfoboxReadRequest) { + at.gv.egiz.stal.InfoboxReadRequest r = (at.gv.egiz.stal.InfoboxReadRequest) request; + String infoboxId = r.getInfoboxIdentifier(); + String domainId = r.getDomainIdentifier(); + if ("IdentityLink".equals(infoboxId) && domainId == null) { + if (!InternalSSLSocketFactory.getInstance().isEgovAgency()) { + handle = false; } } } } - List responses; + + List responses; if (handle) { - responses = handleRequest(stalRequests); + List stalResponses = handleRequest(stalRequests); + if (log.isInfoEnabled()) { + StringBuilder sb = new StringBuilder(stalResponses.size()); + sb.append(" STAL responses: "); + for (STALResponse r : stalResponses) { + sb.append(r.getClass()); + sb.append(' '); + } + log.info(sb.toString()); + } + responses = STALTranslator.fromSTAL(stalResponses); } else { - responses = new ArrayList(1); - responses.add(new ErrorResponse(6002)); + responses = new ArrayList(1); + ErrorResponseType err = new ErrorResponseType(); + err.setErrorCode(6002); +// err.setErrorMessage(); + responses.add(err); + } + + if (!finished) { + GetNextRequestType nextRequest = of.createGetNextRequestType(); + nextRequest.setSessionId(sessionId); + nextRequest.getInfoboxReadResponseOrSignResponseOrErrorResponse().addAll(responses); + nextRequestResp = stalPort.getNextRequest(nextRequest); } - log.info("Got " + responses.size() + " responses."); - nextRequest = factory.createGetNextRequestType(); - nextRequest.setSessionId(sessionId); - nextRequest.getResponse().addAll(responses); } while (!finished); log.info("Done " + Thread.currentThread().getName()); - // gui.showWelcomeDialog(); } catch (Exception ex) { + log.error(ex.getMessage(), ex); gui.showErrorDialog("Sorry, an internal error occured: " + ex.getMessage()); try { waitForAction(); @@ -196,20 +222,17 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable, URL url = null; if (redirectURL != null) { try { - url = new URL(parent.getCodeBase(), redirectURL + ";jsessionid=" - + parent.getMyAppletParameter(BKUApplet.SESSION_ID)); + url = new URL(parent.getCodeBase(), redirectURL + ";jsessionid=" + parent.getMyAppletParameter(BKUApplet.SESSION_ID)); } catch (MalformedURLException ex) { - log.warn("Parameter 'redirectURL': " + redirectURL - + " not a valid URL.", ex); - // gui.showErrorDialog(errorMsg, okListener, actionCommand) + log.warn("Parameter 'redirectURL': " + redirectURL + " not a valid URL.", ex); + // gui.showErrorDialog(errorMsg, okListener, actionCommand) } if (url != null) { if (redirectTarget == null) { log.info("Done. Trying to redirect to " + url + " ..."); parent.getAppletContext().showDocument(url); } else { - log.info("Done. Trying to redirect to " + url + " (target=" - + redirectTarget + ") ..."); + log.info("Done. Trying to redirect to " + url + " (target=" + redirectTarget + ") ..."); parent.getAppletContext().showDocument(url, redirectTarget); } } @@ -253,48 +276,48 @@ public class BKUWorker extends AbstractSMCCSTAL implements Runnable, int oldValue = SMCCHelper.PC_SC_NOT_SUPPORTED; // this is a save default while ((signatureCard == null) && (!actionPerformed)) { switch (smccHelper.getResultCode()) { - case SMCCHelper.PC_SC_NOT_SUPPORTED: - actionCommandList.clear(); - actionCommandList.add("ok"); - gui.showErrorDialog(errorMessages.getString("nopcscsupport"), this, - "ok"); - try { - waitForAction(); - } catch (InterruptedException e) { - log.error(e); - } - return true; - case SMCCHelper.TERMINAL_NOT_PRESENT: - actionCommandList.clear(); - actionCommandList.add("ok"); - gui.showErrorDialog(errorMessages.getString("nocardterminal"), this, - "ok"); - try { - waitForAction(); - } catch (InterruptedException e) { - log.error(e); - } - return true; - case SMCCHelper.CARD_NOT_SUPPORTED: - if (oldValue != SMCCHelper.CARD_NOT_SUPPORTED) { + case SMCCHelper.PC_SC_NOT_SUPPORTED: actionCommandList.clear(); - actionCommandList.add("cancel"); - gui.showCardNotSupportedDialog(this, "cancel"); - oldValue = SMCCHelper.CARD_NOT_SUPPORTED; - } - break; - case SMCCHelper.NO_CARD: - if (oldValue != SMCCHelper.NO_CARD) { + actionCommandList.add("ok"); + gui.showErrorDialog(errorMessages.getString("nopcscsupport"), this, + "ok"); + try { + waitForAction(); + } catch (InterruptedException e) { + log.error(e); + } + return true; + case SMCCHelper.TERMINAL_NOT_PRESENT: actionCommandList.clear(); - actionCommandList.add("cancel"); - gui.showInsertCardDialog(this, "cancel"); - oldValue = SMCCHelper.NO_CARD; - } - break; - case SMCCHelper.CARD_FOUND: - // gui.showWaitDialog(null); - signatureCard = smccHelper.getSignatureCard(errorMessages.getLocale()); - return false; + actionCommandList.add("ok"); + gui.showErrorDialog(errorMessages.getString("nocardterminal"), this, + "ok"); + try { + waitForAction(); + } catch (InterruptedException e) { + log.error(e); + } + return true; + case SMCCHelper.CARD_NOT_SUPPORTED: + if (oldValue != SMCCHelper.CARD_NOT_SUPPORTED) { + actionCommandList.clear(); + actionCommandList.add("cancel"); + gui.showCardNotSupportedDialog(this, "cancel"); + oldValue = SMCCHelper.CARD_NOT_SUPPORTED; + } + break; + case SMCCHelper.NO_CARD: + if (oldValue != SMCCHelper.NO_CARD) { + actionCommandList.clear(); + actionCommandList.add("cancel"); + gui.showInsertCardDialog(this, "cancel"); + oldValue = SMCCHelper.NO_CARD; + } + break; + case SMCCHelper.CARD_FOUND: + // gui.showWaitDialog(null); + signatureCard = smccHelper.getSignatureCard(errorMessages.getLocale()); + return false; } smccHelper.update(3000); } diff --git a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/WSSignRequestHandler.java b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/WSSignRequestHandler.java index 6dae264c..5f422164 100644 --- a/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/WSSignRequestHandler.java +++ b/BKUApplet/src/main/java/at/gv/egiz/bku/online/applet/WSSignRequestHandler.java @@ -20,9 +20,9 @@ import at.gv.egiz.bku.smccstal.SMCCSTALRequestHandler; import at.gv.egiz.bku.smccstal.SignRequestHandler; import at.gv.egiz.stal.HashDataInput; import at.gv.egiz.stal.impl.ByteArrayHashDataInput; -import at.gv.egiz.stal.service.GetHashDataInputResponseType; -import at.gv.egiz.stal.service.GetHashDataInputType; import at.gv.egiz.stal.service.STALPortType; +import at.gv.egiz.stal.service.types.GetHashDataInputResponseType; +import at.gv.egiz.stal.service.types.GetHashDataInputType; import at.gv.egiz.stal.signedinfo.DigestMethodType; import at.gv.egiz.stal.signedinfo.ReferenceType; import java.security.DigestException; diff --git a/BKUApplet/src/test/java/at/gv/egiz/stal/client/STALServiceTest.java b/BKUApplet/src/test/java/at/gv/egiz/stal/client/STALServiceTest.java index 9b58798d..63da8225 100644 --- a/BKUApplet/src/test/java/at/gv/egiz/stal/client/STALServiceTest.java +++ b/BKUApplet/src/test/java/at/gv/egiz/stal/client/STALServiceTest.java @@ -33,12 +33,14 @@ import org.junit.Test; import at.gv.egiz.stal.InfoboxReadRequest; import at.gv.egiz.stal.STALRequest; import at.gv.egiz.stal.service.GetHashDataInputFault; -import at.gv.egiz.stal.service.GetHashDataInputResponseType; -import at.gv.egiz.stal.service.GetHashDataInputType; -import at.gv.egiz.stal.service.GetNextRequestResponseType; -import at.gv.egiz.stal.service.GetNextRequestType; import at.gv.egiz.stal.service.STALPortType; import at.gv.egiz.stal.service.STALService; +import at.gv.egiz.stal.service.types.GetHashDataInputResponseType; +import at.gv.egiz.stal.service.types.GetHashDataInputType; +import at.gv.egiz.stal.service.types.GetNextRequestResponseType; +import at.gv.egiz.stal.service.types.GetNextRequestType; +import at.gv.egiz.stal.service.types.InfoboxReadRequestType; +import at.gv.egiz.stal.service.types.RequestType; /** * @@ -60,11 +62,11 @@ public class STALServiceTest { // req.getResponse().add(new ErrorResponse(1234)); GetNextRequestResponseType nrResp = port.getNextRequest(nrReq); assertNotNull(nrResp); - System.out.println("got response: " + nrResp.getRequest().size()); - for (STALRequest stalReq : nrResp.getRequest()) { - if (stalReq instanceof InfoboxReadRequest) { - String ibid = ((InfoboxReadRequest) stalReq).getInfoboxIdentifier(); - String did = ((InfoboxReadRequest) stalReq).getDomainIdentifier(); + System.out.println("got response: " + nrResp.getInfoboxReadRequestOrSignRequestOrQuitRequest().size()); + for (RequestType stalReq : nrResp.getInfoboxReadRequestOrSignRequestOrQuitRequest()) { + if (stalReq instanceof InfoboxReadRequestType) { + String ibid = ((InfoboxReadRequestType) stalReq).getInfoboxIdentifier(); + String did = ((InfoboxReadRequestType) stalReq).getDomainIdentifier(); System.out.println(" received InfoboxReadRequest for " + ibid + ", " + did); } else { System.out.println(" received STAL request " + stalReq.getClass().getName()); diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index e699d16b..5cdf5356 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -72,6 +72,7 @@ com.sun.xml.ws jaxws-rt 2.1.4 + - maven-war-plugin diff --git a/BKUOnline/src/main/custom-binding/stalservice-custom.xml b/BKUOnline/src/main/custom-binding/stalservice-custom.xml index 384b04f7..9c35cbdf 100644 --- a/BKUOnline/src/main/custom-binding/stalservice-custom.xml +++ b/BKUOnline/src/main/custom-binding/stalservice-custom.xml @@ -42,6 +42,20 @@ + + + + Initial connection, get the first request. + + + + + + + true + false + + diff --git a/BKUOnline/src/main/custom-binding/staltypes-custom.xml b/BKUOnline/src/main/custom-binding/staltypes-custom.xml index 2ea42082..3e150363 100644 --- a/BKUOnline/src/main/custom-binding/staltypes-custom.xml +++ b/BKUOnline/src/main/custom-binding/staltypes-custom.xml @@ -35,36 +35,13 @@ - + - + - - - - - - - - - - - - diff --git a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBroker.java b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBroker.java index 560282ac..af886eec 100644 --- a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBroker.java +++ b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBroker.java @@ -22,8 +22,8 @@ package at.gv.egiz.stal.service.impl; import at.gv.egiz.stal.HashDataInput; import at.gv.egiz.stal.STAL; -import at.gv.egiz.stal.STALRequest; -import at.gv.egiz.stal.STALResponse; +import at.gv.egiz.stal.service.types.RequestType; +import at.gv.egiz.stal.service.types.ResponseType; import java.util.List; /** @@ -35,7 +35,9 @@ public interface STALRequestBroker extends STAL { public static final int ERR_6000 = 6000; public static final long DEFAULT_TIMEOUT_MS = 1000*60*5; //5mn - public List nextRequest(List response); + public List connect(); + + public List nextRequest(List response); public List getHashDataInput(); } diff --git a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java index dc3cc6d3..bfa83dd4 100644 --- a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java +++ b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java @@ -22,10 +22,17 @@ package at.gv.egiz.stal.service.impl; import at.gv.egiz.stal.ErrorResponse; import at.gv.egiz.stal.HashDataInput; +import at.gv.egiz.stal.InfoboxReadRequest; import at.gv.egiz.stal.QuitRequest; import at.gv.egiz.stal.STALRequest; import at.gv.egiz.stal.STALResponse; import at.gv.egiz.stal.SignRequest; +import at.gv.egiz.stal.service.types.InfoboxReadRequestType; +import at.gv.egiz.stal.service.types.QuitRequestType; +import at.gv.egiz.stal.service.types.RequestType; +import at.gv.egiz.stal.service.types.ResponseType; +import at.gv.egiz.stal.service.types.SignRequestType; +import at.gv.egiz.stal.util.STALTranslator; import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -48,18 +55,26 @@ public class STALRequestBrokerImpl implements STALRequestBroker { private static final Log log = LogFactory.getLog(STALRequestBrokerImpl.class); - private boolean expectingResponse = false; +// private boolean expectingResponse = false; private boolean interrupted = false; - private final RequestsMonitor reqMon = new RequestsMonitor(); - private final ResponsesMonitor respMon = new ResponsesMonitor(); +// private final RequestsMonitor reqMon = new RequestsMonitor(); +// private final ResponsesMonitor respMon = new ResponsesMonitor(); + + protected ArrayList requests; + protected ArrayList responses; + + protected ArrayList hashDataInputs; private long timeout; public STALRequestBrokerImpl(long timeoutMillisec) { if (timeoutMillisec <= 0) timeoutMillisec = DEFAULT_TIMEOUT_MS; - this.timeout = timeoutMillisec; + timeout = timeoutMillisec; + requests = new ArrayList(); + responses = new ArrayList(); + hashDataInputs = new ArrayList(); } /** @@ -73,52 +88,80 @@ public class STALRequestBrokerImpl implements STALRequestBroker { * @pre requests: either single SignRequest, QuitRequest or multiple ReadInfoboxRequests */ @Override - public List handleRequest(List requests) { + public List handleRequest(List stalRequests) { if (interrupted) { return null; } try { - synchronized (reqMon) { + synchronized (requests) { log.trace("produce request"); - reqMon.produce(requests); - reqMon.setHashDataInput(null); - for (STALRequest request : requests) { - if (request instanceof SignRequest) { - log.trace("Received SignRequest, keep HashDataInput."); - reqMon.setHashDataInput(((SignRequest) request).getHashDataInput()); - break; - } else if (request instanceof QuitRequest) { - log.trace("Received QuitRequest, do not wait for responses."); - log.trace("notifying request consumers"); - reqMon.notify(); - return new ArrayList(); - } else if (log.isTraceEnabled()) { - log.trace("Received STAL request: " + request.getClass().getName()); + requests.clear(); + hashDataInputs.clear(); +// reqMon.produce(requests); +// reqMon.setHashDataInput(null); + + for (STALRequest stalRequest : stalRequests) { + if (stalRequest instanceof SignRequest) { + log.trace("Received SignRequest, keep HashDataInput."); + SignRequestType req = new SignRequestType(); + req.setKeyIdentifier(((SignRequest) stalRequest).getKeyIdentifier()); + req.setSignedInfo(((SignRequest) stalRequest).getSignedInfo()); + requests.add(req); + hashDataInputs.addAll(((SignRequest) stalRequest).getHashDataInput()); + break; + } else if (stalRequest instanceof InfoboxReadRequest) { + log.trace("Received InfoboxReadRequest"); + InfoboxReadRequestType req = new InfoboxReadRequestType(); + req.setInfoboxIdentifier(((InfoboxReadRequest) stalRequest).getInfoboxIdentifier()); + req.setDomainIdentifier(((InfoboxReadRequest) stalRequest).getDomainIdentifier()); + requests.add(req); + } else if (stalRequest instanceof QuitRequest) { + log.trace("Received QuitRequest, do not wait for responses."); + requests.add(new QuitRequestType()); + log.trace("notifying request consumers"); + requests.notify(); +// reqMon.notify(); + return new ArrayList(); + } else { + log.error("Received unsupported STAL request: " + stalRequest.getClass().getName() + ", send QUIT"); + requests.clear(); + requests.add(new QuitRequestType()); + log.trace("notifying request consumers"); + requests.notify(); + return new ArrayList(); } } log.trace("notifying request consumers"); - reqMon.notify(); + requests.notify(); +// reqMon.notify(); } - synchronized (respMon) { + synchronized (responses) { //respMon) { long beforeWait = System.currentTimeMillis(); - while (respMon.responses == null) { +// while (respMon.responses == null) { + while (responses.isEmpty()) { log.trace("waiting to consume response"); - respMon.wait(timeout); +// respMon.wait(timeout); + responses.wait(timeout); if (System.currentTimeMillis() - beforeWait >= timeout) { log.warn("timeout while waiting to consume response, cleanup requests"); - reqMon.consume(); //TODO check deadlock? - reqMon.setHashDataInput(null); +// reqMon.consume(); //TODO check deadlock? +// reqMon.setHashDataInput(null); + requests.clear(); //TODO sync on requests? + hashDataInputs.clear(); return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000)); } } log.trace("consuming responses"); - List responses = respMon.consume(); +// List responses = respMon.consume(); + List resps = STALTranslator.toSTAL(responses); + responses.clear(); log.trace("notifying response producers"); - respMon.notify(); + responses.notify(); +// respMon.notify(); - return responses; + return resps; } } catch (InterruptedException ex) { log.warn("interrupt in handleRequest(): " + ex.getMessage()); @@ -127,6 +170,36 @@ public class STALRequestBrokerImpl implements STALRequestBroker { } } + @Override + public List connect() { + if (interrupted) { + return null; + } + try { + synchronized (requests) { + long beforeWait = System.currentTimeMillis(); + while (requests.isEmpty()) { + log.trace("waiting to consume request"); + requests.wait(timeout); + if (System.currentTimeMillis() - beforeWait >= timeout) { + log.warn("timeout while waiting to consume request"); + return Collections.singletonList((RequestType) new QuitRequestType()); + } + } + log.trace("consume request"); + List reqs = new ArrayList(); + reqs.addAll(requests); + + requests.clear(); + return reqs; + } + } catch (InterruptedException ex) { + log.warn("interrupt in nextRequest(): " + ex.getMessage()); + interrupted = true; + return null; + } + } + /** * This method is thread-safe, except for * an 'initial' call to nextRequest(null) followed by a @@ -139,63 +212,74 @@ public class STALRequestBrokerImpl implements STALRequestBroker { * @return QUIT if expected responses are not provided */ @Override - public List nextRequest(List responses) { + public List nextRequest(List resps) { if (interrupted) { return null; } try { - synchronized (respMon) { - if (responses != null && responses.size() > 0) { - if (!expectingResponse) { - log.warn("Received unexpected response in nextRequest(), return QUIT"); - return Collections.singletonList((STALRequest) new QuitRequest()); - } + synchronized (responses) { //respMon) { + if (resps != null && resps.size() > 0) { +// if (!expectingResponse) { +// log.warn("Received unexpected response in nextRequest(), return QUIT"); +// return Collections.singletonList((RequestType) new QuitRequestType()); +// } long beforeWait = System.currentTimeMillis(); - while (respMon.responses != null) { +// while (respMon.responses != null) { + while (!responses.isEmpty()) { log.trace("waiting to produce response"); - respMon.wait(timeout); +// respMon.wait(timeout); + responses.wait(timeout); if (System.currentTimeMillis() - beforeWait >= timeout) { log.warn("timeout while waiting to produce response"); - return Collections.singletonList((STALRequest) new QuitRequest()); + return Collections.singletonList((RequestType) new QuitRequestType()); } } log.trace("produce response"); - respMon.produce(responses); +// respMon.produce(resps); + responses.addAll(resps); //reset HashDataInputCallback iff SignResponse if (log.isTraceEnabled()) { - for (STALResponse response : responses) { + for (ResponseType response : resps) { log.trace("Received STAL response: " + response.getClass().getName()); } } log.trace("notifying response consumers"); - respMon.notify(); +// respMon.notify(); + responses.notify(); } else { - if (expectingResponse) { - log.warn("Did not receive expected response(s) in nextRequest(), return QUIT"); - return Collections.singletonList((STALRequest) new QuitRequest()); - } - log.trace("expecting non-null response in next nextRequest(response)"); - expectingResponse = true; +// if (expectingResponse) { +// log.warn("Did not receive expected response(s) in nextRequest(), return QUIT"); +// return Collections.singletonList((RequestType) new QuitRequestType()); +// } +// log.trace("expecting non-null response in next nextRequest(response)"); +// expectingResponse = true; + log.error("Received NextRequest without responses, return QUIT"); + return Collections.singletonList((RequestType) new QuitRequestType()); } } - synchronized (reqMon) { + synchronized (requests) { //reqMon) { long beforeWait = System.currentTimeMillis(); - while (reqMon.requests == null) { +// while (reqMon.requests == null) { + while (requests.isEmpty()) { log.trace("waiting to consume request"); - reqMon.wait(timeout); +// reqMon.wait(timeout); + requests.wait(timeout); if (System.currentTimeMillis() - beforeWait >= timeout) { log.warn("timeout while waiting to consume request"); - return Collections.singletonList((STALRequest) new QuitRequest()); + return Collections.singletonList((RequestType) new QuitRequestType()); } } log.trace("consume request"); - List requests = reqMon.consume(); - if (requests.size() > 0 && requests.get(0) instanceof QuitRequest) { - log.trace("expecting no response in next nextRequest()"); - expectingResponse = false; - } - return requests; + List reqs = new ArrayList(); // reqMon.consume(); + reqs.addAll(requests); + +// if (requests.size() > 0 && requests.get(0) instanceof QuitRequestType) { +// log.trace("expecting no response in next nextRequest()"); +// expectingResponse = false; +// } + requests.clear(); + return reqs; } } catch (InterruptedException ex) { log.warn("interrupt in nextRequest(): " + ex.getMessage()); @@ -205,49 +289,95 @@ public class STALRequestBrokerImpl implements STALRequestBroker { } @Override - public synchronized List getHashDataInput() { - log.trace("return " + reqMon.hashDataInput.size() + " current HashDataInput(s) "); - return reqMon.getHashDataInput(); + public List getHashDataInput() { + synchronized (requests) { + log.trace("return " + hashDataInputs.size() + " current HashDataInput(s) "); + return hashDataInputs; //reqMon.getHashDataInput(); + } } @Override public void setLocale(Locale locale) { } - class RequestsMonitor { - List requests; - List hashDataInput; - - void produce(List req) { - requests = req; - } - - synchronized List consume() { - List reqs = requests; - requests = null; - return reqs; - } - - void setHashDataInput(List hdi) { - hashDataInput = hdi; - } - - List getHashDataInput() { - return hashDataInput; - } - } - - class ResponsesMonitor { - List responses; - - void produce(List resp) { - responses = resp; - } - - synchronized List consume() { - List resps = responses; - responses = null; - return resps; - } - } +// class RequestsMonitor { +// List requests; +// List hashDataInput; +// +// void produce(List req) { +// requests = req; +// } +// +// synchronized List consume() { +// List reqs = new ArrayList(); +// for (STALRequest request : requests) { +// if (request instanceof SignRequest) { +// at.gv.egiz.stal.service.types.SignRequest r = new at.gv.egiz.stal.service.types.SignRequest(); +// r.setKeyIdentifier(((SignRequest) request).getKeyIdentifier()); +// r.setSignedInfo(((SignRequest) request).getSignedInfo()); +// reqs.add(r); +// } else if (request instanceof InfoboxReadRequest) { +// at.gv.egiz.stal.service.types.InfoboxReadRequest r = new at.gv.egiz.stal.service.types.InfoboxReadRequest(); +// r.setDomainIdentifier(((InfoboxReadRequest) request).getDomainIdentifier()); +// r.setInfoboxIdentifier(((InfoboxReadRequest) request).getInfoboxIdentifier()); +// reqs.add(r); +// } else if (request instanceof QuitRequest) { +// at.gv.egiz.stal.service.types.QuitRequest r = new at.gv.egiz.stal.service.types.QuitRequest(); +// reqs.add(r); +// } else { +// log.error("unknown STAL request type: " + request.getClass()); +// requests = null; +// return Collections.singletonList((at.gv.egiz.stal.service.types.STALRequest) new at.gv.egiz.stal.service.types.QuitRequest()); +// } +// } +// requests = null; +// return reqs; +// } +// +// void setHashDataInput(List hdi) { +// hashDataInput = hdi; +// } +// +// List getHashDataInput() { +// return hashDataInput; +// } +// } +// +// /** TODO: now, that responses are not nulled, synchronize directly on responses? */ +// class ResponsesMonitor { +// List responses; +// +// void produce(List resp) { +// responses = resp; +// } +// +// synchronized List consume() { +// List resps = new ArrayList(); +// +// for (at.gv.egiz.stal.service.types.STALResponse response : responses) { +// if (response instanceof at.gv.egiz.stal.service.types.InfoboxReadResponse) { +// InfoboxReadResponse r = new InfoboxReadResponse(); +// r.setInfoboxValue(((at.gv.egiz.stal.service.types.InfoboxReadResponse) response).getInfoboxValue()); +// resps.add(r); +// } else if (response instanceof at.gv.egiz.stal.service.types.SignResponse) { +// SignResponse r = new SignResponse(); +// r.setSignatureValue(((at.gv.egiz.stal.service.types.SignResponse) response).getSignatureValue()); +// resps.add(r); +// } else if (response instanceof at.gv.egiz.stal.service.types.ErrorResponse) { +// ErrorResponse r = new ErrorResponse(); +// r.setErrorCode(((at.gv.egiz.stal.service.types.ErrorResponse) response).getErrorCode()); +// r.setErrorMessage(((at.gv.egiz.stal.service.types.ErrorResponse) response).getErrorMessage()); +// resps.add(r); +// } else { +// log.error("unknown STAL response type: " + response.getClass()); +// ErrorResponse r = new ErrorResponse(4000); +// r.setErrorMessage("unknown STAL response type: " + response.getClass()); +// responses = null; +// return Collections.singletonList((STALResponse) r); +// } +// } +// responses = null; +// return resps; +// } +// } } diff --git a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java index d3d6c8db..bcee1e77 100644 --- a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java +++ b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java @@ -22,22 +22,27 @@ package at.gv.egiz.stal.service.impl; import at.gv.egiz.bku.binding.BindingProcessor; import at.gv.egiz.bku.binding.BindingProcessorManager; -import at.gv.egiz.stal.HashDataInput; -import at.gv.egiz.stal.service.*; import at.gv.egiz.bku.binding.Id; import at.gv.egiz.bku.binding.IdFactory; -import at.gv.egiz.stal.ErrorResponse; -import at.gv.egiz.stal.STALRequest; -import at.gv.egiz.stal.STALResponse; -import at.gv.egiz.stal.InfoboxReadRequest; -import at.gv.egiz.stal.QuitRequest; -import at.gv.egiz.stal.SignRequest; - -import java.io.ByteArrayInputStream; + +import at.gv.egiz.stal.HashDataInput; +import at.gv.egiz.stal.service.GetHashDataInputFault; +import at.gv.egiz.stal.service.STALPortType; +import at.gv.egiz.stal.service.types.ErrorResponseType; +import at.gv.egiz.stal.service.types.GetHashDataInputFaultType; +import at.gv.egiz.stal.service.types.GetHashDataInputResponseType; +import at.gv.egiz.stal.service.types.GetHashDataInputType; +import at.gv.egiz.stal.service.types.GetNextRequestResponseType; +import at.gv.egiz.stal.service.types.GetNextRequestType; +import at.gv.egiz.stal.service.types.InfoboxReadRequestType; +import at.gv.egiz.stal.service.types.QuitRequestType; +import at.gv.egiz.stal.service.types.RequestType; +import at.gv.egiz.stal.service.types.ResponseType; +import at.gv.egiz.stal.service.types.SignRequestType; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; -import java.util.Collections; +import java.nio.charset.Charset; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -63,57 +68,90 @@ public class STALServiceImpl implements STALPortType { WebServiceContext wsContext; protected IdFactory idF = IdFactory.getInstance(); + @Override - public GetNextRequestResponseType getNextRequest(GetNextRequestType request) { - - Id sessionId = idF.createId(request.getSessionId()); - - List responsesIn = request.getResponse(); - - GetNextRequestResponseType response = new GetNextRequestResponseType(); - response.setSessionId(sessionId.toString()); + public GetNextRequestResponseType connect(String sessId) { + + if (sessId == null) { + throw new NullPointerException("No session id provided"); + } + + Id sessionId = idF.createId(sessId); + if (log.isDebugEnabled()) { + log.debug("Received Connect [" + sessionId + "]"); + } + if (TEST_SESSION_ID.equals(sessionId)) { - if (responsesIn.size() > 0 && responsesIn.get(0) instanceof ErrorResponse) { - log.info("Received TestSession GetNextRequest(ErrorResponse), returning QuitRequest"); - response.getRequest().add(new QuitRequest()); - } else { - log.info("Received TestSession GetNextRequest, returning InfoboxReadRequest "); - SignRequest sig = new SignRequest(); - sig.setKeyIdentifier("SecureSignatureKeypair"); - sig.setSignedInfo(" id('signed-data-object-0-1214921968-27971781-13578')/node() H1IePEEfGQ2SG03H6LTzw1TpCuM=yV6Q+I60buqR4mMaxA7fi+CV35A=".getBytes()); - response.getRequest().add(sig); - InfoboxReadRequest req = new InfoboxReadRequest(); - req.setInfoboxIdentifier("IdentityLink"); - req.setDomainIdentifier("hansiwurzel"); - response.getRequest().add(req); - req = new InfoboxReadRequest(); - req.setInfoboxIdentifier("CertifiedKeypair"); - response.getRequest().add(req); - req = new InfoboxReadRequest(); - req.setInfoboxIdentifier("SecureSignatureKeypair"); - response.getRequest().add(req); - } - return response; + return getTestSessionNextRequestResponse(null); } + + GetNextRequestResponseType response = new GetNextRequestResponseType(); + response.setSessionId(sessionId.toString()); STALRequestBroker stal = getStal(sessionId); if (stal != null) { + + List requestsOut = ((STALRequestBroker) stal).connect(); + response.getInfoboxReadRequestOrSignRequestOrQuitRequest().addAll(requestsOut); + if (log.isDebugEnabled()) { - StringBuilder sb = new StringBuilder("Received GetNextRequest ["); + StringBuilder sb = new StringBuilder("Returning initial GetNextRequestResponse ["); sb.append(sessionId.toString()); sb.append("] containing "); - sb.append(responsesIn.size()); - sb.append(" responses: "); - for (STALResponse respIn : responsesIn) { - sb.append(respIn); + sb.append(requestsOut.size()); + sb.append(" requests: "); + for (RequestType reqOut : requestsOut) { + sb.append(reqOut.getClass()); sb.append(' '); } + log.debug(sb.toString()); } + } else { + log.error("Failed to get STAL for session " + sessionId + ", returning QuitRequest"); + response.getInfoboxReadRequestOrSignRequestOrQuitRequest().add(new QuitRequestType()); + } + return response; + } + + @Override + public GetNextRequestResponseType getNextRequest(GetNextRequestType request) { + + if (request.getSessionId() == null) { + throw new NullPointerException("No session id provided"); + } + + Id sessionId = idF.createId(request.getSessionId()); + + List responsesIn = request.getInfoboxReadResponseOrSignResponseOrErrorResponse();//getResponse(); + + if (log.isDebugEnabled()) { + StringBuilder sb = new StringBuilder("Received GetNextRequest ["); + sb.append(sessionId.toString()); + sb.append("] containing "); + sb.append(responsesIn.size()); + sb.append(" responses: "); + for (ResponseType respIn : responsesIn) { + sb.append(respIn.getClass()); + sb.append(' '); + } + log.debug(sb.toString()); + } + + if (TEST_SESSION_ID.equals(sessionId)) { + return getTestSessionNextRequestResponse(responsesIn); + } - List requestsOut = ((STALRequestBroker) stal).nextRequest(responsesIn); - response.getRequest().addAll(requestsOut); + GetNextRequestResponseType response = new GetNextRequestResponseType(); + response.setSessionId(sessionId.toString()); + + STALRequestBroker stal = getStal(sessionId); + + if (stal != null) { + + List requestsOut = ((STALRequestBroker) stal).nextRequest(responsesIn); + response.getInfoboxReadRequestOrSignRequestOrQuitRequest().addAll(requestsOut); if (log.isDebugEnabled()) { StringBuilder sb = new StringBuilder("Returning GetNextRequestResponse ["); @@ -121,14 +159,15 @@ public class STALServiceImpl implements STALPortType { sb.append("] containing "); sb.append(requestsOut.size()); sb.append(" requests: "); - for (STALRequest reqOut : requestsOut) { - sb.append(reqOut); + for (RequestType reqOut : requestsOut) { + sb.append(reqOut.getClass()); sb.append(' '); } + log.debug(sb.toString()); } } else { log.error("Failed to get STAL for session " + sessionId + ", returning QuitRequest"); - response.getRequest().add(new QuitRequest()); + response.getInfoboxReadRequestOrSignRequestOrQuitRequest().add(new QuitRequestType()); } return response; } @@ -136,6 +175,10 @@ public class STALServiceImpl implements STALPortType { @Override public GetHashDataInputResponseType getHashDataInput(GetHashDataInputType request) throws GetHashDataInputFault { + if (request.getSessionId() == null) { + throw new NullPointerException("No session id provided"); + } + Id sessionId = idF.createId(request.getSessionId()); if (log.isDebugEnabled()) { @@ -150,8 +193,17 @@ public class STALServiceImpl implements STALPortType { GetHashDataInputResponseType.Reference ref = new GetHashDataInputResponseType.Reference(); ref.setID("Reference-" + TEST_SESSION_ID + "-001"); ref.setMimeType("text/plain"); - ref.setEncoding("UTF-8"); - ref.setValue("hashdatainput-öäüß@€-00000000001".getBytes()); + + Charset charset; + try { + charset = Charset.forName("iso-8859-15"); + ref.setEncoding("iso-8859-15"); + } catch (Exception ex) { + log.warn(ex.getMessage()); + charset = Charset.defaultCharset(); + ref.setEncoding(charset.toString()); + } + ref.setValue("hashdatainput-öäüß@€-00000000001".getBytes(charset)); response.getReference().add(ref); return response; } else { @@ -244,10 +296,40 @@ public class STALServiceImpl implements STALPortType { } private STALRequestBroker getStal(Id sessionId) { + if (log.isTraceEnabled()) { + log.trace("resolve STAL for session " + sessionId); + } MessageContext mCtx = wsContext.getMessageContext(); ServletContext sCtx = (ServletContext) mCtx.get(MessageContext.SERVLET_CONTEXT); BindingProcessorManager bpMgr = (BindingProcessorManager) sCtx.getAttribute(BINDING_PROCESSOR_MANAGER); BindingProcessor bp = bpMgr.getBindingProcessor(sessionId); return (bp == null) ? null : (bp.isFinished() ? null : (STALRequestBroker) bp.getSTAL()); } + + private GetNextRequestResponseType getTestSessionNextRequestResponse(List responsesIn) { + GetNextRequestResponseType response = new GetNextRequestResponseType(); + response.setSessionId(TEST_SESSION_ID.toString()); + + if (responsesIn != null && responsesIn.size() > 0 && responsesIn.get(0) instanceof ErrorResponseType) { + log.info("Received TestSession GetNextRequest(ErrorResponse), returning QuitRequest"); + response.getInfoboxReadRequestOrSignRequestOrQuitRequest().add(new QuitRequestType()); + } else { + log.info("Received TestSession GetNextRequest, returning InfoboxReadRequest "); + SignRequestType sig = new SignRequestType(); + sig.setKeyIdentifier("SecureSignatureKeypair"); + sig.setSignedInfo(" id('signed-data-object-0-1214921968-27971781-13578')/node() H1IePEEfGQ2SG03H6LTzw1TpCuM=yV6Q+I60buqR4mMaxA7fi+CV35A=".getBytes()); + response.getInfoboxReadRequestOrSignRequestOrQuitRequest().add(sig); + InfoboxReadRequestType req = new InfoboxReadRequestType(); + req.setInfoboxIdentifier("IdentityLink"); + req.setDomainIdentifier("hansiwurzel"); + response.getInfoboxReadRequestOrSignRequestOrQuitRequest().add(req); + req = new InfoboxReadRequestType(); + req.setInfoboxIdentifier("CertifiedKeypair"); + response.getInfoboxReadRequestOrSignRequestOrQuitRequest().add(req); + req = new InfoboxReadRequestType(); + req.setInfoboxIdentifier("SecureSignatureKeypair"); + response.getInfoboxReadRequestOrSignRequestOrQuitRequest().add(req); + } + return response; + } } diff --git a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.wsdl b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.wsdl index a9f16a12..344e5ce2 100644 --- a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.wsdl +++ b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.wsdl @@ -24,6 +24,9 @@ + + + @@ -40,6 +43,10 @@ + + + + @@ -52,6 +59,14 @@ + + + + + + + + diff --git a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd index b3c4841a..6f3946dc 100644 --- a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd +++ b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd @@ -18,121 +18,136 @@ - - - - - - + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + - - - - - + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + + + + - - + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/BKUOnline/src/test/java/at/gv/egiz/stal/service/STALRequestBrokerTest.java b/BKUOnline/src/test/java/at/gv/egiz/stal/service/STALRequestBrokerTest.java index d6ce2720..8830a81c 100644 --- a/BKUOnline/src/test/java/at/gv/egiz/stal/service/STALRequestBrokerTest.java +++ b/BKUOnline/src/test/java/at/gv/egiz/stal/service/STALRequestBrokerTest.java @@ -32,6 +32,13 @@ import at.gv.egiz.stal.STALRequest; import at.gv.egiz.stal.STALResponse; import at.gv.egiz.stal.SignResponse; import at.gv.egiz.stal.SignRequest; +import at.gv.egiz.stal.service.types.InfoboxReadRequestType; +import at.gv.egiz.stal.service.types.InfoboxReadResponseType; +import at.gv.egiz.stal.service.types.QuitRequestType; +import at.gv.egiz.stal.service.types.RequestType; +import at.gv.egiz.stal.service.types.ResponseType; +import at.gv.egiz.stal.service.types.SignRequestType; +import at.gv.egiz.stal.service.types.SignResponseType; import java.io.ByteArrayInputStream; import java.io.IOException; import java.io.InputStream; @@ -277,19 +284,19 @@ public class STALRequestBrokerTest { public void run() { try { log.debug("calling stal.nextRequest(oldResponse)"); - STALResponse oldResp = new InfoboxReadResponse(); - List requests = stal.nextRequest(Collections.singletonList(oldResp)); + ResponseType oldResp = new InfoboxReadResponseType(); + List requests = stal.nextRequest(Collections.singletonList(oldResp)); log.debug("got " + requests.size() + " requests. processing..."); Thread.sleep(1); - List responses = new ArrayList(); - for (STALRequest request : requests) { - if (request instanceof InfoboxReadRequest) { + List responses = new ArrayList(); + for (RequestType request : requests) { + if (request instanceof InfoboxReadRequestType) { log.debug("received UNEXPECTED READINFOBOX request"); - InfoboxReadResponse r = new InfoboxReadResponse(); + InfoboxReadResponseType r = new InfoboxReadResponseType(); r.setInfoboxValue("dummyInfobox".getBytes()); responses.add(r); - } else if (request instanceof SignRequest) { + } else if (request instanceof SignRequestType) { log.debug("received UNEXPECTED SIGN request"); @@ -304,10 +311,10 @@ public class STALRequestBrokerTest { log.debug("got HashDataInput " + new String(data)); - SignResponse r = new SignResponse(); + SignResponseType r = new SignResponseType(); r.setSignatureValue("dummySignature".getBytes()); responses.add(r); - } else if (request instanceof QuitRequest) { + } else if (request instanceof QuitRequestType) { log.debug("received EXPECTED QUIT request"); return; } @@ -319,8 +326,8 @@ public class STALRequestBrokerTest { // } log.debug("calling stal.nextRequest with " + responses.size() + " responses"); requests = stal.nextRequest(responses); - for (STALRequest request : requests) { - if (request instanceof QuitRequest) { + for (RequestType request : requests) { + if (request instanceof QuitRequestType) { log.debug("got QUIT request"); } else { log.debug("expected QUIT request, got " + request.getClass().getName()); @@ -342,16 +349,16 @@ public class STALRequestBrokerTest { try { // first call w/ empty response list log.debug("calling stal.nextRequest"); - List requests = stal.nextRequest(null); //new ArrayList()); + List requests = stal.nextRequest(null); //new ArrayList()); log.debug("got " + requests.size() + " requests. processing..."); Thread.sleep(1); - List responses = new ArrayList(); - for (STALRequest request : requests) { - if (request instanceof InfoboxReadRequest) { - InfoboxReadResponse r = new InfoboxReadResponse(); + List responses = new ArrayList(); + for (RequestType request : requests) { + if (request instanceof InfoboxReadRequestType) { + InfoboxReadResponseType r = new InfoboxReadResponseType(); r.setInfoboxValue("dummyInfobox".getBytes()); responses.add(r); - } else if (request instanceof SignRequest) { + } else if (request instanceof SignRequestType) { log.debug("calling stal.getCurrentHashDataInputCallback"); List hdis = stal.getHashDataInput(); @@ -364,10 +371,10 @@ public class STALRequestBrokerTest { log.debug("got HashDataInput " + new String(data)); - SignResponse r = new SignResponse(); + SignResponseType r = new SignResponseType(); r.setSignatureValue("dummySignature".getBytes()); responses.add(r); - } else if (request instanceof QuitRequest) { + } else if (request instanceof QuitRequestType) { log.debug("received UNEXPECTED QUIT request"); return; } @@ -379,8 +386,8 @@ public class STALRequestBrokerTest { // } log.debug("calling stal.nextRequest with " + responses.size() + " responses"); requests = stal.nextRequest(responses); - for (STALRequest request : requests) { - if (request instanceof QuitRequest) { + for (RequestType request : requests) { + if (request instanceof QuitRequestType) { log.debug("got QUIT request"); } else { log.debug("expected QUIT request, got " + request.getClass().getName()); @@ -401,12 +408,12 @@ public class STALRequestBrokerTest { try { // first call w/ empty response list log.debug("calling stal.nextRequest"); - List requests = stal.nextRequest(null); //new ArrayList()); + List requests = stal.nextRequest(null); //new ArrayList()); log.debug("got " + requests.size() + " requests. processing..."); Thread.sleep(1); - for (STALRequest request : requests) { + for (RequestType request : requests) { // if (request instanceof InfoboxReadRequest) { - if (request instanceof SignRequest) { + if (request instanceof SignRequestType) { log.debug("calling stal.getCurrentHashDataInputCallback"); List hdis = stal.getHashDataInput(); assertNotNull(hdis); @@ -416,7 +423,7 @@ public class STALRequestBrokerTest { byte[] data = new byte[hd.available()]; hd.read(data); log.debug("got HashDataInput " + new String(data)); - } else if (request instanceof QuitRequest) { + } else if (request instanceof QuitRequestType) { log.debug("received UNEXPECTED QUIT requests"); return; } diff --git a/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java b/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java index 1c648531..62c25fc4 100644 --- a/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java +++ b/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java @@ -1,7 +1,19 @@ /* - * To change this template, choose Tools | Templates - * and open the template in the editor. - */ +* 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 at.gv.egiz.stal; diff --git a/STAL/src/main/java/at/gv/egiz/stal/STALRequest.java b/STAL/src/main/java/at/gv/egiz/stal/STALRequest.java index 0c3f88c2..226ac277 100644 --- a/STAL/src/main/java/at/gv/egiz/stal/STALRequest.java +++ b/STAL/src/main/java/at/gv/egiz/stal/STALRequest.java @@ -19,7 +19,8 @@ package at.gv.egiz.stal; import javax.xml.bind.annotation.XmlAccessType; import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlSeeAlso; +//import javax.xml.bind.annotation.XmlSeeAlso; +import javax.xml.bind.annotation.XmlTransient; import javax.xml.bind.annotation.XmlType; @@ -43,11 +44,11 @@ import javax.xml.bind.annotation.XmlType; */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "RequestType") -@XmlSeeAlso({ - SignRequest.class, - InfoboxReadRequest.class, - QuitRequest.class -}) +//@XmlSeeAlso({ +// SignRequest.class, +// InfoboxReadRequest.class, +// QuitRequest.class +//}) public abstract class STALRequest { diff --git a/STAL/src/main/java/at/gv/egiz/stal/STALResponse.java b/STAL/src/main/java/at/gv/egiz/stal/STALResponse.java index 91ef3c24..f561a2aa 100644 --- a/STAL/src/main/java/at/gv/egiz/stal/STALResponse.java +++ b/STAL/src/main/java/at/gv/egiz/stal/STALResponse.java @@ -22,7 +22,7 @@ import javax.xml.bind.annotation.XmlAccessorType; import javax.xml.bind.annotation.XmlAttribute; import javax.xml.bind.annotation.XmlID; import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlSeeAlso; +//import javax.xml.bind.annotation.XmlSeeAlso; import javax.xml.bind.annotation.XmlType; import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; @@ -49,41 +49,41 @@ import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; */ @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "ResponseType") -@XmlSeeAlso({ - ErrorResponse.class, - SignResponse.class, - InfoboxReadResponse.class -}) +//@XmlSeeAlso({ +// ErrorResponse.class, +// SignResponse.class, +// InfoboxReadResponse.class +//}) public abstract class STALResponse { - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } +// @XmlAttribute(name = "Id") +// @XmlJavaTypeAdapter(CollapsedStringAdapter.class) +// @XmlID +// @XmlSchemaType(name = "ID") +// protected String id; +// +// /** +// * Gets the value of the id property. +// * +// * @return +// * possible object is +// * {@link String } +// * +// */ +// public String getId() { +// return id; +// } +// +// /** +// * Sets the value of the id property. +// * +// * @param value +// * allowed object is +// * {@link String } +// * +// */ +// public void setId(String value) { +// this.id = value; +// } } diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputFault.java b/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputFault.java index 4db6a91c..df42ab47 100644 --- a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputFault.java +++ b/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputFault.java @@ -1,28 +1,14 @@ -/* -* 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 at.gv.egiz.stal.service; import javax.xml.ws.WebFault; +import at.gv.egiz.stal.service.types.GetHashDataInputFaultType; + /** * This class was generated by the JAX-WS RI. * JAX-WS RI 2.1.3-b02- - * Generated source version: 2.1 + * Generated source version: 2.0 * */ @WebFault(name = "GetHashDataInputFault", targetNamespace = "http://www.egiz.gv.at/stal") @@ -60,7 +46,7 @@ public class GetHashDataInputFault /** * * @return - * returns fault bean: at.gv.egiz.stal.GetHashDataInputFaultType + * returns fault bean: at.gv.egiz.stal.service.types.GetHashDataInputFaultType */ public GetHashDataInputFaultType getFaultInfo() { return faultInfo; diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputFaultType.java b/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputFaultType.java deleted file mode 100644 index 5301a3bd..00000000 --- a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputFaultType.java +++ /dev/null @@ -1,98 +0,0 @@ -/* -* 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 at.gv.egiz.stal.service; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - *

Java class for GetHashDataInputFaultType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="GetHashDataInputFaultType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="ErrorCode" type="{http://www.w3.org/2001/XMLSchema}int"/>
- *         <element name="ErrorMessage" type="{http://www.w3.org/2001/XMLSchema}string"/>
- *       </sequence>
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "GetHashDataInputFaultType", propOrder = { - "errorCode", - "errorMessage" -}) -public class GetHashDataInputFaultType { - - @XmlElement(name = "ErrorCode") - protected int errorCode; - @XmlElement(name = "ErrorMessage", required = true) - protected String errorMessage; - - /** - * Gets the value of the errorCode property. - * - */ - public int getErrorCode() { - return errorCode; - } - - /** - * Sets the value of the errorCode property. - * - */ - public void setErrorCode(int value) { - this.errorCode = value; - } - - /** - * Gets the value of the errorMessage property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getErrorMessage() { - return errorMessage; - } - - /** - * Sets the value of the errorMessage property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setErrorMessage(String value) { - this.errorMessage = value; - } - -} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java deleted file mode 100644 index f02d1ce6..00000000 --- a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputResponseType.java +++ /dev/null @@ -1,255 +0,0 @@ -/* -* 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 at.gv.egiz.stal.service; - -import java.util.ArrayList; -import java.util.List; -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.XmlType; -import javax.xml.bind.annotation.XmlValue; - - -/** - *

Java class for GetHashDataInputResponseType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="GetHashDataInputResponseType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="Reference" maxOccurs="unbounded">
- *           <complexType>
- *             <simpleContent>
- *               <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary">
- *                 <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" />
- *                 <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" />
- *                 <attribute name="Encoding" type="{http://www.w3.org/2001/XMLSchema}string" />
- *               </extension>
- *             </simpleContent>
- *           </complexType>
- *         </element>
- *       </sequence>
- *       <attribute name="sessionId" type="{http://www.w3.org/2001/XMLSchema}string" />
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "GetHashDataInputResponseType", propOrder = { - "reference" -}) -public class GetHashDataInputResponseType { - - @XmlElement(name = "Reference", required = true) - protected List reference; - @XmlAttribute - protected String sessionId; - - /** - * Gets the value of the reference property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the reference property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getReference().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link GetHashDataInputResponseType.Reference } - * - * - */ - public List getReference() { - if (reference == null) { - reference = new ArrayList(); - } - return this.reference; - } - - /** - * Gets the value of the sessionId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSessionId() { - return sessionId; - } - - /** - * Sets the value of the sessionId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSessionId(String value) { - this.sessionId = value; - } - - - /** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

-     * <complexType>
-     *   <simpleContent>
-     *     <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary">
-     *       <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" />
-     *       <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" />
-     *       <attribute name="Encoding" type="{http://www.w3.org/2001/XMLSchema}string" />
-     *     </extension>
-     *   </simpleContent>
-     * </complexType>
-     * 
- * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "value" - }) - public static class Reference { - - @XmlValue - protected byte[] value; - @XmlAttribute(name = "ID") - protected String id; - @XmlAttribute(name = "MimeType") - protected String mimeType; - @XmlAttribute(name = "Encoding") - protected String encoding; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * byte[] - */ - public byte[] getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * byte[] - */ - public void setValue(byte[] value) { - this.value = ((byte[]) value); - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getID() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setID(String value) { - this.id = value; - } - - /** - * Gets the value of the mimeType property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMimeType() { - return mimeType; - } - - /** - * Sets the value of the mimeType property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMimeType(String value) { - this.mimeType = value; - } - - /** - * Gets the value of the encoding property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getEncoding() { - return encoding; - } - - /** - * Sets the value of the encoding property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setEncoding(String value) { - this.encoding = value; - } - - } - -} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputType.java b/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputType.java deleted file mode 100644 index 970b0744..00000000 --- a/STALService/src/main/java/at/gv/egiz/stal/service/GetHashDataInputType.java +++ /dev/null @@ -1,172 +0,0 @@ -/* -* 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 at.gv.egiz.stal.service; - -import java.util.ArrayList; -import java.util.List; -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.XmlType; - - -/** - *

Java class for GetHashDataInputType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="GetHashDataInputType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="Reference" maxOccurs="unbounded">
- *           <complexType>
- *             <complexContent>
- *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *                 <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" />
- *               </restriction>
- *             </complexContent>
- *           </complexType>
- *         </element>
- *       </sequence>
- *       <attribute name="sessionId" type="{http://www.w3.org/2001/XMLSchema}string" />
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "GetHashDataInputType", propOrder = { - "reference" -}) -public class GetHashDataInputType { - - @XmlElement(name = "Reference", required = true) - protected List reference; - @XmlAttribute - protected String sessionId; - - /** - * Gets the value of the reference property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the reference property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getReference().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link GetHashDataInputType.Reference } - * - * - */ - public List getReference() { - if (reference == null) { - reference = new ArrayList(); - } - return this.reference; - } - - /** - * Gets the value of the sessionId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSessionId() { - return sessionId; - } - - /** - * Sets the value of the sessionId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSessionId(String value) { - this.sessionId = value; - } - - - /** - *

Java class for anonymous complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

-     * <complexType>
-     *   <complexContent>
-     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
-     *       <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" />
-     *     </restriction>
-     *   </complexContent>
-     * </complexType>
-     * 
- * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "") - public static class Reference { - - @XmlAttribute(name = "ID") - protected String id; - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getID() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setID(String value) { - this.id = value; - } - - } - -} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/GetNextRequestResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/GetNextRequestResponseType.java deleted file mode 100644 index 7a723431..00000000 --- a/STALService/src/main/java/at/gv/egiz/stal/service/GetNextRequestResponseType.java +++ /dev/null @@ -1,114 +0,0 @@ -/* -* 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 at.gv.egiz.stal.service; - -import at.gv.egiz.stal.STALRequest; -import java.util.ArrayList; -import java.util.List; -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.XmlType; - - -/** - *

Java class for GetNextRequestResponseType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="GetNextRequestResponseType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="Request" type="{http://www.egiz.gv.at/stal}RequestType" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *       <attribute name="sessionId" type="{http://www.w3.org/2001/XMLSchema}string" />
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "GetNextRequestResponseType", propOrder = { - "request" -}) -public class GetNextRequestResponseType { - - @XmlElement(name = "Request") - protected List request; - @XmlAttribute - protected String sessionId; - - /** - * Gets the value of the request property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the request property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getRequest().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link STALRequest } - * - * - */ - public List getRequest() { - if (request == null) { - request = new ArrayList(); - } - return this.request; - } - - /** - * Gets the value of the sessionId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSessionId() { - return sessionId; - } - - /** - * Sets the value of the sessionId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSessionId(String value) { - this.sessionId = value; - } - -} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/GetNextRequestType.java b/STALService/src/main/java/at/gv/egiz/stal/service/GetNextRequestType.java deleted file mode 100644 index 410f1d8d..00000000 --- a/STALService/src/main/java/at/gv/egiz/stal/service/GetNextRequestType.java +++ /dev/null @@ -1,114 +0,0 @@ -/* -* 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 at.gv.egiz.stal.service; - -import at.gv.egiz.stal.STALResponse; -import java.util.ArrayList; -import java.util.List; -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.XmlType; - - -/** - *

Java class for GetNextRequestType complex type. - * - *

The following schema fragment specifies the expected content contained within this class. - * - *

- * <complexType name="GetNextRequestType">
- *   <complexContent>
- *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- *       <sequence>
- *         <element name="Response" type="{http://www.egiz.gv.at/stal}ResponseType" maxOccurs="unbounded" minOccurs="0"/>
- *       </sequence>
- *       <attribute name="sessionId" type="{http://www.w3.org/2001/XMLSchema}string" />
- *     </restriction>
- *   </complexContent>
- * </complexType>
- * 
- * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "GetNextRequestType", propOrder = { - "response" -}) -public class GetNextRequestType { - - @XmlElement(name = "Response") - protected List response; - @XmlAttribute - protected String sessionId; - - /** - * Gets the value of the response property. - * - *

- * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a set method for the response property. - * - *

- * For example, to add a new item, do as follows: - *

-     *    getResponse().add(newItem);
-     * 
- * - * - *

- * Objects of the following type(s) are allowed in the list - * {@link STALResponse } - * - * - */ - public List getResponse() { - if (response == null) { - response = new ArrayList(); - } - return this.response; - } - - /** - * Gets the value of the sessionId property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSessionId() { - return sessionId; - } - - /** - * Sets the value of the sessionId property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSessionId(String value) { - this.sessionId = value; - } - -} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/ObjectFactory.java b/STALService/src/main/java/at/gv/egiz/stal/service/ObjectFactory.java deleted file mode 100644 index 11ad1101..00000000 --- a/STALService/src/main/java/at/gv/egiz/stal/service/ObjectFactory.java +++ /dev/null @@ -1,212 +0,0 @@ -/* -* 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 at.gv.egiz.stal.service; - - -import at.gv.egiz.stal.ErrorResponse; -import at.gv.egiz.stal.InfoboxReadRequest; -import at.gv.egiz.stal.InfoboxReadResponse; -import at.gv.egiz.stal.QuitRequest; -import at.gv.egiz.stal.SignRequest; -import at.gv.egiz.stal.SignResponse; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlElementDecl; -import javax.xml.bind.annotation.XmlRegistry; -import javax.xml.namespace.QName; - - -/** - * This object contains factory methods for each - * Java content interface and Java element interface - * generated in the at.gv.egiz.stal package. - *

An ObjectFactory allows you to programatically - * construct new instances of the Java representation - * for XML content. The Java representation of XML - * content can consist of schema derived interfaces - * and classes representing the binding of schema - * type definitions, element declarations and model - * groups. Factory methods for each of these are - * provided in this class. - * - */ -@XmlRegistry -public class ObjectFactory { - - private final static QName _GetHashDataInputFault_QNAME = new QName("http://www.egiz.gv.at/stal", "GetHashDataInputFault"); - private final static QName _GetHashDataInput_QNAME = new QName("http://www.egiz.gv.at/stal", "GetHashDataInput"); - private final static QName _GetNextRequestResponse_QNAME = new QName("http://www.egiz.gv.at/stal", "GetNextRequestResponse"); - private final static QName _GetHashDataInputResponse_QNAME = new QName("http://www.egiz.gv.at/stal", "GetHashDataInputResponse"); - private final static QName _GetNextRequest_QNAME = new QName("http://www.egiz.gv.at/stal", "GetNextRequest"); - - /** - * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.gv.egiz.stal - * - */ - public ObjectFactory() { - } - - /** - * Create an instance of {@link GetNextRequestType } - * - */ - public GetNextRequestType createGetNextRequestType() { - return new GetNextRequestType(); - } - - /** - * Create an instance of {@link SignRequest } - * - */ - public SignRequest createSignRequest() { - return new SignRequest(); - } - - /** - * Create an instance of {@link GetHashDataInputResponseType } - * - */ - public GetHashDataInputResponseType createGetHashDataInputResponseType() { - return new GetHashDataInputResponseType(); - } - - /** - * Create an instance of {@link InfoboxReadResponse } - * - */ - public InfoboxReadResponse createInfoboxReadResponse() { - return new InfoboxReadResponse(); - } - - /** - * Create an instance of {@link ErrorResponse } - * - */ - public ErrorResponse createErrorResponse() { - return new ErrorResponse(); - } - - /** - * Create an instance of {@link GetHashDataInputFaultType } - * - */ - public GetHashDataInputFaultType createGetHashDataInputFaultType() { - return new GetHashDataInputFaultType(); - } - - /** - * Create an instance of {@link GetHashDataInputType.Reference } - * - */ - public GetHashDataInputType.Reference createGetHashDataInputTypeReference() { - return new GetHashDataInputType.Reference(); - } - - /** - * Create an instance of {@link InfoboxReadRequest } - * - */ - public InfoboxReadRequest createInfoboxReadRequest() { - return new InfoboxReadRequest(); - } - - /** - * Create an instance of {@link SignResponse } - * - */ - public SignResponse createSignResponse() { - return new SignResponse(); - } - - /** - * Create an instance of {@link GetNextRequestResponseType } - * - */ - public GetNextRequestResponseType createGetNextRequestResponseType() { - return new GetNextRequestResponseType(); - } - - /** - * Create an instance of {@link GetHashDataInputType } - * - */ - public GetHashDataInputType createGetHashDataInputType() { - return new GetHashDataInputType(); - } - - /** - * Create an instance of {@link QuitRequest } - * - */ - public QuitRequest createQuitRequest() { - return new QuitRequest(); - } - - /** - * Create an instance of {@link GetHashDataInputResponseType.Reference } - * - */ - public GetHashDataInputResponseType.Reference createGetHashDataInputResponseTypeReference() { - return new GetHashDataInputResponseType.Reference(); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link GetHashDataInputFaultType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "GetHashDataInputFault") - public JAXBElement createGetHashDataInputFault(GetHashDataInputFaultType value) { - return new JAXBElement(_GetHashDataInputFault_QNAME, GetHashDataInputFaultType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link GetHashDataInputType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "GetHashDataInput") - public JAXBElement createGetHashDataInput(GetHashDataInputType value) { - return new JAXBElement(_GetHashDataInput_QNAME, GetHashDataInputType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link GetNextRequestResponseType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "GetNextRequestResponse") - public JAXBElement createGetNextRequestResponse(GetNextRequestResponseType value) { - return new JAXBElement(_GetNextRequestResponse_QNAME, GetNextRequestResponseType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link GetHashDataInputResponseType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "GetHashDataInputResponse") - public JAXBElement createGetHashDataInputResponse(GetHashDataInputResponseType value) { - return new JAXBElement(_GetHashDataInputResponse_QNAME, GetHashDataInputResponseType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link GetNextRequestType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "GetNextRequest") - public JAXBElement createGetNextRequest(GetNextRequestType value) { - return new JAXBElement(_GetNextRequest_QNAME, GetNextRequestType.class, null, value); - } - -} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/STALPortType.java b/STALService/src/main/java/at/gv/egiz/stal/service/STALPortType.java index 8d1f9f9c..6ac6b10a 100644 --- a/STALService/src/main/java/at/gv/egiz/stal/service/STALPortType.java +++ b/STALService/src/main/java/at/gv/egiz/stal/service/STALPortType.java @@ -1,19 +1,3 @@ -/* -* 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 at.gv.egiz.stal.service; @@ -22,28 +6,42 @@ import javax.jws.WebParam; import javax.jws.WebResult; import javax.jws.WebService; import javax.jws.soap.SOAPBinding; -import javax.xml.bind.annotation.XmlSeeAlso; +import at.gv.egiz.stal.service.types.GetHashDataInputResponseType; +import at.gv.egiz.stal.service.types.GetHashDataInputType; +import at.gv.egiz.stal.service.types.GetNextRequestResponseType; +import at.gv.egiz.stal.service.types.GetNextRequestType; + /** * This class was generated by the JAX-WS RI. * JAX-WS RI 2.1.3-b02- - * Generated source version: 2.1 + * Generated source version: 2.0 * */ @WebService(name = "STALPortType", targetNamespace = "http://www.egiz.gv.at/wsdl/stal") @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) -@XmlSeeAlso({ - ObjectFactory.class -}) public interface STALPortType { + /** + * Initial connection, get the first request. + * + * @param sessionId + * @return + * returns at.gv.egiz.stal.service.types.GetNextRequestResponseType + */ + @WebMethod + @WebResult(name = "GetNextRequestResponse", targetNamespace = "http://www.egiz.gv.at/stal", partName = "part1") + public GetNextRequestResponseType connect( + @WebParam(name = "SessionId", targetNamespace = "http://www.egiz.gv.at/stal", partName = "part1") + String sessionId); + /** * Fetch the next request. * * @param request * @return - * returns at.gv.egiz.stal.GetNextRequestResponseType + * returns at.gv.egiz.stal.service.types.GetNextRequestResponseType */ @WebMethod(operationName = "nextRequest") @WebResult(name = "GetNextRequestResponse", targetNamespace = "http://www.egiz.gv.at/stal", partName = "part1") @@ -56,7 +54,7 @@ public interface STALPortType { * * @param request * @return - * returns at.gv.egiz.stal.GetHashDataInputResponseType + * returns at.gv.egiz.stal.service.types.GetHashDataInputResponseType * @throws GetHashDataInputFault */ @WebMethod diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/STALService.java b/STALService/src/main/java/at/gv/egiz/stal/service/STALService.java index 7023b02a..d4b58af9 100644 --- a/STALService/src/main/java/at/gv/egiz/stal/service/STALService.java +++ b/STALService/src/main/java/at/gv/egiz/stal/service/STALService.java @@ -1,36 +1,18 @@ -/* -* 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 at.gv.egiz.stal.service; -import java.net.MalformedURLException; import java.net.URL; import java.util.logging.Logger; import javax.xml.namespace.QName; import javax.xml.ws.Service; import javax.xml.ws.WebEndpoint; import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceFeature; /** * This class was generated by the JAX-WS RI. * JAX-WS RI 2.1.3-b02- - * Generated source version: 2.1 + * Generated source version: 2.0 * */ @WebServiceClient(name = "STALService", targetNamespace = "http://www.egiz.gv.at/wsdl/stal") @@ -54,16 +36,4 @@ public class STALService return super.getPort(new QName("http://www.egiz.gv.at/wsdl/stal", "STALPort"), STALPortType.class); } - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the features parameter will have their default values. - * @return - * returns STALPortType - */ - @WebEndpoint(name = "STALPort") - public STALPortType getSTALPort(WebServiceFeature... features) { - return super.getPort(new QName("http://www.egiz.gv.at/wsdl/stal", "STALPort"), STALPortType.class, features); - } - } diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/package-info.java b/STALService/src/main/java/at/gv/egiz/stal/service/package-info.java deleted file mode 100644 index eb3e29dd..00000000 --- a/STALService/src/main/java/at/gv/egiz/stal/service/package-info.java +++ /dev/null @@ -1,18 +0,0 @@ -/* -* 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. -*/ -@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.egiz.gv.at/stal", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) -package at.gv.egiz.stal.service; diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/ErrorResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/ErrorResponseType.java new file mode 100644 index 00000000..14ae0d39 --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/ErrorResponseType.java @@ -0,0 +1,84 @@ + +package at.gv.egiz.stal.service.types; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for ErrorResponseType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="ErrorResponseType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}ResponseType">
+ *       <sequence>
+ *         <element name="ErrorCode" type="{http://www.w3.org/2001/XMLSchema}int"/>
+ *         <element name="ErrorMessage" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *       </sequence>
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "ErrorResponseType", propOrder = { + "errorCode", + "errorMessage" +}) +public class ErrorResponseType + extends ResponseType +{ + + @XmlElement(name = "ErrorCode") + protected int errorCode; + @XmlElement(name = "ErrorMessage", required = true) + protected String errorMessage; + + /** + * Gets the value of the errorCode property. + * + */ + public int getErrorCode() { + return errorCode; + } + + /** + * Sets the value of the errorCode property. + * + */ + public void setErrorCode(int value) { + this.errorCode = value; + } + + /** + * Gets the value of the errorMessage property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getErrorMessage() { + return errorMessage; + } + + /** + * Sets the value of the errorMessage property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setErrorMessage(String value) { + this.errorMessage = value; + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputFaultType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputFaultType.java new file mode 100644 index 00000000..bf9f96ab --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputFaultType.java @@ -0,0 +1,82 @@ + +package at.gv.egiz.stal.service.types; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for GetHashDataInputFaultType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="GetHashDataInputFaultType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <element name="ErrorCode" type="{http://www.w3.org/2001/XMLSchema}int"/>
+ *         <element name="ErrorMessage" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ *       </sequence>
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "GetHashDataInputFaultType", propOrder = { + "errorCode", + "errorMessage" +}) +public class GetHashDataInputFaultType { + + @XmlElement(name = "ErrorCode") + protected int errorCode; + @XmlElement(name = "ErrorMessage", required = true) + protected String errorMessage; + + /** + * Gets the value of the errorCode property. + * + */ + public int getErrorCode() { + return errorCode; + } + + /** + * Sets the value of the errorCode property. + * + */ + public void setErrorCode(int value) { + this.errorCode = value; + } + + /** + * Gets the value of the errorMessage property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getErrorMessage() { + return errorMessage; + } + + /** + * Sets the value of the errorMessage property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setErrorMessage(String value) { + this.errorMessage = value; + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputResponseType.java new file mode 100644 index 00000000..7536d936 --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputResponseType.java @@ -0,0 +1,239 @@ + +package at.gv.egiz.stal.service.types; + +import java.util.ArrayList; +import java.util.List; +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.XmlType; +import javax.xml.bind.annotation.XmlValue; + + +/** + *

Java class for GetHashDataInputResponseType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="GetHashDataInputResponseType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <element name="Reference" maxOccurs="unbounded">
+ *           <complexType>
+ *             <simpleContent>
+ *               <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary">
+ *                 <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                 <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *                 <attribute name="Encoding" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *               </extension>
+ *             </simpleContent>
+ *           </complexType>
+ *         </element>
+ *       </sequence>
+ *       <attribute name="SessionId" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "GetHashDataInputResponseType", propOrder = { + "reference" +}) +public class GetHashDataInputResponseType { + + @XmlElement(name = "Reference", required = true) + protected List reference; + @XmlAttribute(name = "SessionId") + protected String sessionId; + + /** + * Gets the value of the reference property. + * + *

+ * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a set method for the reference property. + * + *

+ * For example, to add a new item, do as follows: + *

+     *    getReference().add(newItem);
+     * 
+ * + * + *

+ * Objects of the following type(s) are allowed in the list + * {@link GetHashDataInputResponseType.Reference } + * + * + */ + public List getReference() { + if (reference == null) { + reference = new ArrayList(); + } + return this.reference; + } + + /** + * Gets the value of the sessionId property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getSessionId() { + return sessionId; + } + + /** + * Sets the value of the sessionId property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setSessionId(String value) { + this.sessionId = value; + } + + + /** + *

Java class for anonymous complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+     * <complexType>
+     *   <simpleContent>
+     *     <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary">
+     *       <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *       <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *       <attribute name="Encoding" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *     </extension>
+     *   </simpleContent>
+     * </complexType>
+     * 
+ * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "", propOrder = { + "value" + }) + public static class Reference { + + @XmlValue + protected byte[] value; + @XmlAttribute(name = "ID") + protected String id; + @XmlAttribute(name = "MimeType") + protected String mimeType; + @XmlAttribute(name = "Encoding") + protected String encoding; + + /** + * Gets the value of the value property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getValue() { + return value; + } + + /** + * Sets the value of the value property. + * + * @param value + * allowed object is + * byte[] + */ + public void setValue(byte[] value) { + this.value = ((byte[]) value); + } + + /** + * Gets the value of the id property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getID() { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setID(String value) { + this.id = value; + } + + /** + * Gets the value of the mimeType property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getMimeType() { + return mimeType; + } + + /** + * Sets the value of the mimeType property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setMimeType(String value) { + this.mimeType = value; + } + + /** + * Gets the value of the encoding property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getEncoding() { + return encoding; + } + + /** + * Sets the value of the encoding property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setEncoding(String value) { + this.encoding = value; + } + + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputType.java new file mode 100644 index 00000000..5309482a --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputType.java @@ -0,0 +1,156 @@ + +package at.gv.egiz.stal.service.types; + +import java.util.ArrayList; +import java.util.List; +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.XmlType; + + +/** + *

Java class for GetHashDataInputType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="GetHashDataInputType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <sequence>
+ *         <element name="Reference" maxOccurs="unbounded">
+ *           <complexType>
+ *             <complexContent>
+ *               <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *                 <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *               </restriction>
+ *             </complexContent>
+ *           </complexType>
+ *         </element>
+ *       </sequence>
+ *       <attribute name="SessionId" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "GetHashDataInputType", propOrder = { + "reference" +}) +public class GetHashDataInputType { + + @XmlElement(name = "Reference", required = true) + protected List reference; + @XmlAttribute(name = "SessionId") + protected String sessionId; + + /** + * Gets the value of the reference property. + * + *

+ * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a set method for the reference property. + * + *

+ * For example, to add a new item, do as follows: + *

+     *    getReference().add(newItem);
+     * 
+ * + * + *

+ * Objects of the following type(s) are allowed in the list + * {@link GetHashDataInputType.Reference } + * + * + */ + public List getReference() { + if (reference == null) { + reference = new ArrayList(); + } + return this.reference; + } + + /** + * Gets the value of the sessionId property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getSessionId() { + return sessionId; + } + + /** + * Sets the value of the sessionId property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setSessionId(String value) { + this.sessionId = value; + } + + + /** + *

Java class for anonymous complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+     * <complexType>
+     *   <complexContent>
+     *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+     *       <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" />
+     *     </restriction>
+     *   </complexContent>
+     * </complexType>
+     * 
+ * + * + */ + @XmlAccessorType(XmlAccessType.FIELD) + @XmlType(name = "") + public static class Reference { + + @XmlAttribute(name = "ID") + protected String id; + + /** + * Gets the value of the id property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getID() { + return id; + } + + /** + * Sets the value of the id property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setID(String value) { + this.id = value; + } + + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/GetNextRequestResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetNextRequestResponseType.java new file mode 100644 index 00000000..6f8204cc --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetNextRequestResponseType.java @@ -0,0 +1,106 @@ + +package at.gv.egiz.stal.service.types; + +import java.util.ArrayList; +import java.util.List; +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.XmlElements; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for GetNextRequestResponseType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="GetNextRequestResponseType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <choice maxOccurs="unbounded">
+ *         <element name="InfoboxReadRequest" type="{http://www.egiz.gv.at/stal}InfoboxReadRequestType"/>
+ *         <element name="SignRequest" type="{http://www.egiz.gv.at/stal}SignRequestType"/>
+ *         <element name="QuitRequest" type="{http://www.egiz.gv.at/stal}QuitRequestType"/>
+ *       </choice>
+ *       <attribute name="SessionId" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "GetNextRequestResponseType", propOrder = { + "infoboxReadRequestOrSignRequestOrQuitRequest" +}) +public class GetNextRequestResponseType { + + @XmlElements({ + @XmlElement(name = "InfoboxReadRequest", type = InfoboxReadRequestType.class), + @XmlElement(name = "QuitRequest", type = QuitRequestType.class), + @XmlElement(name = "SignRequest", type = SignRequestType.class) + }) + protected List infoboxReadRequestOrSignRequestOrQuitRequest; + @XmlAttribute(name = "SessionId") + protected String sessionId; + + /** + * Gets the value of the infoboxReadRequestOrSignRequestOrQuitRequest property. + * + *

+ * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a set method for the infoboxReadRequestOrSignRequestOrQuitRequest property. + * + *

+ * For example, to add a new item, do as follows: + *

+     *    getInfoboxReadRequestOrSignRequestOrQuitRequest().add(newItem);
+     * 
+ * + * + *

+ * Objects of the following type(s) are allowed in the list + * {@link InfoboxReadRequestType } + * {@link QuitRequestType } + * {@link SignRequestType } + * + * + */ + public List getInfoboxReadRequestOrSignRequestOrQuitRequest() { + if (infoboxReadRequestOrSignRequestOrQuitRequest == null) { + infoboxReadRequestOrSignRequestOrQuitRequest = new ArrayList(); + } + return this.infoboxReadRequestOrSignRequestOrQuitRequest; + } + + /** + * Gets the value of the sessionId property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getSessionId() { + return sessionId; + } + + /** + * Sets the value of the sessionId property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setSessionId(String value) { + this.sessionId = value; + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/GetNextRequestType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetNextRequestType.java new file mode 100644 index 00000000..eab3d40b --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetNextRequestType.java @@ -0,0 +1,106 @@ + +package at.gv.egiz.stal.service.types; + +import java.util.ArrayList; +import java.util.List; +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.XmlElements; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for GetNextRequestType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="GetNextRequestType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *       <choice maxOccurs="unbounded">
+ *         <element name="InfoboxReadResponse" type="{http://www.egiz.gv.at/stal}InfoboxReadResponseType"/>
+ *         <element name="SignResponse" type="{http://www.egiz.gv.at/stal}SignResponseType"/>
+ *         <element name="ErrorResponse" type="{http://www.egiz.gv.at/stal}ErrorResponseType"/>
+ *       </choice>
+ *       <attribute name="SessionId" type="{http://www.w3.org/2001/XMLSchema}string" />
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "GetNextRequestType", propOrder = { + "infoboxReadResponseOrSignResponseOrErrorResponse" +}) +public class GetNextRequestType { + + @XmlElements({ + @XmlElement(name = "SignResponse", type = SignResponseType.class), + @XmlElement(name = "InfoboxReadResponse", type = InfoboxReadResponseType.class), + @XmlElement(name = "ErrorResponse", type = ErrorResponseType.class) + }) + protected List infoboxReadResponseOrSignResponseOrErrorResponse; + @XmlAttribute(name = "SessionId") + protected String sessionId; + + /** + * Gets the value of the infoboxReadResponseOrSignResponseOrErrorResponse property. + * + *

+ * This accessor method returns a reference to the live list, + * not a snapshot. Therefore any modification you make to the + * returned list will be present inside the JAXB object. + * This is why there is not a set method for the infoboxReadResponseOrSignResponseOrErrorResponse property. + * + *

+ * For example, to add a new item, do as follows: + *

+     *    getInfoboxReadResponseOrSignResponseOrErrorResponse().add(newItem);
+     * 
+ * + * + *

+ * Objects of the following type(s) are allowed in the list + * {@link SignResponseType } + * {@link InfoboxReadResponseType } + * {@link ErrorResponseType } + * + * + */ + public List getInfoboxReadResponseOrSignResponseOrErrorResponse() { + if (infoboxReadResponseOrSignResponseOrErrorResponse == null) { + infoboxReadResponseOrSignResponseOrErrorResponse = new ArrayList(); + } + return this.infoboxReadResponseOrSignResponseOrErrorResponse; + } + + /** + * Gets the value of the sessionId property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getSessionId() { + return sessionId; + } + + /** + * Sets the value of the sessionId property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setSessionId(String value) { + this.sessionId = value; + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/InfoboxReadRequestType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/InfoboxReadRequestType.java new file mode 100644 index 00000000..0ab6f5f3 --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/InfoboxReadRequestType.java @@ -0,0 +1,102 @@ + +package at.gv.egiz.stal.service.types; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlSchemaType; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for InfoboxReadRequestType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="InfoboxReadRequestType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}RequestType">
+ *       <sequence>
+ *         <element name="InfoboxIdentifier">
+ *           <simpleType>
+ *             <restriction base="{http://www.w3.org/2001/XMLSchema}string">
+ *               <enumeration value="Certificates"/>
+ *               <enumeration value="IdentityLink"/>
+ *               <enumeration value="Mandates"/>
+ *             </restriction>
+ *           </simpleType>
+ *         </element>
+ *         <element name="DomainIdentifier" type="{http://www.w3.org/2001/XMLSchema}anyURI" minOccurs="0"/>
+ *       </sequence>
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "InfoboxReadRequestType", propOrder = { + "infoboxIdentifier", + "domainIdentifier" +}) +public class InfoboxReadRequestType + extends RequestType +{ + + @XmlElement(name = "InfoboxIdentifier", required = true) + protected String infoboxIdentifier; + @XmlElement(name = "DomainIdentifier") + @XmlSchemaType(name = "anyURI") + protected String domainIdentifier; + + /** + * Gets the value of the infoboxIdentifier property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getInfoboxIdentifier() { + return infoboxIdentifier; + } + + /** + * Sets the value of the infoboxIdentifier property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setInfoboxIdentifier(String value) { + this.infoboxIdentifier = value; + } + + /** + * Gets the value of the domainIdentifier property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getDomainIdentifier() { + return domainIdentifier; + } + + /** + * Sets the value of the domainIdentifier property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setDomainIdentifier(String value) { + this.domainIdentifier = value; + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/InfoboxReadResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/InfoboxReadResponseType.java new file mode 100644 index 00000000..1d88737d --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/InfoboxReadResponseType.java @@ -0,0 +1,62 @@ + +package at.gv.egiz.stal.service.types; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for InfoboxReadResponseType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="InfoboxReadResponseType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}ResponseType">
+ *       <sequence>
+ *         <element name="InfoboxValue" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/>
+ *       </sequence>
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "InfoboxReadResponseType", propOrder = { + "infoboxValue" +}) +public class InfoboxReadResponseType + extends ResponseType +{ + + @XmlElement(name = "InfoboxValue", required = true) + protected byte[] infoboxValue; + + /** + * Gets the value of the infoboxValue property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getInfoboxValue() { + return infoboxValue; + } + + /** + * Sets the value of the infoboxValue property. + * + * @param value + * allowed object is + * byte[] + */ + public void setInfoboxValue(byte[] value) { + this.infoboxValue = ((byte[]) value); + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/ObjectFactory.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/ObjectFactory.java new file mode 100644 index 00000000..d485f1e1 --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/ObjectFactory.java @@ -0,0 +1,199 @@ + +package at.gv.egiz.stal.service.types; + +import javax.xml.bind.JAXBElement; +import javax.xml.bind.annotation.XmlElementDecl; +import javax.xml.bind.annotation.XmlRegistry; +import javax.xml.namespace.QName; + + +/** + * This object contains factory methods for each + * Java content interface and Java element interface + * generated in the at.gv.egiz.stal.service.types package. + *

An ObjectFactory allows you to programatically + * construct new instances of the Java representation + * for XML content. The Java representation of XML + * content can consist of schema derived interfaces + * and classes representing the binding of schema + * type definitions, element declarations and model + * groups. Factory methods for each of these are + * provided in this class. + * + */ +@XmlRegistry +public class ObjectFactory { + + private final static QName _GetHashDataInputFault_QNAME = new QName("http://www.egiz.gv.at/stal", "GetHashDataInputFault"); + private final static QName _GetHashDataInput_QNAME = new QName("http://www.egiz.gv.at/stal", "GetHashDataInput"); + private final static QName _GetNextRequestResponse_QNAME = new QName("http://www.egiz.gv.at/stal", "GetNextRequestResponse"); + private final static QName _GetHashDataInputResponse_QNAME = new QName("http://www.egiz.gv.at/stal", "GetHashDataInputResponse"); + private final static QName _GetNextRequest_QNAME = new QName("http://www.egiz.gv.at/stal", "GetNextRequest"); + private final static QName _SessionId_QNAME = new QName("http://www.egiz.gv.at/stal", "SessionId"); + + /** + * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.gv.egiz.stal.service.types + * + */ + public ObjectFactory() { + } + + /** + * Create an instance of {@link GetNextRequestType } + * + */ + public GetNextRequestType createGetNextRequestType() { + return new GetNextRequestType(); + } + + /** + * Create an instance of {@link InfoboxReadRequestType } + * + */ + public InfoboxReadRequestType createInfoboxReadRequestType() { + return new InfoboxReadRequestType(); + } + + /** + * Create an instance of {@link GetHashDataInputResponseType.Reference } + * + */ + public GetHashDataInputResponseType.Reference createGetHashDataInputResponseTypeReference() { + return new GetHashDataInputResponseType.Reference(); + } + + /** + * Create an instance of {@link ErrorResponseType } + * + */ + public ErrorResponseType createErrorResponseType() { + return new ErrorResponseType(); + } + + /** + * Create an instance of {@link GetHashDataInputType } + * + */ + public GetHashDataInputType createGetHashDataInputType() { + return new GetHashDataInputType(); + } + + /** + * Create an instance of {@link SignRequestType } + * + */ + public SignRequestType createSignRequestType() { + return new SignRequestType(); + } + + /** + * Create an instance of {@link GetHashDataInputFaultType } + * + */ + public GetHashDataInputFaultType createGetHashDataInputFaultType() { + return new GetHashDataInputFaultType(); + } + + /** + * Create an instance of {@link SignResponseType } + * + */ + public SignResponseType createSignResponseType() { + return new SignResponseType(); + } + + /** + * Create an instance of {@link GetHashDataInputType.Reference } + * + */ + public GetHashDataInputType.Reference createGetHashDataInputTypeReference() { + return new GetHashDataInputType.Reference(); + } + + /** + * Create an instance of {@link GetHashDataInputResponseType } + * + */ + public GetHashDataInputResponseType createGetHashDataInputResponseType() { + return new GetHashDataInputResponseType(); + } + + /** + * Create an instance of {@link InfoboxReadResponseType } + * + */ + public InfoboxReadResponseType createInfoboxReadResponseType() { + return new InfoboxReadResponseType(); + } + + /** + * Create an instance of {@link QuitRequestType } + * + */ + public QuitRequestType createQuitRequestType() { + return new QuitRequestType(); + } + + /** + * Create an instance of {@link GetNextRequestResponseType } + * + */ + public GetNextRequestResponseType createGetNextRequestResponseType() { + return new GetNextRequestResponseType(); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link GetHashDataInputFaultType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "GetHashDataInputFault") + public JAXBElement createGetHashDataInputFault(GetHashDataInputFaultType value) { + return new JAXBElement(_GetHashDataInputFault_QNAME, GetHashDataInputFaultType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link GetHashDataInputType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "GetHashDataInput") + public JAXBElement createGetHashDataInput(GetHashDataInputType value) { + return new JAXBElement(_GetHashDataInput_QNAME, GetHashDataInputType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link GetNextRequestResponseType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "GetNextRequestResponse") + public JAXBElement createGetNextRequestResponse(GetNextRequestResponseType value) { + return new JAXBElement(_GetNextRequestResponse_QNAME, GetNextRequestResponseType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link GetHashDataInputResponseType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "GetHashDataInputResponse") + public JAXBElement createGetHashDataInputResponse(GetHashDataInputResponseType value) { + return new JAXBElement(_GetHashDataInputResponse_QNAME, GetHashDataInputResponseType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link GetNextRequestType }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "GetNextRequest") + public JAXBElement createGetNextRequest(GetNextRequestType value) { + return new JAXBElement(_GetNextRequest_QNAME, GetNextRequestType.class, null, value); + } + + /** + * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} + * + */ + @XmlElementDecl(namespace = "http://www.egiz.gv.at/stal", name = "SessionId") + public JAXBElement createSessionId(String value) { + return new JAXBElement(_SessionId_QNAME, String.class, null, value); + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/QuitRequestType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/QuitRequestType.java new file mode 100644 index 00000000..7dc4197f --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/QuitRequestType.java @@ -0,0 +1,32 @@ + +package at.gv.egiz.stal.service.types; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for QuitRequestType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="QuitRequestType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}RequestType">
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "QuitRequestType") +public class QuitRequestType + extends RequestType +{ + + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/RequestType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/RequestType.java new file mode 100644 index 00000000..32b7894f --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/RequestType.java @@ -0,0 +1,30 @@ + +package at.gv.egiz.stal.service.types; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for RequestType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="RequestType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "RequestType") +public abstract class RequestType { + + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/ResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/ResponseType.java new file mode 100644 index 00000000..c94bcbe8 --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/ResponseType.java @@ -0,0 +1,30 @@ + +package at.gv.egiz.stal.service.types; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for ResponseType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="ResponseType">
+ *   <complexContent>
+ *     <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ *     </restriction>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "ResponseType") +public abstract class ResponseType { + + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/SignRequestType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/SignRequestType.java new file mode 100644 index 00000000..09e30967 --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/SignRequestType.java @@ -0,0 +1,97 @@ + +package at.gv.egiz.stal.service.types; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for SignRequestType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="SignRequestType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}RequestType">
+ *       <sequence>
+ *         <element name="KeyIdentifier">
+ *           <simpleType>
+ *             <restriction base="{http://www.w3.org/2001/XMLSchema}string">
+ *               <enumeration value="SecureSignatureKeypair"/>
+ *               <enumeration value="CertifiedKeypair"/>
+ *             </restriction>
+ *           </simpleType>
+ *         </element>
+ *         <element name="SignedInfo" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/>
+ *       </sequence>
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "SignRequestType", propOrder = { + "keyIdentifier", + "signedInfo" +}) +public class SignRequestType + extends RequestType +{ + + @XmlElement(name = "KeyIdentifier", required = true) + protected String keyIdentifier; + @XmlElement(name = "SignedInfo", required = true) + protected byte[] signedInfo; + + /** + * Gets the value of the keyIdentifier property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getKeyIdentifier() { + return keyIdentifier; + } + + /** + * Sets the value of the keyIdentifier property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setKeyIdentifier(String value) { + this.keyIdentifier = value; + } + + /** + * Gets the value of the signedInfo property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getSignedInfo() { + return signedInfo; + } + + /** + * Sets the value of the signedInfo property. + * + * @param value + * allowed object is + * byte[] + */ + public void setSignedInfo(byte[] value) { + this.signedInfo = ((byte[]) value); + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/SignResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/SignResponseType.java new file mode 100644 index 00000000..a33fb34c --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/SignResponseType.java @@ -0,0 +1,62 @@ + +package at.gv.egiz.stal.service.types; + +import javax.xml.bind.annotation.XmlAccessType; +import javax.xml.bind.annotation.XmlAccessorType; +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlType; + + +/** + *

Java class for SignResponseType complex type. + * + *

The following schema fragment specifies the expected content contained within this class. + * + *

+ * <complexType name="SignResponseType">
+ *   <complexContent>
+ *     <extension base="{http://www.egiz.gv.at/stal}ResponseType">
+ *       <sequence>
+ *         <element name="SignatureValue" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/>
+ *       </sequence>
+ *     </extension>
+ *   </complexContent>
+ * </complexType>
+ * 
+ * + * + */ +@XmlAccessorType(XmlAccessType.FIELD) +@XmlType(name = "SignResponseType", propOrder = { + "signatureValue" +}) +public class SignResponseType + extends ResponseType +{ + + @XmlElement(name = "SignatureValue", required = true) + protected byte[] signatureValue; + + /** + * Gets the value of the signatureValue property. + * + * @return + * possible object is + * byte[] + */ + public byte[] getSignatureValue() { + return signatureValue; + } + + /** + * Sets the value of the signatureValue property. + * + * @param value + * allowed object is + * byte[] + */ + public void setSignatureValue(byte[] value) { + this.signatureValue = ((byte[]) value); + } + +} diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/package-info.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/package-info.java new file mode 100644 index 00000000..3328fdc0 --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/package-info.java @@ -0,0 +1,2 @@ +@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.egiz.gv.at/stal", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) +package at.gv.egiz.stal.service.types; diff --git a/STALService/src/main/java/at/gv/egiz/stal/util/STALTranslator.java b/STALService/src/main/java/at/gv/egiz/stal/util/STALTranslator.java new file mode 100644 index 00000000..b8681084 --- /dev/null +++ b/STALService/src/main/java/at/gv/egiz/stal/util/STALTranslator.java @@ -0,0 +1,109 @@ +/* + * To change this template, choose Tools | Templates + * and open the template in the editor. + */ +package at.gv.egiz.stal.util; + +import at.gv.egiz.stal.ErrorResponse; +import at.gv.egiz.stal.InfoboxReadRequest; +import at.gv.egiz.stal.InfoboxReadResponse; +import at.gv.egiz.stal.QuitRequest; +import at.gv.egiz.stal.STALRequest; +import at.gv.egiz.stal.STALResponse; +import at.gv.egiz.stal.SignRequest; +import at.gv.egiz.stal.SignResponse; +import at.gv.egiz.stal.service.types.*; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +/** + * + * @author clemens + */ +public class STALTranslator { + + protected static final Log log = LogFactory.getLog(STALTranslator.class); + + public static List translateRequests(List requests) { + List stalRequests = new ArrayList(requests.size()); + for (RequestType request : requests) { + if (request instanceof InfoboxReadRequestType) { + InfoboxReadRequest stalReq = new InfoboxReadRequest(); + stalReq.setDomainIdentifier(((InfoboxReadRequestType) request).getDomainIdentifier()); + stalReq.setInfoboxIdentifier(((InfoboxReadRequestType) request).getInfoboxIdentifier()); + stalRequests.add(stalReq); + } else if (request instanceof SignRequestType) { + SignRequest stalReq = new SignRequest(); + stalReq.setKeyIdentifier(((SignRequestType) request).getKeyIdentifier()); + stalReq.setSignedInfo(((SignRequestType) request).getSignedInfo()); + stalRequests.add(stalReq); + } else if (request instanceof QuitRequestType) { + stalRequests.add(new QuitRequest()); + } else { + log.error("unknown STALService request type: " + request.getClass()); + stalRequests = Collections.singletonList((STALRequest) new QuitRequest()); + break; + } + } + return stalRequests; + } + + public static List fromSTAL(List stalResponses) { + List responses = new ArrayList(stalResponses.size()); + for (STALResponse stalResp : stalResponses) { + if (stalResp instanceof InfoboxReadResponse) { + InfoboxReadResponseType resp = new InfoboxReadResponseType(); + resp.setInfoboxValue(((InfoboxReadResponse) stalResp).getInfoboxValue()); + responses.add(resp); + } else if (stalResp instanceof SignResponse) { + SignResponseType resp = new SignResponseType(); + resp.setSignatureValue(((SignResponse) stalResp).getSignatureValue()); + responses.add(resp); + } else if (stalResp instanceof ErrorResponse) { + ErrorResponseType resp = new ErrorResponseType(); + resp.setErrorCode(((ErrorResponse) stalResp).getErrorCode()); + resp.setErrorMessage(((ErrorResponse) stalResp).getErrorMessage()); + responses.add(resp); + } else { + log.error("unknown STAL response type: " + stalResp.getClass()); + ErrorResponseType resp = new ErrorResponseType(); + resp.setErrorCode(4000); + resp.setErrorMessage("unknown STAL response type: " + stalResp.getClass()); + responses = Collections.singletonList((ResponseType) resp); + break; + } + } + return responses; + } + + public static List toSTAL(List responses) { + List stalResponses = new ArrayList(responses.size()); + for (ResponseType resp : responses) { + if (resp instanceof InfoboxReadResponseType) { + InfoboxReadResponse stalResp = new InfoboxReadResponse(); + stalResp.setInfoboxValue(((InfoboxReadResponseType) resp).getInfoboxValue()); + stalResponses.add(stalResp); + } else if (resp instanceof SignResponseType) { + SignResponse stalResp = new SignResponse(); + stalResp.setSignatureValue(((SignResponseType) resp).getSignatureValue()); + stalResponses.add(stalResp); + } else if (resp instanceof ErrorResponseType) { + ErrorResponse stalResp = new ErrorResponse(); + stalResp.setErrorCode(((ErrorResponseType) resp).getErrorCode()); + stalResp.setErrorMessage(((ErrorResponseType) resp).getErrorMessage()); + stalResponses.add(stalResp); + } else { + log.error("unknown STALService response type: " + resp.getClass()); + ErrorResponse stalResp = new ErrorResponse(); + stalResp.setErrorCode(4000); + stalResp.setErrorMessage("unknown STALService response type: " + resp.getClass()); + stalResponses = Collections.singletonList((STALResponse) stalResp); + break; + } + } + return stalResponses; + } +} diff --git a/pom.xml b/pom.xml index 3438e596..dbe2812e 100644 --- a/pom.xml +++ b/pom.xml @@ -1,12 +1,12 @@ - - 4.0.0 - at.gv.egiz - bku - pom - 1.0-SNAPSHOT - BKU - http://bku.egiz.gv.at + + 4.0.0 + at.gv.egiz + bku + pom + 1.0-SNAPSHOT + BKU + http://bku.egiz.gv.at utils bkucommon @@ -18,7 +18,7 @@ smccSTAL STALService BKUCommonGUI - BKUViewer + BKUViewer @@ -43,74 +43,74 @@ E-Government Innovation Center (EGIZ) http://www.egiz.gv.at - - - - - - maven-compiler-plugin - org.apache.maven.plugins - 2.0.2 - - - 1.6 - 1.6 - true - true - - - - maven-assembly-plugin - org.apache.maven.plugins - 2.2-beta-2 - - - maven-dependency-plugin - org.apache.maven.plugins - 2.0 - - - maven-jaxb2-plugin - org.jvnet.jaxb2.maven2 - 0.6.0 - - - jaxws-maven-plugin - org.codehaus.mojo - 1.10 - - - - - - maven-assembly-plugin - - - ${basedir}/src/main/assemblies/assembly-test.xml - - - - - - + + + + + + maven-compiler-plugin + org.apache.maven.plugins + 2.0.2 + + + 1.6 + 1.6 + true + true + + + + maven-assembly-plugin + org.apache.maven.plugins + 2.2-beta-2 + + + maven-dependency-plugin + org.apache.maven.plugins + 2.0 + + + + jaxws-maven-plugin + org.codehaus.mojo + 1.10 + + + + + + maven-assembly-plugin + + + ${basedir}/src/main/assemblies/assembly-test.xml + + + + + + @@ -129,39 +129,39 @@ http://download.java.net/maven/1/ legacy - - - - log4j - log4j - runtime - - - junit - junit - test - - - - - - log4j - log4j - 1.2.12 - runtime - - - commons-logging - commons-logging - 1.1.1 - compile - - - junit - junit - 4.4 - test - + + + + log4j + log4j + runtime + + + junit + junit + test + + + + + + log4j + log4j + 1.2.12 + runtime + + + commons-logging + commons-logging + 1.1.1 + compile + + + junit + junit + 4.4 + test + xerces xercesImpl @@ -172,39 +172,39 @@ xalan 2.7.0 - - iaik - iaik_jce_full_signed - 3.16 - compile - - - iaik - iaik_jce_me4se - 3.04 - - - iaik - iaik_ecc_signed - 2.15 - - - iaik - iaik_xsect - 1.14 - - - commons-fileupload - commons-fileupload - 1.2.1 - compile - - - commons-httpclient - commons-httpclient - 3.1 - compile - - - + + iaik + iaik_jce_full_signed + 3.16 + compile + + + iaik + iaik_jce_me4se + 3.04 + + + iaik + iaik_ecc_signed + 2.15 + + + iaik + iaik_xsect + 1.14 + + + commons-fileupload + commons-fileupload + 1.2.1 + compile + + + commons-httpclient + commons-httpclient + 3.1 + compile + + + \ No newline at end of file diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java index f3b94078..8ee70f1a 100644 --- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java +++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java @@ -65,7 +65,7 @@ public abstract class AbstractSMCCSTAL implements STAL { List responseList = new ArrayList(requestList .size()); for (STALRequest request : requestList) { - log.info("Processing: " + request); + log.info("Processing: " + request.getClass()); SMCCSTALRequestHandler handler = null; handler = handlerMap.get(request.getClass().getSimpleName()); if (handler != null) { @@ -78,7 +78,10 @@ public abstract class AbstractSMCCSTAL implements STAL { try { handler = handler.newInstance(); handler.init(signatureCard, getGUI()); - responseList.add(handler.handleRequest(request)); + STALResponse response = handler.handleRequest(request); + if (response != null) { + responseList.add(response); + } } catch (Exception e) { log.info("Error while handling STAL request:" + e); responseList.add(new ErrorResponse(6000)); -- cgit v1.2.3 From c2ae3db1bc6dcb8ba3eb3461c05e293917c004ca Mon Sep 17 00:00:00 2001 From: mcentner Date: Thu, 30 Oct 2008 10:33:29 +0000 Subject: Updated SMCC to use exclusive access and to throw exceptions upon locked or not activated cards. Improved locale support in the security layer request and response processing. Fixed issue in STAL which prevented the use of RSA-SHA1 signatures. Added additional parameters to the applet test pages. git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@128 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- .../main/java/at/gv/egiz/bku/gui/PinDocument.java | 2 +- .../egiz/bku/online/webapp/BKURequestHandler.java | 20 +- BKUOnline/src/main/webapp/HTTP-ohne.html | 11 +- BKUOnline/src/main/webapp/appletPage.jsp | 29 +- .../at/gv/egiz/stal/util/JCEAlgorithmNames.java | 4 +- .../gv/egiz/bku/binding/HTTPBindingProcessor.java | 3 +- .../gv/egiz/bku/slcommands/SLCommandContext.java | 17 +- .../impl/CreateXMLSignatureCommandImpl.java | 4 +- .../egiz/bku/slcommands/impl/ErrorResultImpl.java | 42 ++- .../slcommands/impl/InfoboxReadCommandImpl.java | 2 +- .../gv/egiz/bku/slcommands/impl/SLResultImpl.java | 8 +- .../bku/slcommands/impl/ErrorResultImplTest.java | 3 +- smcc/src/main/java/at/gv/egiz/smcc/ACOSCard.java | 348 ++++++++++++--------- .../at/gv/egiz/smcc/AbstractSignatureCard.java | 169 +++++++--- .../at/gv/egiz/smcc/FileNotFoundException.java | 38 +++ .../main/java/at/gv/egiz/smcc/LockedException.java | 38 +++ .../at/gv/egiz/smcc/NotActivatedException.java | 44 +++ .../src/main/java/at/gv/egiz/smcc/STARCOSCard.java | 339 ++++++++++++-------- smcc/src/main/java/at/gv/egiz/smcc/SWCard.java | 79 ++++- .../at/gv/egiz/smcc/SignatureCardException.java | 2 +- .../java/at/gv/egiz/smcc/SignatureCardFactory.java | 223 +++++++++++-- .../java/at/gv/egiz/smcc/util/SmartCardIO.java | 3 +- .../test/java/at/gv/egiz/smcc/STARCOSCardTest.java | 92 ++++++ .../bku/smccstal/InfoBoxReadRequestHandler.java | 8 + .../gv/egiz/bku/smccstal/SignRequestHandler.java | 10 +- 25 files changed, 1149 insertions(+), 389 deletions(-) create mode 100644 smcc/src/main/java/at/gv/egiz/smcc/FileNotFoundException.java create mode 100644 smcc/src/main/java/at/gv/egiz/smcc/LockedException.java create mode 100644 smcc/src/main/java/at/gv/egiz/smcc/NotActivatedException.java create mode 100644 smcc/src/test/java/at/gv/egiz/smcc/STARCOSCardTest.java (limited to 'STAL') diff --git a/BKUCommonGUI/src/main/java/at/gv/egiz/bku/gui/PinDocument.java b/BKUCommonGUI/src/main/java/at/gv/egiz/bku/gui/PinDocument.java index 8ae9d7a3..2054ae86 100644 --- a/BKUCommonGUI/src/main/java/at/gv/egiz/bku/gui/PinDocument.java +++ b/BKUCommonGUI/src/main/java/at/gv/egiz/bku/gui/PinDocument.java @@ -46,7 +46,7 @@ class PINDocument extends PlainDocument { @Override public void insertString(int offs, String str, AttributeSet a) throws BadLocationException { - if (pinSpec.getMaxLength() >= (getLength() + str.length())) { + if (pinSpec.getMaxLength() < 0 || pinSpec.getMaxLength() >= (getLength() + str.length())) { boolean matches = true; for (int i = 0; i < str.length(); i++) { Matcher m = pinPattern.matcher(str.substring(i, i + 1)); diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/BKURequestHandler.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/BKURequestHandler.java index 6f3b9d7f..9092e3f9 100644 --- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/BKURequestHandler.java +++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/BKURequestHandler.java @@ -44,6 +44,8 @@ import at.gv.egiz.org.apache.tomcat.util.http.AcceptLanguage; */ public class BKURequestHandler extends SpringBKUServlet { + private static final long serialVersionUID = 1L; + public final static String REDIRECT_URL = "appletPage.jsp"; protected Log log = LogFactory.getLog(BKURequestHandler.class); @@ -105,6 +107,8 @@ public class BKURequestHandler extends SpringBKUServlet { String width = getStringFromStream(bindingProcessor.getFormData("appletWidth"), charset); String height = getStringFromStream(bindingProcessor.getFormData("appletHeight"), charset); String background = getStringFromStream(bindingProcessor.getFormData("appletBackground"), charset); + String guiStyle = getStringFromStream(bindingProcessor.getFormData("appletGuiStyle"), charset); + String hashDataDisplay = getStringFromStream(bindingProcessor.getFormData("appletHashDataDisplay"), charset); if (width != null) { try { log.trace("Found applet width parameter: " + width); @@ -124,12 +128,16 @@ public class BKURequestHandler extends SpringBKUServlet { } } if (background != null) { - try { - log.trace("Found applet background parameter: " + background); - session.setAttribute("appletBackground", background); - } catch (NumberFormatException nfe) { - log.warn(nfe); - } + log.trace("Found applet background parameter: " + background); + session.setAttribute("appletBackground", background); + } + if (guiStyle != null) { + log.trace("Found applet GUI style parameter: " + guiStyle); + session.setAttribute("appletGuiStyle", guiStyle); + } + if (hashDataDisplay != null) { + log.trace("Found applet hash data display parameter: " + hashDataDisplay); + session.setAttribute("appletHashDataDisplay", hashDataDisplay); } resp.sendRedirect(REDIRECT_URL); diff --git a/BKUOnline/src/main/webapp/HTTP-ohne.html b/BKUOnline/src/main/webapp/HTTP-ohne.html index 1923113e..044432ce 100644 --- a/BKUOnline/src/main/webapp/HTTP-ohne.html +++ b/BKUOnline/src/main/webapp/HTTP-ohne.html @@ -92,8 +92,17 @@ legend { name="appletHeight" value="130" id="appletHeight">

+

+ + simple + advanced +

+

+ + external + internal +

-

at.gv.egiz BKUApplet - 1.0-SNAPSHOT + 1.0 provided - +
diff --git a/smccSTAL/pom.xml b/smccSTAL/pom.xml index d4a523b1..5c03cffd 100644 --- a/smccSTAL/pom.xml +++ b/smccSTAL/pom.xml @@ -11,6 +11,17 @@ smccSTAL smcc STAL 1.0 + + + + maven-compiler-plugin + org.apache.maven.plugins + + false + + + + at.gv.egiz -- cgit v1.2.3 From 11c83e13e032738ee927f22196dc9ca43589a8a4 Mon Sep 17 00:00:00 2001 From: mcentner Date: Mon, 24 Nov 2008 14:11:39 +0000 Subject: Version set to 1.0.0 git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@193 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 14 +++++++------- BKUCommonGUI/pom.xml | 8 ++++---- BKULocal/pom.xml | 14 +++++++------- BKULocalApp/pom.xml | 8 ++++---- BKUOnline/pom.xml | 10 +++++----- BKUOnline/src/main/webapp/appletPage.jsp | 2 +- BKUViewer/pom.xml | 6 +++--- STAL/pom.xml | 4 ++-- STALService/pom.xml | 8 ++++---- bkucommon/pom.xml | 8 ++++---- pom.xml | 6 +++--- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 10 +++++----- utils/pom.xml | 8 ++++---- 14 files changed, 55 insertions(+), 55 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index eaaa5820..10cfa53a 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.0 + 1.0.0-SNAPSHOT 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.0 + 1.0.0-SNAPSHOT @@ -116,27 +116,27 @@ at.gv.egiz smcc - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz STAL - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz STALService - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz smccSTAL - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz BKUCommonGUI - 1.0 + 1.0.0-SNAPSHOT commons-logging diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index c620746f..1cedb84d 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -3,23 +3,23 @@ bku at.gv.egiz - 1.0 + 1.0.0-SNAPSHOT 4.0.0 at.gv.egiz BKUCommonGUI BKU Common GUI - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz smcc - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz STAL - 1.0 + 1.0.0-SNAPSHOT compile diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index 36503ca0..48b6d590 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -3,14 +3,14 @@ bku at.gv.egiz - 1.0 + 1.0.0-SNAPSHOT 4.0.0 at.gv.egiz BKULocal war BKU Local - 1.0-SNAPSHOT + 1.0.0-SNAPSHOT scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal @@ -57,22 +57,22 @@ at.gv.egiz STAL - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz bkucommon - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz smcc - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz smccSTAL - 1.0 + 1.0.0-SNAPSHOT org.springframework @@ -102,7 +102,7 @@ at.gv.egiz BKUViewer - 1.0 + 1.0.0-SNAPSHOT diff --git a/BKULocalApp/pom.xml b/BKULocalApp/pom.xml index f05aeba0..4476f3b5 100644 --- a/BKULocalApp/pom.xml +++ b/BKULocalApp/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.0-SNAPSHOT + 1.0.0-SNAPSHOT 4.0.0 at.gv.egiz.bku BKULocalApp BKU Local App - 1.0-SNAPSHOT + 1.0.0-SNAPSHOT @@ -77,13 +77,13 @@ at.gv.egiz BKULocal - 1.0-SNAPSHOT + 1.0.0-SNAPSHOT war utils at.gv.egiz - 1.0-SNAPSHOT + 1.0.0-SNAPSHOT compile diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index a1d92390..cee17e20 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -4,14 +4,14 @@ bku at.gv.egiz - 1.0 + 1.0.0-SNAPSHOT 4.0.0 at.gv.egiz BKUOnline war BKU Online - 1.0 + 1.0.0-SNAPSHOT @@ -25,12 +25,12 @@ at.gv.egiz bkucommon - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz BKUViewer - 1.0 + 1.0.0-SNAPSHOT commons-logging @@ -62,7 +62,7 @@ at.gv.egiz BKUApplet - 1.0 + 1.0.0-SNAPSHOT provided \ No newline at end of file diff --git a/bkucommon/pom.xml b/bkucommon/pom.xml index 60c31a02..076f516c 100644 --- a/bkucommon/pom.xml +++ b/bkucommon/pom.xml @@ -4,24 +4,24 @@ bku at.gv.egiz - 1.0 + 1.0.0-SNAPSHOT 4.0.0 at.gv.egiz bkucommon BKU Common - 1.0 + 1.0.0-SNAPSHOT http://maven.apache.org at.gv.egiz utils - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz STAL - 1.0 + 1.0.0-SNAPSHOT commons-logging diff --git a/pom.xml b/pom.xml index 54413a62..fa86e771 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ at.gv.egiz bku pom - 1.0 + 1.0.0-SNAPSHOT BKU http://bku.egiz.gv.at @@ -97,7 +97,7 @@ org.apache.maven.plugins maven-release-plugin - 2.0-beta-7 + 2.0-beta-8 @@ -211,7 +211,7 @@ iaik iaik_pki - 1.0-SNAPSHOT + 1.0-MOCCA compile diff --git a/smcc/pom.xml b/smcc/pom.xml index 39af114f..ba1ffcce 100644 --- a/smcc/pom.xml +++ b/smcc/pom.xml @@ -3,14 +3,14 @@ bku at.gv.egiz - 1.0 + 1.0.0-SNAPSHOT 4.0.0 at.gv.egiz smcc smcc jar - 1.0 + 1.0.0-SNAPSHOT http://bku.egiz.gv.at diff --git a/smccSTAL/pom.xml b/smccSTAL/pom.xml index 5c03cffd..78ba1aea 100644 --- a/smccSTAL/pom.xml +++ b/smccSTAL/pom.xml @@ -4,13 +4,13 @@ bku at.gv.egiz - 1.0 + 1.0.0-SNAPSHOT 4.0.0 at.gv.egiz smccSTAL smcc STAL - 1.0 + 1.0.0-SNAPSHOT @@ -26,17 +26,17 @@ at.gv.egiz STAL - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz smcc - 1.0 + 1.0.0-SNAPSHOT at.gv.egiz BKUCommonGUI - 1.0 + 1.0.0-SNAPSHOT iaik diff --git a/utils/pom.xml b/utils/pom.xml index b980470d..871dbb0a 100644 --- a/utils/pom.xml +++ b/utils/pom.xml @@ -4,14 +4,14 @@ bku at.gv.egiz - 1.0 + 1.0.0-SNAPSHOT 4.0.0 at.gv.egiz utils BKU Utils jar - 1.0 + 1.0.0-SNAPSHOT http://bku.egiz.gv.at @@ -53,10 +53,10 @@ add dependencies to determine build order of BKU modules | (scope provided -> don't include dependencies in assembly) at.gv.egiz - slbinding 1.0-SNAPSHOT + slbinding 1.0.0-SNAPSHOTOT provided at.gv.egiz idlink - 1.0-SNAPSHOT provided + provided - - - - - maven-jar-plugin - - - - sign - - - - - - false - false - - false - true - - - test-applet signer - ./keystore.ks - storepass - keypass - true - - - - maven-dependency-plugin - - - copytestlibs - - copy - - - - - commons-logging - commons-logging - - - iaik - iaik_jce_me4se - - - ${project.build.directory}/test-libs - - - - - - org.apache.maven.plugins - maven-surefire-plugin - - true - - - - - - - at.gv.egiz - smcc - 1.0.0-SNAPSHOT - - - at.gv.egiz - STAL - 1.0.0-SNAPSHOT - - - at.gv.egiz - STALService - 1.0.0-SNAPSHOT - - - at.gv.egiz - smccSTAL - 1.0.0-SNAPSHOT - - - at.gv.egiz - BKUCommonGUI - 1.0.0-SNAPSHOT - - - commons-logging - commons-logging - - - + + + bku + at.gv.egiz + 1.0.1 + + 4.0.0 + at.gv.egiz + BKUApplet + BKU Applet + 1.0.1 + + + + maven-dependency-plugin + + + unpack + + unpack-dependencies + + + at.gv.egiz + true + ${project.build.outputDirectory} + META-INF\/ + + + + + maven-jar-plugin + + + + sign + + + + + + false + false + + false + true + + + test-applet signer + ./keystore.ks + storepass + keypass + true + + + + maven-dependency-plugin + + + copytestlibs + + copy + + + + + commons-logging + commons-logging + + + iaik + iaik_jce_me4se + + + ${project.build.directory}/test-libs + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + true + + + + + + + at.gv.egiz + smcc + 1.0.1 + + + at.gv.egiz + STAL + 1.0.1 + + + at.gv.egiz + STALService + 1.0.1 + + + at.gv.egiz + smccSTAL + 1.0.1 + + + at.gv.egiz + BKUCommonGUI + 1.0.1 + + + commons-logging + commons-logging + + + \ No newline at end of file diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index 1cedb84d..3ae1717d 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -1,39 +1,38 @@ - - - - bku - at.gv.egiz - 1.0.0-SNAPSHOT - - 4.0.0 - at.gv.egiz - BKUCommonGUI - BKU Common GUI - 1.0.0-SNAPSHOT - - - at.gv.egiz - smcc - 1.0.0-SNAPSHOT - - - at.gv.egiz - STAL - 1.0.0-SNAPSHOT - compile - - - - - - maven-compiler-plugin - org.apache.maven.plugins - - false - - - - + + + bku + at.gv.egiz + 1.0.1 + + 4.0.0 + at.gv.egiz + BKUCommonGUI + BKU Common GUI + 1.0.1 + + + at.gv.egiz + smcc + 1.0.1 + + + at.gv.egiz + STAL + 1.0.1 + compile + + + + + + maven-compiler-plugin + org.apache.maven.plugins + + false + + + + - + + \ No newline at end of file diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index 54de31b2..3cf9b0cd 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -1,112 +1,111 @@ - - - - bku - at.gv.egiz - 1.0.0-SNAPSHOT - - 4.0.0 - at.gv.egiz - BKULocal - war - BKU Local - 1.0.0-SNAPSHOT - - - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - - - - - maven-war-plugin - 2.0.2 - - - true - - - - ${project.version}-r${buildNumber} - - - - - - org.codehaus.mojo - maven-buildnumber-plugin - 0.9.6 - - - validate - - create - - - - - false - false - - - - - - - - at.gv.egiz - STAL - 1.0.0-SNAPSHOT - - - at.gv.egiz - bkucommon - 1.0.0-SNAPSHOT - - - at.gv.egiz - smcc - 1.0.0-SNAPSHOT - - - at.gv.egiz - smccSTAL - 1.0.0-SNAPSHOT - - - org.springframework - spring-core - 2.5.5 - - - javax.servlet - servlet-api - 2.5 - provided - - - org.springframework - spring-web - 2.5.5 - - - commons-logging - commons-logging - - - at.gv.egiz - BKUApplet - 1.0.0-SNAPSHOT - - - at.gv.egiz - BKUViewer - 1.0.0-SNAPSHOT - - - - - Tomcat60 - - + + + bku + at.gv.egiz + 1.0.1 + + 4.0.0 + at.gv.egiz + BKULocal + war + BKU Local + 1.0.1 + + + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1/BKULocal + + + + + maven-war-plugin + 2.0.2 + + + true + + + + ${project.version}-r${buildNumber} + + + + + + org.codehaus.mojo + maven-buildnumber-plugin + 0.9.6 + + + validate + + create + + + + + false + false + + + + + + + + at.gv.egiz + STAL + 1.0.1 + + + at.gv.egiz + bkucommon + 1.0.1 + + + at.gv.egiz + smcc + 1.0.1 + + + at.gv.egiz + smccSTAL + 1.0.1 + + + org.springframework + spring-core + 2.5.5 + + + javax.servlet + servlet-api + 2.5 + provided + + + org.springframework + spring-web + 2.5.5 + + + commons-logging + commons-logging + + + at.gv.egiz + BKUApplet + 1.0.1 + + + at.gv.egiz + BKUViewer + 1.0.1 + + + + + Tomcat60 + + \ No newline at end of file diff --git a/BKULocalApp/pom.xml b/BKULocalApp/pom.xml index 4476f3b5..2a5b8d19 100644 --- a/BKULocalApp/pom.xml +++ b/BKULocalApp/pom.xml @@ -1,101 +1,100 @@ - - - bku - at.gv.egiz - 1.0.0-SNAPSHOT - - 4.0.0 - at.gv.egiz.bku - BKULocalApp - BKU Local App - 1.0.0-SNAPSHOT - - - - - - maven-compiler-plugin - org.apache.maven.plugins - 2.0.2 - - 1.6 - 1.6 - true - true - - - - - - - org.apache.maven.plugins - maven-jar-plugin - - - - true - at.gv.egiz.bku.local.app.BKULauncher - - - development - ${pom.url} - splash.png - - - - - - maven-dependency-plugin - - - copy-dependencies - package - - copy-dependencies - - - ${project.build.directory} - false - false - true - - - - - - - - - - - commons-logging - commons-logging - 1.1.1 - compile - - - at.gv.egiz - BKULocal - 1.0.0-SNAPSHOT - war - - - utils - at.gv.egiz - 1.0.0-SNAPSHOT - compile - - - commons-cli - commons-cli - 1.0 - - - org.mortbay.jetty - jetty - 6.1.10 - - - + + + bku + at.gv.egiz + 1.0.1 + + 4.0.0 + at.gv.egiz.bku + BKULocalApp + BKU Local App + 1.0.1 + + + + + + maven-compiler-plugin + org.apache.maven.plugins + 2.0.2 + + 1.6 + 1.6 + true + true + + + + + + + org.apache.maven.plugins + maven-jar-plugin + + + + true + at.gv.egiz.bku.local.app.BKULauncher + + + development + ${pom.url} + splash.png + + + + + + maven-dependency-plugin + + + copy-dependencies + package + + copy-dependencies + + + ${project.build.directory} + false + false + true + + + + + + + + + + + commons-logging + commons-logging + 1.1.1 + compile + + + at.gv.egiz + BKULocal + 1.0.1 + war + + + utils + at.gv.egiz + 1.0.1 + compile + + + commons-cli + commons-cli + 1.0 + + + org.mortbay.jetty + jetty + 6.1.10 + + + \ No newline at end of file diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index 0704cc12..7bee3a02 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -1,222 +1,219 @@ - - - - bku - at.gv.egiz - 1.0.0-SNAPSHOT - - 4.0.0 - at.gv.egiz - BKUOnline - war - BKU Online - 1.0.0-SNAPSHOT - - - - tlc - TLC Repository - http://commons.ucalgary.ca/pub/m2 - - - - - - at.gv.egiz - bkucommon - 1.0.0-SNAPSHOT - - - at.gv.egiz - BKUViewer - 1.0.0-SNAPSHOT - - - commons-logging - commons-logging - - - org.springframework - spring-core - 2.5.5 - - - javax.servlet - servlet-api - 2.5 - provided - - - org.springframework - spring-web - 2.5.5 - - - at.gv.egiz - STALService - 1.0.0-SNAPSHOT - compile - - - - at.gv.egiz - BKUApplet - 1.0.0-SNAPSHOT - provided - - - at.gv.egiz - STALService - 1.0.0-SNAPSHOT - - - - - com.sun.xml.ws - jaxws-rt - 2.1.4 - - - - - - Tomcat60 - - - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKUOnline - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKUOnline - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKUOnline - - - - - maven-dependency-plugin - - - copyapplet-dependencies - - copy-dependencies - - - ${project.build.directory}/${project.build.finalName}/applet - - at.gv.egiz - BKUApplet - true - - - - copyapplet - - copy - - - ${project.build.directory}/${project.build.finalName}/applet - - - commons-logging - commons-logging - - - iaik - iaik_jce_me4se - - - - - - - - - - maven-war-plugin - 2.0.2 - - - - true - - - - - - ${project.version}-r${buildNumber} - - - - - - - org.codehaus.mojo - maven-buildnumber-plugin - 0.9.6 - - - validate - - create - - - - - false - false - - - - - + + + bku + at.gv.egiz + 1.0.1 + + 4.0.0 + at.gv.egiz + BKUOnline + war + BKU Online + 1.0.1 + + + + tlc + TLC Repository + http://commons.ucalgary.ca/pub/m2 + + + + + + at.gv.egiz + bkucommon + 1.0.1 + + + at.gv.egiz + BKUViewer + 1.0.1 + + + commons-logging + commons-logging + + + org.springframework + spring-core + 2.5.5 + + + javax.servlet + servlet-api + 2.5 + provided + + + org.springframework + spring-web + 2.5.5 + + + at.gv.egiz + STALService + 1.0.1 + compile + + + + at.gv.egiz + BKUApplet + 1.0.1 + provided + + + at.gv.egiz + STALService + 1.0.1 + + + + + com.sun.xml.ws + jaxws-rt + 2.1.4 + + + + + + Tomcat60 + + + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1/BKUOnline + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1/BKUOnline + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1/BKUOnline + + + + + maven-dependency-plugin + + + copyapplet-dependencies + + copy-dependencies + + + ${project.build.directory}/${project.build.finalName}/applet + + at.gv.egiz + BKUApplet + true + + + + copyapplet + + copy + + + ${project.build.directory}/${project.build.finalName}/applet + + + commons-logging + commons-logging + + + iaik + iaik_jce_me4se + + + + + + + + + + maven-war-plugin + 2.0.2 + + + + true + + + + + + ${project.version}-r${buildNumber} + + + + + + + org.codehaus.mojo + maven-buildnumber-plugin + 0.9.6 + + + validate + + create + + + + + false + false + + + + + \ No newline at end of file diff --git a/BKUViewer/pom.xml b/BKUViewer/pom.xml index 5af7c057..2af2a6cf 100644 --- a/BKUViewer/pom.xml +++ b/BKUViewer/pom.xml @@ -1,21 +1,20 @@ - + bku at.gv.egiz - 1.0.0-SNAPSHOT + 1.0.1 4.0.0 at.gv.egiz BKUViewer BKU viewer components - 1.0.0-SNAPSHOT + 1.0.1 at.gv.egiz bkucommon - 1.0.0-SNAPSHOT + 1.0.1 commons-logging diff --git a/STAL/pom.xml b/STAL/pom.xml index 884c86a2..a1e76cd7 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -1,15 +1,15 @@ - + bku at.gv.egiz - 1.0.0-SNAPSHOT + 1.0.1 4.0.0 at.gv.egiz STAL STAL - 1.0.0-SNAPSHOT + 1.0.1 commons-logging diff --git a/STALService/pom.xml b/STALService/pom.xml index aa8ce064..51d2c6d8 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -1,22 +1,21 @@ - + bku at.gv.egiz - 1.0.0-SNAPSHOT + 1.0.1 4.0.0 at.gv.egiz STALService STAL Service - 1.0.0-SNAPSHOT + 1.0.1 at.gv.egiz STAL - 1.0.0-SNAPSHOT + 1.0.1 + true
+ true \ No newline at end of file diff --git a/pom.xml b/pom.xml index 39528296..cc8387db 100644 --- a/pom.xml +++ b/pom.xml @@ -1,231 +1,224 @@ - - - 4.0.0 - at.gv.egiz - bku - pom - 1.0.0-SNAPSHOT - BKU - http://bku.egiz.gv.at - - utils - bkucommon - STAL - BKUOnline - smcc - BKULocal - BKUApplet - smccSTAL - STALService - BKUCommonGUI - BKUViewer - BKULocalApp - - - - mcentner - Martin Centner - mcentner@egiz.gv.at - - - wbauer - Wolfgang Bauer - wbauer@egiz.gv.at - - - corthacker - Clemens Orthacker - corthacker@egiz.gv.at - - - - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk - scm:svn:svn+ssh://svn.egovlabs.gv.at/svnroot/mocca/trunk - svn://svn.egovlabs.gv.at/svnroot/mocca/trunk - - - E-Government Innovation Center (EGIZ) - http://www.egiz.gv.at - - - - - - maven-compiler-plugin - org.apache.maven.plugins - 2.0.2 - - - 1.6 - 1.6 - true - true - UTF-8 - - - - maven-resources-plugin - - UTF-8 - - - - maven-assembly-plugin - org.apache.maven.plugins - 2.2-beta-2 - - - maven-dependency-plugin - org.apache.maven.plugins - 2.0 - - - - jaxws-maven-plugin - org.codehaus.mojo - 1.10 - - - org.apache.maven.plugins - maven-release-plugin - 2.0-beta-7 - - - - - - maven-assembly-plugin - - - ${basedir}/src/main/assemblies/assembly-test.xml - - - - - - - - - - mocca-egovlabs - MOCCA EGovLabs - http://mocca.egovlabs.gv.at/m2/repository/ - - - maven2-repository.dev.java.net - Java.net Repository for Maven 2 - http://download.java.net/maven/2/ - - - maven1-repository.dev.java.net - Java.net Repository for Maven 1 - http://download.java.net/maven/1/ - legacy - - - - - log4j - log4j - runtime - - - junit - junit - test - - - - - - log4j - log4j - 1.2.12 - runtime - - - commons-logging - commons-logging - 1.1.1 - compile - - - junit - junit - 4.4 - test - - - xerces - xercesImpl - 2.9.1 - - - xalan - xalan - 2.7.0 - - - iaik - iaik_jce_full_signed - 3.16 - compile - - - iaik - iaik_jce_me4se - 3.04 - - - iaik - iaik_ecc_signed - 2.15 - - - iaik - iaik_xsect - 1.14 - - - iaik - iaik_pki - 1.0-MOCCA - compile - - - commons-fileupload - commons-fileupload - 1.2.1 - compile - - - commons-httpclient - commons-httpclient - 3.1 - compile - - - + + 4.0.0 + at.gv.egiz + bku + pom + 1.0.1 + BKU + http://bku.egiz.gv.at + + utils + bkucommon + STAL + BKUOnline + smcc + BKULocal + BKUApplet + smccSTAL + STALService + BKUCommonGUI + BKUViewer + BKULocalApp + + + + mcentner + Martin Centner + mcentner@egiz.gv.at + + + wbauer + Wolfgang Bauer + wbauer@egiz.gv.at + + + corthacker + Clemens Orthacker + corthacker@egiz.gv.at + + + + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1 + scm:svn:svn+ssh://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1 + svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1 + + + E-Government Innovation Center (EGIZ) + http://www.egiz.gv.at + + + + + + maven-compiler-plugin + org.apache.maven.plugins + 2.0.2 + + + 1.6 + 1.6 + true + true + UTF-8 + + + + maven-resources-plugin + + UTF-8 + + + + maven-assembly-plugin + org.apache.maven.plugins + 2.2-beta-2 + + + maven-dependency-plugin + org.apache.maven.plugins + 2.0 + + + + jaxws-maven-plugin + org.codehaus.mojo + 1.10 + + + org.apache.maven.plugins + maven-release-plugin + 2.0-beta-7 + + + + + + maven-assembly-plugin + + + ${basedir}/src/main/assemblies/assembly-test.xml + + + + + + + + + + mocca-egovlabs + MOCCA EGovLabs + http://mocca.egovlabs.gv.at/m2/repository/ + + + maven2-repository.dev.java.net + Java.net Repository for Maven 2 + http://download.java.net/maven/2/ + + + maven1-repository.dev.java.net + Java.net Repository for Maven 1 + http://download.java.net/maven/1/ + legacy + + + + + log4j + log4j + runtime + + + junit + junit + test + + + + + + log4j + log4j + 1.2.12 + runtime + + + commons-logging + commons-logging + 1.1.1 + compile + + + junit + junit + 4.4 + test + + + xerces + xercesImpl + 2.9.1 + + + xalan + xalan + 2.7.0 + + + iaik + iaik_jce_full_signed + 3.16 + compile + + + iaik + iaik_jce_me4se + 3.04 + + + iaik + iaik_ecc_signed + 2.15 + + + iaik + iaik_xsect + 1.14 + + + iaik + iaik_pki + 1.0-MOCCA + compile + + + commons-fileupload + commons-fileupload + 1.2.1 + compile + + + commons-httpclient + commons-httpclient + 3.1 + compile + + + \ No newline at end of file diff --git a/smcc/pom.xml b/smcc/pom.xml index ba1ffcce..ffdba367 100644 --- a/smcc/pom.xml +++ b/smcc/pom.xml @@ -1,43 +1,42 @@ - - - - bku - at.gv.egiz - 1.0.0-SNAPSHOT - - 4.0.0 - at.gv.egiz - smcc - smcc - jar - 1.0.0-SNAPSHOT - http://bku.egiz.gv.at - - - - maven-compiler-plugin - org.apache.maven.plugins - - false - - - - - - - commons-logging - commons-logging - - - junit - junit - 3.8.1 - test - - - - + + + bku + at.gv.egiz + 1.0.1 + + 4.0.0 + at.gv.egiz + smcc + smcc + jar + 1.0.1 + http://bku.egiz.gv.at + + + + maven-compiler-plugin + org.apache.maven.plugins + + false + + + + + + + commons-logging + commons-logging + + + junit + junit + 3.8.1 + test + + + + \ No newline at end of file diff --git a/smccSTAL/pom.xml b/smccSTAL/pom.xml index 78ba1aea..6729f3f0 100644 --- a/smccSTAL/pom.xml +++ b/smccSTAL/pom.xml @@ -1,50 +1,48 @@ - - - - bku - at.gv.egiz - 1.0.0-SNAPSHOT - - 4.0.0 - at.gv.egiz - smccSTAL - smcc STAL - 1.0.0-SNAPSHOT - - - - maven-compiler-plugin - org.apache.maven.plugins - - false - - - - - - - at.gv.egiz - STAL - 1.0.0-SNAPSHOT - - - at.gv.egiz - smcc - 1.0.0-SNAPSHOT - - - at.gv.egiz - BKUCommonGUI - 1.0.0-SNAPSHOT - - - iaik - iaik_jce_me4se - - - commons-logging - commons-logging - - + + + bku + at.gv.egiz + 1.0.1 + + 4.0.0 + at.gv.egiz + smccSTAL + smcc STAL + 1.0.1 + + + + maven-compiler-plugin + org.apache.maven.plugins + + false + + + + + + + at.gv.egiz + STAL + 1.0.1 + + + at.gv.egiz + smcc + 1.0.1 + + + at.gv.egiz + BKUCommonGUI + 1.0.1 + + + iaik + iaik_jce_me4se + + + commons-logging + commons-logging + + \ No newline at end of file diff --git a/utils/pom.xml b/utils/pom.xml index 871dbb0a..b0769293 100644 --- a/utils/pom.xml +++ b/utils/pom.xml @@ -1,77 +1,72 @@ - - - - bku - at.gv.egiz - 1.0.0-SNAPSHOT - - 4.0.0 - at.gv.egiz - utils - BKU Utils - jar - 1.0.0-SNAPSHOT - http://bku.egiz.gv.at - - - - - - - - commons-logging - commons-logging - - - iaik - iaik_jce_full_signed - - - iaik - iaik_ecc_signed - - - iaik - iaik_xsect - - - - - + + + bku + at.gv.egiz + 1.0.1 + + 4.0.0 + at.gv.egiz + utils + BKU Utils + jar + 1.0.1 + http://bku.egiz.gv.at + + + + + + + + commons-logging + commons-logging + + + iaik + iaik_jce_full_signed + + + iaik + iaik_ecc_signed + + + iaik + iaik_xsect + + + + + \ No newline at end of file -- cgit v1.2.3 From 86962d8745b41a6cdb9fd95496176e698c0f6a9c Mon Sep 17 00:00:00 2001 From: mcentner Date: Tue, 25 Nov 2008 07:47:48 +0000 Subject: [maven-release-plugin] prepare for next development iteration git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@203 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 14 +++++++------- BKUCommonGUI/pom.xml | 8 ++++---- BKULocal/pom.xml | 22 +++++++++++----------- BKULocalApp/pom.xml | 8 ++++---- BKUOnline/pom.xml | 20 ++++++++++---------- BKUViewer/pom.xml | 6 +++--- STAL/pom.xml | 4 ++-- STALService/pom.xml | 6 +++--- bkucommon/pom.xml | 8 ++++---- pom.xml | 8 ++++---- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 10 +++++----- utils/pom.xml | 4 ++-- 13 files changed, 61 insertions(+), 61 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index 6f900ad3..1d880919 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.1 + 1.0.1-SNAPSHOT 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.0.1 + 1.0.1-SNAPSHOT @@ -117,27 +117,27 @@ at.gv.egiz smcc - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz STAL - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz STALService - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz smccSTAL - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz BKUCommonGUI - 1.0.1 + 1.0.1-SNAPSHOT commons-logging diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index 3ae1717d..21518416 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -2,23 +2,23 @@ bku at.gv.egiz - 1.0.1 + 1.0.1-SNAPSHOT 4.0.0 at.gv.egiz BKUCommonGUI BKU Common GUI - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz smcc - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz STAL - 1.0.1 + 1.0.1-SNAPSHOT compile diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index 3cf9b0cd..9fe36269 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.0.1 + 1.0.1-SNAPSHOT 4.0.0 at.gv.egiz BKULocal war BKU Local - 1.0.1 + 1.0.1-SNAPSHOT - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.1/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal @@ -56,22 +56,22 @@ at.gv.egiz STAL - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz bkucommon - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz smcc - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz smccSTAL - 1.0.1 + 1.0.1-SNAPSHOT org.springframework @@ -96,12 +96,12 @@ at.gv.egiz BKUApplet - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz BKUViewer - 1.0.1 + 1.0.1-SNAPSHOT diff --git a/BKULocalApp/pom.xml b/BKULocalApp/pom.xml index 2a5b8d19..c0d406b3 100644 --- a/BKULocalApp/pom.xml +++ b/BKULocalApp/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.1 + 1.0.1-SNAPSHOT 4.0.0 at.gv.egiz.bku BKULocalApp BKU Local App - 1.0.1 + 1.0.1-SNAPSHOT @@ -76,13 +76,13 @@ at.gv.egiz BKULocal - 1.0.1 + 1.0.1-SNAPSHOT war utils at.gv.egiz - 1.0.1 + 1.0.1-SNAPSHOT compile diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index 7bee3a02..88cdf9e8 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.0.1 + 1.0.1-SNAPSHOT 4.0.0 at.gv.egiz BKUOnline war BKU Online - 1.0.1 + 1.0.1-SNAPSHOT @@ -23,12 +23,12 @@ at.gv.egiz bkucommon - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz BKUViewer - 1.0.1 + 1.0.1-SNAPSHOT commons-logging @@ -53,20 +53,20 @@ at.gv.egiz STALService - 1.0.1 + 1.0.1-SNAPSHOT compile at.gv.egiz BKUApplet - 1.0.1 + 1.0.1-SNAPSHOT provided at.gv.egiz STALService - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz BKUApplet - 1.0.1-SNAPSHOT + 1.0.2 provided at.gv.egiz STALService - 1.0.1-SNAPSHOT + 1.0.2 at.gv.egiz BKUApplet - 1.0.2 + 1.0.2-SNAPSHOT provided at.gv.egiz STALService - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz BKUApplet - 1.0.2-SNAPSHOT + 1.0.1-SNAPSHOT provided at.gv.egiz STALService - 1.0.2-SNAPSHOT + 1.0.1-SNAPSHOT at.gv.egiz BKUApplet - 1.0.1-SNAPSHOT + 1.0.1 provided at.gv.egiz STALService - 1.0.1-SNAPSHOT + 1.0.1 at.gv.egiz BKUApplet - 1.0.1 + 1.0.1-SNAPSHOT provided at.gv.egiz STALService - 1.0.1 + 1.0.1-SNAPSHOT at.gv.egiz BKUApplet - 1.0.1-SNAPSHOT + 1.0.1 provided at.gv.egiz STALService - 1.0.1-SNAPSHOT + 1.0.1 at.gv.egiz BKUApplet - 1.0.1 + 1.0.2-SNAPSHOT provided at.gv.egiz STALService - 1.0.1 + 1.0.2-SNAPSHOT - - + diff --git a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java index e7fb928a..5e3a1a99 100644 --- a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java +++ b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java @@ -85,7 +85,7 @@ public class STALRequestBrokerImpl implements STALRequestBroker { * @pre requests: either single SignRequest, QuitRequest or multiple ReadInfoboxRequests */ @Override - public List handleRequest(List stalRequests) { + public List handleRequest(List stalRequests) { if (interrupted) { return null; } diff --git a/STAL/src/main/java/at/gv/egiz/stal/STAL.java b/STAL/src/main/java/at/gv/egiz/stal/STAL.java index de29de9a..7fa7cb45 100644 --- a/STAL/src/main/java/at/gv/egiz/stal/STAL.java +++ b/STAL/src/main/java/at/gv/egiz/stal/STAL.java @@ -32,7 +32,7 @@ public interface STAL { * @param aRequestList * @return */ - public List handleRequest(List aRequestList); + public List handleRequest(List aRequestList); /** * Sets the preferred locale for userinteraction (e.g. PIN dialogs). diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/SLCommandFactory.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/SLCommandFactory.java index 9c98ef8a..bec2b253 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/SLCommandFactory.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/SLCommandFactory.java @@ -17,6 +17,7 @@ package at.gv.egiz.bku.slcommands; import java.io.IOException; +import java.io.Reader; import java.net.URL; import java.util.HashMap; import java.util.Map; @@ -41,10 +42,12 @@ import org.apache.commons.logging.LogFactory; import org.xml.sax.SAXException; import org.xml.sax.SAXParseException; +import at.buergerkarte.namespaces.cardchannel.ObjectFactory; import at.gv.egiz.bku.slexceptions.SLCommandException; import at.gv.egiz.bku.slexceptions.SLExceptionMessages; import at.gv.egiz.bku.slexceptions.SLRequestException; import at.gv.egiz.bku.slexceptions.SLRuntimeException; +import at.gv.egiz.bku.utils.DebugReader; import at.gv.egiz.slbinding.RedirectEventFilter; import at.gv.egiz.slbinding.RedirectUnmarshallerListener; @@ -163,8 +166,9 @@ public class SLCommandFactory { if (jaxbContext == null) { try { String slPkg = at.buergerkarte.namespaces.securitylayer._1.ObjectFactory.class.getPackage().getName(); - String xmldsigPkg = org.w3._2000._09.xmldsig_.ObjectFactory.class.getPackage().getName(); - setJaxbContext(JAXBContext.newInstance(slPkg + ":" + xmldsigPkg)); + String xmldsigPkg = org.w3._2000._09.xmldsig_.ObjectFactory.class.getPackage().getName(); + String cardChannelPkg = at.buergerkarte.namespaces.cardchannel.ObjectFactory.class.getPackage().getName(); + setJaxbContext(JAXBContext.newInstance(slPkg + ":" + xmldsigPkg + ":" + cardChannelPkg)); } catch (JAXBException e) { log.error("Failed to setup JAXBContext security layer request.", e); throw new SLRuntimeException(e); @@ -325,12 +329,31 @@ public class SLCommandFactory { */ @SuppressWarnings("unchecked") public SLCommand createSLCommand(Source source, SLCommandContext context) - throws SLCommandException, SLRuntimeException, SLRequestException { + throws SLCommandException, SLRuntimeException, SLRequestException { + + DebugReader dr = null; + if (log.isTraceEnabled() && source instanceof StreamSource) { + StreamSource streamSource = (StreamSource) source; + if (streamSource.getReader() != null) { + dr = new DebugReader(streamSource.getReader(), "SLCommand unmarshalled from:\n"); + streamSource.setReader(dr); + } + } - Object object = unmarshal(source); + Object object; + try { + object = unmarshal(source); + } catch (SLRequestException e) { + throw e; + } finally { + if (dr != null) { + log.trace(dr.getCachedString()); + } + } + if (!(object instanceof JAXBElement)) { // invalid request - log.info("Invalid security layer request. " + object.toString()); + log.info("Invalid security layer request. " + object.toString()); throw new SLRequestException(3002, SLExceptionMessages.EC3002_INVALID, new Object[]{object.toString()}); } @@ -343,7 +366,9 @@ public class SLCommandFactory { throw new SLCommandException(4011, SLExceptionMessages.EC4011_NOTIMPLEMENTED, new Object[]{qName.toString()}); } - + + + // try to instantiate SLCommand slCommand; try { @@ -360,6 +385,7 @@ public class SLCommandFactory { e); throw new SLRuntimeException(e); } + slCommand.init(context, (JAXBElement) object); return slCommand; diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractBinaryFileInfobox.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractBinaryFileInfobox.java index 07ca639c..23394bd5 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractBinaryFileInfobox.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractBinaryFileInfobox.java @@ -37,7 +37,7 @@ public abstract class AbstractBinaryFileInfobox extends AbstractInfoboxImpl impl /** * Is this infobox' content an XML entity? */ - private boolean isXMLEntity = false; + protected boolean isXMLEntity = false; /** * @return true if this infobox' content is an XML entity or false otherwise. @@ -61,8 +61,6 @@ public abstract class AbstractBinaryFileInfobox extends AbstractInfoboxImpl impl } } - - } diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractInfoboxCommandImpl.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractInfoboxCommandImpl.java index 305769a8..8a7edb71 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractInfoboxCommandImpl.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractInfoboxCommandImpl.java @@ -52,4 +52,13 @@ public abstract class AbstractInfoboxCommandImpl extends SLCommandImpl { */ protected abstract String getInfoboxIdentifier(T request); + + public String getInfoboxIdentifier() { + if (infobox != null) { + return infobox.getIdentifier(); + } else { + return null; + } + } + } diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractInfoboxImpl.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractInfoboxImpl.java index e5c7afcc..564cb8ff 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractInfoboxImpl.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/AbstractInfoboxImpl.java @@ -16,6 +16,13 @@ */ package at.gv.egiz.bku.slcommands.impl; +import at.buergerkarte.namespaces.securitylayer._1.InfoboxReadRequestType; +import at.buergerkarte.namespaces.securitylayer._1.InfoboxUpdateRequestType; +import at.gv.egiz.bku.slcommands.InfoboxReadResult; +import at.gv.egiz.bku.slcommands.InfoboxUpdateResult; +import at.gv.egiz.bku.slcommands.SLCommandContext; +import at.gv.egiz.bku.slexceptions.SLCommandException; + /** * An abstract base class for {@link Infobox} implementations. * @@ -23,4 +30,16 @@ package at.gv.egiz.bku.slcommands.impl; */ public abstract class AbstractInfoboxImpl implements Infobox { + @Override + public InfoboxReadResult read(InfoboxReadRequestType request, + SLCommandContext cmdCtx) throws SLCommandException { + throw new SLCommandException(4011); + } + + @Override + public InfoboxUpdateResult update(InfoboxUpdateRequestType request, + SLCommandContext cmdCtx) throws SLCommandException { + throw new SLCommandException(4011); + } + } diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/CardChannelInfoboxImpl.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/CardChannelInfoboxImpl.java new file mode 100644 index 00000000..4b1cc779 --- /dev/null +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/CardChannelInfoboxImpl.java @@ -0,0 +1,235 @@ +/* +* 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 at.gv.egiz.bku.slcommands.impl; + +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.UnsupportedEncodingException; +import java.math.BigInteger; +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.WeakHashMap; + +import javax.xml.bind.JAXBContext; +import javax.xml.bind.JAXBElement; +import javax.xml.bind.JAXBException; +import javax.xml.bind.Unmarshaller; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; + +import at.buergerkarte.namespaces.cardchannel.ATRType; +import at.buergerkarte.namespaces.cardchannel.CommandAPDUType; +import at.buergerkarte.namespaces.cardchannel.ObjectFactory; +import at.buergerkarte.namespaces.cardchannel.ResetType; +import at.buergerkarte.namespaces.cardchannel.ResponseAPDUType; +import at.buergerkarte.namespaces.cardchannel.ResponseType; +import at.buergerkarte.namespaces.cardchannel.ScriptType; +import at.buergerkarte.namespaces.cardchannel.VerifyAPDUType; +import at.buergerkarte.namespaces.securitylayer._1.Base64XMLContentType; +import at.buergerkarte.namespaces.securitylayer._1.InfoboxReadRequestType; +import at.buergerkarte.namespaces.securitylayer._1.InfoboxUpdateRequestType; +import at.buergerkarte.namespaces.securitylayer._1.XMLContentType; +import at.gv.egiz.bku.slcommands.InfoboxReadResult; +import at.gv.egiz.bku.slcommands.InfoboxUpdateResult; +import at.gv.egiz.bku.slcommands.SLCommandContext; +import at.gv.egiz.bku.slexceptions.SLCommandException; +import at.gv.egiz.bku.slexceptions.SLRuntimeException; +import at.gv.egiz.stal.STAL; +import at.gv.egiz.stal.ext.APDUScriptRequest; +import at.gv.egiz.stal.ext.APDUScriptResponse; +import at.gv.egiz.stal.ext.APDUScriptRequest.RequestScriptElement; +import at.gv.egiz.stal.ext.APDUScriptResponse.ResponseScriptElement; + +public class CardChannelInfoboxImpl extends AbstractBinaryFileInfobox { + + private static Log log = LogFactory.getLog(CardChannelInfoboxImpl.class); + + private static WeakHashMap> scriptResults = new WeakHashMap>(); + + private static JAXBContext jaxbContext; + + static { + try { + jaxbContext = JAXBContext.newInstance(ObjectFactory.class.getPackage().getName()); + } catch (JAXBException e) { + throw new SLRuntimeException("Failed to initalize CardChannel infobox.", e); + } + } + + public CardChannelInfoboxImpl() { + isXMLEntity = true; + } + + @Override + public String getIdentifier() { + return "CardChannel"; + } + + @Override + public InfoboxReadResult read(InfoboxReadRequestType request, + SLCommandContext cmdCtx) throws SLCommandException { + + at.buergerkarte.namespaces.securitylayer._1.ObjectFactory objectFactory + = new at.buergerkarte.namespaces.securitylayer._1.ObjectFactory(); + + Base64XMLContentType content = objectFactory.createBase64XMLContentType(); + XMLContentType xmlContent = objectFactory.createXMLContentType(); + content.setXMLContent(xmlContent); + + JAXBElement response = scriptResults.get(cmdCtx.getSTAL()); + if (response != null) { + xmlContent.getContent().add(response); + } + + return new InfoboxReadResultImpl(content); + + } + + @SuppressWarnings("unchecked") + @Override + public InfoboxUpdateResult update(InfoboxUpdateRequestType request, + SLCommandContext cmdCtx) throws SLCommandException { + + Base64XMLContentType binaryFileParameters = request.getBinaryFileParameters(); + + if (binaryFileParameters.getBase64Content() != null) { + log.info("Got Base64Content but ContentIsXMLEntity is true."); + throw new SLCommandException(4010); + } + + XMLContentType content = binaryFileParameters.getXMLContent(); + if (content instanceof at.gv.egiz.slbinding.impl.XMLContentType) { + + ByteArrayOutputStream redirectedStream = ((at.gv.egiz.slbinding.impl.XMLContentType) content).getRedirectedStream(); + if (redirectedStream != null) { + + if (log.isDebugEnabled()) { + + StringBuilder sb = new StringBuilder(); + sb.append("CardChannel script:\n"); + try { + sb.append(new String(redirectedStream.toByteArray(), "UTF-8")); + } catch (UnsupportedEncodingException e) { + sb.append(e.getMessage()); + } + log.debug(sb.toString()); + } + + Object object; + try { + Unmarshaller unmarshaller = jaxbContext.createUnmarshaller(); + object = unmarshaller.unmarshal(new ByteArrayInputStream(redirectedStream.toByteArray())); + } catch (JAXBException e) { + log.info("Failed to parse CardChannel script.", e); + throw new SLCommandException(4011); + } + + if (object instanceof JAXBElement) { + executeCardChannelScript(((JAXBElement) object).getValue(), cmdCtx); + return new InfoboxUpdateResultImpl(); + } + + } + + + } + log.info("Infobox identifier is '" + getIdentifier() + "' but XMLContent does not contain 'Script'."); + throw new SLCommandException(4010); + + } + + protected void executeCardChannelScript(ScriptType script, + SLCommandContext cmdCtx) throws SLCommandException { + + List resetOrCommandAPDUOrVerifyAPDU = script.getResetOrCommandAPDUOrVerifyAPDU(); + List requestScript = new ArrayList(); + + for (Object element : resetOrCommandAPDUOrVerifyAPDU) { + + if (element instanceof ResetType) { + + requestScript.add(new APDUScriptRequest.Reset()); + + } else if (element instanceof CommandAPDUType) { + + CommandAPDUType commandAPDU = (CommandAPDUType) element; + int sequence = (commandAPDU.getSequence() != null) + ? commandAPDU.getSequence().intValue() + : 0; + + requestScript.add( + new APDUScriptRequest.Command( + sequence, + commandAPDU.getValue(), + commandAPDU.getExpectedSW())); + + } else if (element instanceof VerifyAPDUType) { + log.warn("CardChannel script command 'VerifyAPDU' not implemented."); + throw new SLCommandException(4011); + } + } + + APDUScriptRequest scriptRequest = new APDUScriptRequest(requestScript); + + STAL stal = cmdCtx.getSTAL(); + STALHelper helper = new STALHelper(stal); + + helper.transmitSTALRequest(Collections.singletonList(scriptRequest)); + + List responseScript = ((APDUScriptResponse) helper + .nextResponse(APDUScriptResponse.class)).getScript(); + + ObjectFactory objectFactory = new ObjectFactory(); + + ResponseType responseType = objectFactory.createResponseType(); + + + for (ResponseScriptElement element : responseScript) { + + if (element instanceof APDUScriptResponse.ATR) { + + byte[] atr = ((APDUScriptResponse.ATR) element).getAtr(); + + ATRType atrType = objectFactory.createATRType(); + atrType.setValue(atr); + atrType.setRc(BigInteger.ZERO); + responseType.getATROrResponseAPDU().add(atrType); + + } else if (element instanceof APDUScriptResponse.Response) { + + APDUScriptResponse.Response response = (APDUScriptResponse.Response) element; + + ResponseAPDUType responseAPDUType = objectFactory.createResponseAPDUType(); + responseAPDUType.setSequence(BigInteger.valueOf(response.getSequence())); +// if (response.getRc() != 0) { + responseAPDUType.setRc(BigInteger.valueOf(response.getRc())); +// } + responseAPDUType.setSw(response.getSw()); + responseAPDUType.setValue(response.getApdu()); + + responseType.getATROrResponseAPDU().add(responseAPDUType); + } + + } + + scriptResults.put(stal, objectFactory.createResponse(responseType)); + } + + +} diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/Infobox.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/Infobox.java index a6f8cbb2..99d62721 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/Infobox.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/Infobox.java @@ -17,7 +17,9 @@ package at.gv.egiz.bku.slcommands.impl; import at.buergerkarte.namespaces.securitylayer._1.InfoboxReadRequestType; +import at.buergerkarte.namespaces.securitylayer._1.InfoboxUpdateRequestType; import at.gv.egiz.bku.slcommands.InfoboxReadResult; +import at.gv.egiz.bku.slcommands.InfoboxUpdateResult; import at.gv.egiz.bku.slcommands.SLCommandContext; import at.gv.egiz.bku.slexceptions.SLCommandException; @@ -44,10 +46,25 @@ public interface Infobox { * * @return the data read from this infobox as InfoboxReadResult * - * @throws SLCommandException - * if reading from this infobox fails + * @throws SLCommandException + * + * if reading from this infobox fails */ public InfoboxReadResult read(InfoboxReadRequestType request, SLCommandContext cmdCtx) throws SLCommandException; + /** + * Update data in this infobox. + * + * @param request + * the InfoboxUpdateRequest + * @param cmdCtx + * the command context + * @return a corresponding InfoboxUpdateResult + * @throws SLCommandException + * if updating this infobox fails + */ + public InfoboxUpdateResult update(InfoboxUpdateRequestType request, + SLCommandContext cmdCtx) throws SLCommandException; + } diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/InfoboxReadCommandImpl.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/InfoboxReadCommandImpl.java index aaa786a6..693f444f 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/InfoboxReadCommandImpl.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/InfoboxReadCommandImpl.java @@ -83,7 +83,6 @@ public class InfoboxReadCommandImpl extends AbstractInfoboxCommandImpl implements InfoboxUpdateCommand { + AbstractInfoboxCommandImpl implements InfoboxUpdateCommand { private static Log log = LogFactory.getLog(InfoboxUpdateCommandImpl.class); - public static final String INFOBOX_IDENTIFIER_CARD_CHANNEL = "CardChannel"; + @Override + public String getName() { + return "InfoboxUpdateRequest"; + } - protected String infoboxIdentifier; - - protected List cardChannelScript; - @Override - public String getInfoboxIdentifier() { - return infoboxIdentifier; + protected String getInfoboxIdentifier(InfoboxUpdateRequestType request) { + return request.getInfoboxIdentifier(); } - + @Override - public void init(SLCommandContext ctx, Object request) - throws SLCommandException { + public void init(SLCommandContext ctx, Object request) throws SLCommandException { super.init(ctx, request); InfoboxUpdateRequestType req = getRequestValue(); - infoboxIdentifier = req.getInfoboxIdentifier(); + if (req.getAssocArrayParameters() != null && + !(infobox instanceof AssocArrayInfobox)) { + log.info("Got AssocArrayParameters but Infobox type is not AssocArray."); + throw new SLCommandException(4010); + } - if (INFOBOX_IDENTIFIER_CARD_CHANNEL.equals(infoboxIdentifier)) { - - if (req.getAssocArrayParameters() != null) { - log.info("Got AssocArrayParameters but Infobox type is BinaryFile."); - throw new SLCommandException(4010); - } - - Base64XMLContentType binaryFileParameters = req.getBinaryFileParameters(); - if (binaryFileParameters == null) { - log.info("Got no BinaryFileParameters but Infobox type is BinaryFile."); - throw new SLCommandException(4010); - } - - if (binaryFileParameters.getBase64Content() == null) { - log.info("Got Base64Content but ContentIsXMLEntity is true."); - throw new SLCommandException(4010); - } - - List content = binaryFileParameters.getXMLContent().getContent(); - if (content.isEmpty()) { - log.info("Got no XMLContent but ContentIsXMLEntity is true."); - throw new SLCommandException(4010); - } - - for (Object element : content) { - if (!(element instanceof ScriptType)) { - log.info("Infobox identifier is '" + infoboxIdentifier + "' but XMLContent does not contain 'Script'."); - throw new SLCommandException(4010); - } - - setCardChannelScript(((ScriptType) element).getResetOrCommandAPDUOrVerifyAPDU()); - } - - if (getCardChannelScript() == null) { - log.info("Infobox identifier is '" + infoboxIdentifier + "' but XMLContent does not contain 'Script'."); - throw new SLCommandException(4010); - } - - } else { - throw new SLCommandException(4002, - SLExceptionMessages.EC4002_INFOBOX_UNKNOWN, - new Object[] { infoboxIdentifier }); + if (req.getBinaryFileParameters() != null && + !(infobox instanceof BinaryFileInfobox)) { + log.info("Got BinaryFileParameters but Infobox type is not BinaryFile."); + throw new SLCommandException(4010); } } - public List getCardChannelScript() { - return cardChannelScript; - } - - public void setCardChannelScript(List cardChannelScript) { - this.cardChannelScript = cardChannelScript; - } - @Override public SLResult execute() { try { - if (INFOBOX_IDENTIFIER_CARD_CHANNEL.equals(getInfoboxIdentifier())) { - - executeCardChannelScript(); - return new InfoboxUpdateResultImpl(); - - } else { - throw new SLCommandException(4002, - SLExceptionMessages.EC4002_INFOBOX_UNKNOWN, - new Object[] { infoboxIdentifier }); - } + return infobox.update(getRequestValue(), getCmdCtx()); } catch (SLCommandException e) { - return new ErrorResultImpl(e, cmdCtx.getLocale()); + return new ErrorResultImpl(e, getCmdCtx().getLocale()); } } - - protected void executeCardChannelScript() throws SLCommandException { - - if (cardChannelScript != null) { - - for (Object element : cardChannelScript) { - if (element instanceof ResetType) { - - } else if (element instanceof CommandAPDUType) { - - } else if (element instanceof VerifyAPDUType) { - - } - } - - } - - } - - @Override - public String getName() { - return "InfoboxUpdateRequest"; - } } diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/SLResultImpl.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/SLResultImpl.java index 80bbdca8..99a3b119 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/SLResultImpl.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/SLResultImpl.java @@ -16,6 +16,7 @@ */ package at.gv.egiz.bku.slcommands.impl; +import java.io.UnsupportedEncodingException; import java.util.Locale; import javax.xml.bind.JAXBContext; @@ -32,6 +33,7 @@ import javax.xml.transform.TransformerFactoryConfigurationError; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.sax.SAXTransformerFactory; import javax.xml.transform.sax.TransformerHandler; +import javax.xml.transform.stream.StreamResult; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -45,6 +47,8 @@ import at.gv.egiz.bku.slexceptions.SLBindingException; import at.gv.egiz.bku.slexceptions.SLCommandException; import at.gv.egiz.bku.slexceptions.SLException; import at.gv.egiz.bku.slexceptions.SLRuntimeException; +import at.gv.egiz.bku.utils.DebugOutputStream; +import at.gv.egiz.bku.utils.DebugWriter; /** * This class serves as an abstract base class for the implementation of a @@ -128,6 +132,20 @@ public abstract class SLResultImpl implements SLResult { * @param templates */ protected void writeTo(JAXBElement response, Result result, Templates templates) { + + DebugWriter dw = null; + DebugOutputStream ds = null; + if (log.isTraceEnabled() && result instanceof StreamResult) { + StreamResult streamResult = (StreamResult) result; + if (streamResult.getOutputStream() != null) { + ds = new DebugOutputStream(streamResult.getOutputStream()); + streamResult.setOutputStream(ds); + } + if (streamResult.getWriter() != null) { + dw = new DebugWriter(streamResult.getWriter()); + streamResult.setWriter(dw); + } + } TransformerHandler transformerHandler = null; if (templates != null) { @@ -151,10 +169,36 @@ public abstract class SLResultImpl implements SLResult { writeErrorTo(commandException, result, templates); } + if (ds != null) { + try { + log.trace("Marshalled result:\n" + new String(ds.getBufferedBytes(), "UTF-8")); + } catch (UnsupportedEncodingException e) { + log.trace(e.getMessage()); + } + } + + if (dw != null) { + log.trace("Marshalled result:\n" + dw.getBufferedString()); + } + } protected void writeTo(Node node, Result result, Templates templates) { + DebugWriter dw = null; + DebugOutputStream ds = null; + if (log.isTraceEnabled() && result instanceof StreamResult) { + StreamResult streamResult = (StreamResult) result; + if (streamResult.getOutputStream() != null) { + ds = new DebugOutputStream(streamResult.getOutputStream()); + streamResult.setOutputStream(ds); + } + if (streamResult.getWriter() != null) { + dw = new DebugWriter(streamResult.getWriter()); + streamResult.setWriter(dw); + } + } + if (templates == null) { try { TransformerFactory transformerFactory = TransformerFactory.newInstance(); @@ -179,7 +223,19 @@ public abstract class SLResultImpl implements SLResult { writeErrorTo(new SLException(2008), result, templates); } } + + if (ds != null) { + try { + log.trace("Marshalled result:\n" + new String(ds.getBufferedBytes(), "UTF-8")); + } catch (UnsupportedEncodingException e) { + log.trace(e.getMessage()); + } + } + if (dw != null) { + log.trace("Marshalled result:\n" + dw.getBufferedString()); + } + } protected void writeErrorTo(SLException slException, Result result, Templates templates) { diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/STALHelper.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/STALHelper.java index 969288c1..0c7ce3f5 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/STALHelper.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/STALHelper.java @@ -85,7 +85,7 @@ public class STALHelper { * @param stalRequests * @throws SLCommandException */ - public void transmitSTALRequest(List stalRequests) throws SLCommandException { + public void transmitSTALRequest(List stalRequests) throws SLCommandException { List responses = stal.handleRequest(stalRequests); if (responses == null) { Log log = LogFactory.getLog(this.getClass()); diff --git a/bkucommon/src/test/java/at/gv/egiz/stal/dummy/DummySTAL.java b/bkucommon/src/test/java/at/gv/egiz/stal/dummy/DummySTAL.java index 2ea0bae0..dd8b8c8f 100644 --- a/bkucommon/src/test/java/at/gv/egiz/stal/dummy/DummySTAL.java +++ b/bkucommon/src/test/java/at/gv/egiz/stal/dummy/DummySTAL.java @@ -71,7 +71,7 @@ public class DummySTAL implements STAL { } @Override - public List handleRequest(List requestList) { + public List handleRequest(List requestList) { List responses = new ArrayList(); for (STALRequest request : requestList) { diff --git a/smcc/src/main/java/at/gv/egiz/smcc/AbstractSignatureCard.java b/smcc/src/main/java/at/gv/egiz/smcc/AbstractSignatureCard.java index b828e8cd..e34c4899 100644 --- a/smcc/src/main/java/at/gv/egiz/smcc/AbstractSignatureCard.java +++ b/smcc/src/main/java/at/gv/egiz/smcc/AbstractSignatureCard.java @@ -36,6 +36,7 @@ import javax.smartcardio.ATR; import javax.smartcardio.Card; import javax.smartcardio.CardChannel; import javax.smartcardio.CardException; +import javax.smartcardio.CardTerminal; import javax.smartcardio.CommandAPDU; import javax.smartcardio.ResponseAPDU; @@ -53,7 +54,12 @@ public abstract class AbstractSignatureCard implements SignatureCard { int ifs_ = 254; - Card card_; + private Card card_; + + /** + * The card terminal that connects the {@link #card_}. + */ + private CardTerminal cardTerminal; protected AbstractSignatureCard(String resourceBundleName) { this.resourceBundleName = resourceBundleName; @@ -331,8 +337,9 @@ public abstract class AbstractSignatureCard implements SignatureCard { } - public void init(Card card) { + public void init(Card card, CardTerminal cardTerminal) { card_ = card; + this.cardTerminal = cardTerminal; ATR atr = card.getATR(); byte[] atrBytes = atr.getBytes(); if (atrBytes.length >= 6) { @@ -340,6 +347,11 @@ public abstract class AbstractSignatureCard implements SignatureCard { log.trace("Setting IFS (information field size) to " + ifs_); } } + + @Override + public Card getCard() { + return card_; + } protected CardChannel getCardChannel() { return card_.getBasicChannel(); @@ -372,4 +384,18 @@ public abstract class AbstractSignatureCard implements SignatureCard { } } + @Override + public void reset() throws SignatureCardException { + try { + log.debug("Disconnect and reset smart card."); + card_.disconnect(true); + log.debug("Reconnect smart card."); + if (cardTerminal != null) { + card_ = cardTerminal.connect("*"); + } + } catch (CardException e) { + throw new SignatureCardException("Failed to reset card.", e); + } + } + } diff --git a/smcc/src/main/java/at/gv/egiz/smcc/SWCard.java b/smcc/src/main/java/at/gv/egiz/smcc/SWCard.java index 42943541..439be034 100644 --- a/smcc/src/main/java/at/gv/egiz/smcc/SWCard.java +++ b/smcc/src/main/java/at/gv/egiz/smcc/SWCard.java @@ -40,6 +40,7 @@ import java.util.Enumeration; import java.util.Locale; import javax.smartcardio.Card; +import javax.smartcardio.CardTerminal; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -102,7 +103,12 @@ public class SWCard implements SignatureCard { SWCard.swCardDir = swCardDir; } - public void init(Card card) { + public void init(Card card, CardTerminal cardTerminal) { + } + + @Override + public Card getCard() { + return null; } private String getFileName(String fileName) { @@ -379,4 +385,8 @@ public class SWCard implements SignatureCard { public void disconnect(boolean reset) { } + @Override + public void reset() throws SignatureCardException { + } + } diff --git a/smcc/src/main/java/at/gv/egiz/smcc/SignatureCard.java b/smcc/src/main/java/at/gv/egiz/smcc/SignatureCard.java index b6a453df..d7e76dd8 100644 --- a/smcc/src/main/java/at/gv/egiz/smcc/SignatureCard.java +++ b/smcc/src/main/java/at/gv/egiz/smcc/SignatureCard.java @@ -31,6 +31,7 @@ package at.gv.egiz.smcc; import java.util.Locale; import javax.smartcardio.Card; +import javax.smartcardio.CardTerminal; public interface SignatureCard { @@ -75,12 +76,21 @@ public interface SignatureCard { } - public void init(Card card); + public void init(Card card, CardTerminal cardTerminal); + + public Card getCard(); public byte[] getCertificate(KeyboxName keyboxName) throws SignatureCardException, InterruptedException; public void disconnect(boolean reset); + + /** + * Performs a reset of the card. + * + * @throws SignatureCardException if reset fails. + */ + public void reset() throws SignatureCardException; /** * diff --git a/smcc/src/main/java/at/gv/egiz/smcc/SignatureCardFactory.java b/smcc/src/main/java/at/gv/egiz/smcc/SignatureCardFactory.java index 777299d9..ab66e9a1 100644 --- a/smcc/src/main/java/at/gv/egiz/smcc/SignatureCardFactory.java +++ b/smcc/src/main/java/at/gv/egiz/smcc/SignatureCardFactory.java @@ -34,6 +34,7 @@ import java.util.List; import javax.smartcardio.ATR; import javax.smartcardio.Card; +import javax.smartcardio.CardTerminal; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; @@ -204,6 +205,7 @@ public class SignatureCardFactory { * @param card * the smart card, or null if a software card should be * created + * @param cardTerminal TODO * * @return a SignatureCard instance * @@ -211,12 +213,12 @@ public class SignatureCardFactory { * if no implementation of the given card could be * found */ - public SignatureCard createSignatureCard(Card card) + public SignatureCard createSignatureCard(Card card, CardTerminal cardTerminal) throws CardNotSupportedException { if(card == null) { SignatureCard sCard = new SWCard(); - sCard.init(card); + sCard.init(card, cardTerminal); return sCard; } @@ -231,7 +233,7 @@ public class SignatureCardFactory { try { Class scClass = cl.loadClass(supportedCard.getImplementationClassName()); sc = (SignatureCard) scClass.newInstance(); - sc.init(card); + sc.init(card, cardTerminal); return sc; } catch (ClassNotFoundException e) { diff --git a/smcc/src/main/java/at/gv/egiz/smcc/util/SMCCHelper.java b/smcc/src/main/java/at/gv/egiz/smcc/util/SMCCHelper.java index 4dae7975..f7d3bab7 100644 --- a/smcc/src/main/java/at/gv/egiz/smcc/util/SMCCHelper.java +++ b/smcc/src/main/java/at/gv/egiz/smcc/util/SMCCHelper.java @@ -57,7 +57,7 @@ public class SMCCHelper { SignatureCardFactory factory = SignatureCardFactory.getInstance(); if (useSWCard) { try { - signatureCard = factory.createSignatureCard(null); + signatureCard = factory.createSignatureCard(null, null); resultCode = CARD_FOUND; } catch (CardNotSupportedException e) { resultCode = CARD_NOT_SUPPORTED; @@ -83,7 +83,7 @@ public class SMCCHelper { if (c == null) { throw new CardNotSupportedException(); } - signatureCard = factory.createSignatureCard(c); + signatureCard = factory.createSignatureCard(c, cardTerminal); ATR atr = newCards.get(cardTerminal).getATR(); log.trace("Found supported card (" + signatureCard.toString() + ") " + "in terminal '" + cardTerminal.getName() + "', ATR = " diff --git a/smcc/src/main/java/at/gv/egiz/smcc/util/SmartCardIO.java b/smcc/src/main/java/at/gv/egiz/smcc/util/SmartCardIO.java index b70b44a7..b1866894 100644 --- a/smcc/src/main/java/at/gv/egiz/smcc/util/SmartCardIO.java +++ b/smcc/src/main/java/at/gv/egiz/smcc/util/SmartCardIO.java @@ -16,6 +16,7 @@ */ package at.gv.egiz.smcc.util; +import java.security.NoSuchAlgorithmException; import java.util.Collections; import java.util.HashMap; import java.util.List; @@ -54,7 +55,13 @@ public class SmartCardIO { CardTerminals cardTerminals_; private void updateTerminalFactory() { - TerminalFactory terminalFactory = TerminalFactory.getDefault(); + TerminalFactory terminalFactory; + try { + terminalFactory = TerminalFactory.getInstance("PC/SC", null); + } catch (NoSuchAlgorithmException e) { + log.info("Failed to get TerminalFactory of type 'PC/SC'.", e); + terminalFactory = TerminalFactory.getDefault(); + } log.debug("TerminalFactory : " + terminalFactory); if ("PC/SC".equals(terminalFactory.getType())) { terminalFactory_ = terminalFactory; diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java index 55f51b22..6f08a135 100644 --- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java +++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java @@ -121,7 +121,7 @@ public abstract class AbstractSMCCSTAL implements STAL { } @Override - public List handleRequest(List requestList) { + public List handleRequest(List requestList) { log.debug("Got request list containing " + requestList.size() + " STAL requests"); List responseList = new ArrayList(requestList diff --git a/smccSTAL/src/test/java/at/gv/egiz/smcc/AbstractSMCCSTALTest.java b/smccSTAL/src/test/java/at/gv/egiz/smcc/AbstractSMCCSTALTest.java index 59ea141c..77997217 100644 --- a/smccSTAL/src/test/java/at/gv/egiz/smcc/AbstractSMCCSTALTest.java +++ b/smccSTAL/src/test/java/at/gv/egiz/smcc/AbstractSMCCSTALTest.java @@ -5,6 +5,7 @@ import java.util.List; import java.util.Locale; import javax.smartcardio.Card; +import javax.smartcardio.CardTerminal; import org.junit.Assert; import org.junit.Before; @@ -61,7 +62,7 @@ public class AbstractSMCCSTALTest extends AbstractSMCCSTAL implements } @Override - public void init(Card card) { + public void init(Card card, CardTerminal cardTerminal) { // TODO Auto-generated method stub } @@ -71,6 +72,18 @@ public class AbstractSMCCSTALTest extends AbstractSMCCSTAL implements // TODO Auto-generated method stub } + + @Override + public Card getCard() { + // TODO Auto-generated method stub + return null; + } + + @Override + public void reset() throws SignatureCardException { + // TODO Auto-generated method stub + + } }; return false; diff --git a/utils/src/main/java/at/gv/egiz/bku/utils/DebugOutputStream.java b/utils/src/main/java/at/gv/egiz/bku/utils/DebugOutputStream.java new file mode 100644 index 00000000..8516b76c --- /dev/null +++ b/utils/src/main/java/at/gv/egiz/bku/utils/DebugOutputStream.java @@ -0,0 +1,48 @@ +/* +* 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 at.gv.egiz.bku.utils; + +import java.io.ByteArrayOutputStream; +import java.io.FilterOutputStream; +import java.io.IOException; +import java.io.OutputStream; + +public class DebugOutputStream extends FilterOutputStream { + + private ByteArrayOutputStream buffer = new ByteArrayOutputStream(); + + public DebugOutputStream(OutputStream out) { + super(out); + } + + @Override + public void write(byte[] b, int off, int len) throws IOException { + buffer.write(b, off, len); + super.write(b, off, len); + } + + @Override + public void write(int b) throws IOException { + buffer.write(b); + super.write(b); + } + + public byte[] getBufferedBytes() { + return buffer.toByteArray(); + } + +} diff --git a/utils/src/main/java/at/gv/egiz/bku/utils/DebugReader.java b/utils/src/main/java/at/gv/egiz/bku/utils/DebugReader.java new file mode 100644 index 00000000..cafe4a72 --- /dev/null +++ b/utils/src/main/java/at/gv/egiz/bku/utils/DebugReader.java @@ -0,0 +1,58 @@ +/* +* 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 at.gv.egiz.bku.utils; + +import java.io.FilterReader; +import java.io.IOException; +import java.io.Reader; +import java.io.StringWriter; + +public class DebugReader extends FilterReader { + + private StringWriter buffer = new StringWriter(); + + public DebugReader(Reader in) { + super(in); + } + + public DebugReader(Reader in, String start) { + super(in); + buffer.write(start); + } + + @Override + public int read() throws IOException { + int c = super.read(); + if (c != -1) + buffer.write(c); + return c; + } + + @Override + public int read(char[] cbuf, int off, int len) throws IOException { + int l = super.read(cbuf, off, len); + if (l != -1 ) { + buffer.write(cbuf, off, l); + } + return l; + } + + public String getCachedString() { + return buffer.toString(); + } + +} diff --git a/utils/src/main/java/at/gv/egiz/bku/utils/DebugWriter.java b/utils/src/main/java/at/gv/egiz/bku/utils/DebugWriter.java new file mode 100644 index 00000000..5566f927 --- /dev/null +++ b/utils/src/main/java/at/gv/egiz/bku/utils/DebugWriter.java @@ -0,0 +1,55 @@ +/* +* 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 at.gv.egiz.bku.utils; + +import java.io.FilterWriter; +import java.io.IOException; +import java.io.StringWriter; +import java.io.Writer; + +public class DebugWriter extends FilterWriter { + + private Writer buffer = new StringWriter(); + + public DebugWriter(Writer out) { + super(out); + } + + @Override + public void write(char[] cbuf, int off, int len) throws IOException { + buffer.write(cbuf, off, len); + super.write(cbuf, off, len); + } + + @Override + public void write(String str, int off, int len) throws IOException { + buffer.write(str, off, len); + super.write(str, off, len); + } + + @Override + public void write(int c) throws IOException { + buffer.write(c); + super.write(c); + } + + public String getBufferedString() { + return buffer.toString(); + } + + +} -- cgit v1.2.3 From a0217c13a2542bc6bced45bd9465c2b272aae461 Mon Sep 17 00:00:00 2001 From: clemenso Date: Tue, 20 Jan 2009 14:18:17 +0000 Subject: nothing git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@265 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- STAL/src/main/java/at/gv/egiz/stal/STAL.java | 52 ++++++++++++++-------------- 1 file changed, 26 insertions(+), 26 deletions(-) (limited to 'STAL') diff --git a/STAL/src/main/java/at/gv/egiz/stal/STAL.java b/STAL/src/main/java/at/gv/egiz/stal/STAL.java index 7fa7cb45..7015ec29 100644 --- a/STAL/src/main/java/at/gv/egiz/stal/STAL.java +++ b/STAL/src/main/java/at/gv/egiz/stal/STAL.java @@ -14,30 +14,30 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package at.gv.egiz.stal; - -import java.util.List; -import java.util.Locale; - -/** - * Interface for all implementations of the Security Tokean Abstraction Layer. - * This interface is used by the BKU to handle all security token related parts. - * - * - */ -public interface STAL { - - /** - * Handles a list of security token commands. - * @param aRequestList - * @return - */ - public List handleRequest(List aRequestList); - - /** - * Sets the preferred locale for userinteraction (e.g. PIN dialogs). - * If the locale is not set the default locale will be used. - * @param locale must not be null. - */ - public void setLocale(Locale locale); +package at.gv.egiz.stal; + +import java.util.List; +import java.util.Locale; + +/** + * Interface for all implementations of the Security Tokean Abstraction Layer. + * This interface is used by the BKU to handle all security token related parts. + * + * + */ +public interface STAL { + + /** + * Handles a list of security token commands. + * @param aRequestList + * @return + */ + public List handleRequest(List aRequestList); + + /** + * Sets the preferred locale for userinteraction (e.g. PIN dialogs). + * If the locale is not set the default locale will be used. + * @param locale must not be null. + */ + public void setLocale(Locale locale); } \ No newline at end of file -- cgit v1.2.3 From 4618f05e6a202ef2d502c78a4bd0dc13b9c0aea2 Mon Sep 17 00:00:00 2001 From: clemenso Date: Tue, 20 Jan 2009 16:38:30 +0000 Subject: [maven-release-plugin] prepare release bku-1.0.2 git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@273 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 14 +++++++------- BKUCommonGUI/pom.xml | 8 ++++---- BKULocal/pom.xml | 22 +++++++++++----------- BKULocalApp/pom.xml | 8 ++++---- BKUOnline/pom.xml | 20 ++++++++++---------- BKUViewer/pom.xml | 6 +++--- STAL/pom.xml | 4 ++-- STALExt/pom.xml | 8 ++++---- STALService/pom.xml | 6 +++--- bkucommon/pom.xml | 8 ++++---- pom.xml | 23 +++++++++-------------- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 10 +++++----- utils/pom.xml | 4 ++-- 14 files changed, 70 insertions(+), 75 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index 8947daa0..49159c5e 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.0.2-SNAPSHOT + 1.0.2 @@ -117,27 +117,27 @@ at.gv.egiz smcc - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz STAL - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz STALService - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz smccSTAL - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz BKUCommonGUI - 1.0.2-SNAPSHOT + 1.0.2 commons-logging diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index ff993fa2..64b93904 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -2,23 +2,23 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz BKUCommonGUI BKU Common GUI - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz smcc - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz STAL - 1.0.2-SNAPSHOT + 1.0.2 compile diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index 6b3b7fc8..d49ef4d7 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz BKULocal war BKU Local - 1.0.2-SNAPSHOT + 1.0.1 - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/bku-1.0.2/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/bku-1.0.2/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/bku-1.0.2/BKULocal @@ -56,22 +56,22 @@ at.gv.egiz STAL - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz bkucommon - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz smcc - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz smccSTAL - 1.0.2-SNAPSHOT + 1.0.2 org.springframework @@ -96,12 +96,12 @@ at.gv.egiz BKUApplet - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz BKUViewer - 1.0.2-SNAPSHOT + 1.0.2 diff --git a/BKULocalApp/pom.xml b/BKULocalApp/pom.xml index f2280e29..e253ab46 100644 --- a/BKULocalApp/pom.xml +++ b/BKULocalApp/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz.bku BKULocalApp BKU Local App - 1.0.2-SNAPSHOT + 1.0.1 @@ -76,13 +76,13 @@ at.gv.egiz BKULocal - 1.0.2-SNAPSHOT + 1.0.1 war utils at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 compile diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index e5db2e55..85209fa9 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -3,14 +3,14 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz BKUOnline war BKU Online - 1.0.2-SNAPSHOT + 1.0.2 @@ -24,12 +24,12 @@ at.gv.egiz bkucommon - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz BKUViewer - 1.0.2-SNAPSHOT + 1.0.2 commons-logging @@ -53,20 +53,20 @@ at.gv.egiz STALService - 1.0.2-SNAPSHOT + 1.0.2 compile at.gv.egiz BKUApplet - 1.0.2-SNAPSHOT + 1.0.2 provided at.gv.egiz STALService - 1.0.2-SNAPSHOT + 1.0.2 + 1.6 1.6 1.6 true @@ -86,8 +84,7 @@ + jaxws-maven-plugin org.codehaus.mojo @@ -109,8 +106,7 @@ + ${basedir}/src/main/assemblies/assembly-server.xml + diff --git a/smcc/pom.xml b/smcc/pom.xml index 62c60e75..a973c809 100644 --- a/smcc/pom.xml +++ b/smcc/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz smcc smcc jar - 1.0.2-SNAPSHOT + 1.0.2 http://bku.egiz.gv.at diff --git a/smccSTAL/pom.xml b/smccSTAL/pom.xml index 3fa65d19..7d4334bd 100644 --- a/smccSTAL/pom.xml +++ b/smccSTAL/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz smccSTAL smcc STAL - 1.0.2-SNAPSHOT + 1.0.2 @@ -24,17 +24,17 @@ at.gv.egiz STAL - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz smcc - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz BKUCommonGUI - 1.0.2-SNAPSHOT + 1.0.2 iaik diff --git a/utils/pom.xml b/utils/pom.xml index b183ea03..52fa6917 100644 --- a/utils/pom.xml +++ b/utils/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz utils BKU Utils jar - 1.0.2-SNAPSHOT + 1.0.2 http://bku.egiz.gv.at -- cgit v1.2.3 From ce598ba5142ff7673085dd90865f9323d69574be Mon Sep 17 00:00:00 2001 From: clemenso Date: Tue, 20 Jan 2009 16:56:08 +0000 Subject: [maven-release-plugin] rollback the release of bku-1.0.2 git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@274 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 14 +++++++------- BKUCommonGUI/pom.xml | 8 ++++---- BKULocal/pom.xml | 22 +++++++++++----------- BKULocalApp/pom.xml | 8 ++++---- BKUOnline/pom.xml | 20 ++++++++++---------- BKUViewer/pom.xml | 6 +++--- STAL/pom.xml | 4 ++-- STALExt/pom.xml | 8 ++++---- STALService/pom.xml | 6 +++--- bkucommon/pom.xml | 8 ++++---- pom.xml | 23 ++++++++++++++--------- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 10 +++++----- utils/pom.xml | 4 ++-- 14 files changed, 75 insertions(+), 70 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index 49159c5e..8947daa0 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2 + 1.0.2-SNAPSHOT 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.0.2 + 1.0.2-SNAPSHOT @@ -117,27 +117,27 @@ at.gv.egiz smcc - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz STAL - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz STALService - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz smccSTAL - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz BKUCommonGUI - 1.0.2 + 1.0.2-SNAPSHOT commons-logging diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index 64b93904..ff993fa2 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -2,23 +2,23 @@ bku at.gv.egiz - 1.0.2 + 1.0.2-SNAPSHOT 4.0.0 at.gv.egiz BKUCommonGUI BKU Common GUI - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz smcc - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz STAL - 1.0.2 + 1.0.2-SNAPSHOT compile diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index d49ef4d7..6b3b7fc8 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.0.2 + 1.0.2-SNAPSHOT 4.0.0 at.gv.egiz BKULocal war BKU Local - 1.0.1 + 1.0.2-SNAPSHOT - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/bku-1.0.2/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/bku-1.0.2/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/bku-1.0.2/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal @@ -56,22 +56,22 @@ at.gv.egiz STAL - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz bkucommon - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz smcc - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz smccSTAL - 1.0.2 + 1.0.2-SNAPSHOT org.springframework @@ -96,12 +96,12 @@ at.gv.egiz BKUApplet - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz BKUViewer - 1.0.2 + 1.0.2-SNAPSHOT diff --git a/BKULocalApp/pom.xml b/BKULocalApp/pom.xml index e253ab46..f2280e29 100644 --- a/BKULocalApp/pom.xml +++ b/BKULocalApp/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2 + 1.0.2-SNAPSHOT 4.0.0 at.gv.egiz.bku BKULocalApp BKU Local App - 1.0.1 + 1.0.2-SNAPSHOT @@ -76,13 +76,13 @@ at.gv.egiz BKULocal - 1.0.1 + 1.0.2-SNAPSHOT war utils at.gv.egiz - 1.0.2 + 1.0.2-SNAPSHOT compile diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index 85209fa9..e5db2e55 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -3,14 +3,14 @@ bku at.gv.egiz - 1.0.2 + 1.0.2-SNAPSHOT 4.0.0 at.gv.egiz BKUOnline war BKU Online - 1.0.2 + 1.0.2-SNAPSHOT @@ -24,12 +24,12 @@ at.gv.egiz bkucommon - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz BKUViewer - 1.0.2 + 1.0.2-SNAPSHOT commons-logging @@ -53,20 +53,20 @@ at.gv.egiz STALService - 1.0.2 + 1.0.2-SNAPSHOT compile at.gv.egiz BKUApplet - 1.0.2 + 1.0.2-SNAPSHOT provided at.gv.egiz STALService - 1.0.2 + 1.0.2-SNAPSHOT + 1.6 1.6 1.6 true @@ -84,7 +86,8 @@ + jaxws-maven-plugin org.codehaus.mojo @@ -106,7 +109,8 @@ + ${basedir}/src/main/assemblies/assembly-server.xml + diff --git a/smcc/pom.xml b/smcc/pom.xml index a973c809..62c60e75 100644 --- a/smcc/pom.xml +++ b/smcc/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.0.2 + 1.0.2-SNAPSHOT 4.0.0 at.gv.egiz smcc smcc jar - 1.0.2 + 1.0.2-SNAPSHOT http://bku.egiz.gv.at diff --git a/smccSTAL/pom.xml b/smccSTAL/pom.xml index 7d4334bd..3fa65d19 100644 --- a/smccSTAL/pom.xml +++ b/smccSTAL/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2 + 1.0.2-SNAPSHOT 4.0.0 at.gv.egiz smccSTAL smcc STAL - 1.0.2 + 1.0.2-SNAPSHOT @@ -24,17 +24,17 @@ at.gv.egiz STAL - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz smcc - 1.0.2 + 1.0.2-SNAPSHOT at.gv.egiz BKUCommonGUI - 1.0.2 + 1.0.2-SNAPSHOT iaik diff --git a/utils/pom.xml b/utils/pom.xml index 52fa6917..b183ea03 100644 --- a/utils/pom.xml +++ b/utils/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.0.2 + 1.0.2-SNAPSHOT 4.0.0 at.gv.egiz utils BKU Utils jar - 1.0.2 + 1.0.2-SNAPSHOT http://bku.egiz.gv.at -- cgit v1.2.3 From 3f673f19aa8c4aec3d40d98731de289cbb7e79c6 Mon Sep 17 00:00:00 2001 From: clemenso Date: Tue, 20 Jan 2009 17:01:02 +0000 Subject: [maven-release-plugin] prepare release mocca-1.0.2 git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@275 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 14 +++++++------- BKUCommonGUI/pom.xml | 8 ++++---- BKULocal/pom.xml | 22 +++++++++++----------- BKULocalApp/pom.xml | 8 ++++---- BKUOnline/pom.xml | 20 ++++++++++---------- BKUViewer/pom.xml | 6 +++--- STAL/pom.xml | 4 ++-- STALExt/pom.xml | 8 ++++---- STALService/pom.xml | 6 +++--- bkucommon/pom.xml | 8 ++++---- pom.xml | 23 +++++++++-------------- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 10 +++++----- utils/pom.xml | 4 ++-- 14 files changed, 70 insertions(+), 75 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index 8947daa0..49159c5e 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.0.2-SNAPSHOT + 1.0.2 @@ -117,27 +117,27 @@ at.gv.egiz smcc - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz STAL - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz STALService - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz smccSTAL - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz BKUCommonGUI - 1.0.2-SNAPSHOT + 1.0.2 commons-logging diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index ff993fa2..64b93904 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -2,23 +2,23 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz BKUCommonGUI BKU Common GUI - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz smcc - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz STAL - 1.0.2-SNAPSHOT + 1.0.2 compile diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index 6b3b7fc8..e147a6ad 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz BKULocal war BKU Local - 1.0.2-SNAPSHOT + 1.0.1 - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.2/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.2/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.2/BKULocal @@ -56,22 +56,22 @@ at.gv.egiz STAL - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz bkucommon - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz smcc - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz smccSTAL - 1.0.2-SNAPSHOT + 1.0.2 org.springframework @@ -96,12 +96,12 @@ at.gv.egiz BKUApplet - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz BKUViewer - 1.0.2-SNAPSHOT + 1.0.2 diff --git a/BKULocalApp/pom.xml b/BKULocalApp/pom.xml index f2280e29..e253ab46 100644 --- a/BKULocalApp/pom.xml +++ b/BKULocalApp/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz.bku BKULocalApp BKU Local App - 1.0.2-SNAPSHOT + 1.0.1 @@ -76,13 +76,13 @@ at.gv.egiz BKULocal - 1.0.2-SNAPSHOT + 1.0.1 war utils at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 compile diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index e5db2e55..cfc5507e 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -3,14 +3,14 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz BKUOnline war BKU Online - 1.0.2-SNAPSHOT + 1.0.2 @@ -24,12 +24,12 @@ at.gv.egiz bkucommon - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz BKUViewer - 1.0.2-SNAPSHOT + 1.0.2 commons-logging @@ -53,20 +53,20 @@ at.gv.egiz STALService - 1.0.2-SNAPSHOT + 1.0.2 compile at.gv.egiz BKUApplet - 1.0.2-SNAPSHOT + 1.0.2 provided at.gv.egiz STALService - 1.0.2-SNAPSHOT + 1.0.2 + 1.6 1.6 1.6 true @@ -86,8 +84,7 @@ + jaxws-maven-plugin org.codehaus.mojo @@ -109,8 +106,7 @@ + ${basedir}/src/main/assemblies/assembly-server.xml + diff --git a/smcc/pom.xml b/smcc/pom.xml index 62c60e75..a973c809 100644 --- a/smcc/pom.xml +++ b/smcc/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz smcc smcc jar - 1.0.2-SNAPSHOT + 1.0.2 http://bku.egiz.gv.at diff --git a/smccSTAL/pom.xml b/smccSTAL/pom.xml index 3fa65d19..7d4334bd 100644 --- a/smccSTAL/pom.xml +++ b/smccSTAL/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz smccSTAL smcc STAL - 1.0.2-SNAPSHOT + 1.0.2 @@ -24,17 +24,17 @@ at.gv.egiz STAL - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz smcc - 1.0.2-SNAPSHOT + 1.0.2 at.gv.egiz BKUCommonGUI - 1.0.2-SNAPSHOT + 1.0.2 iaik diff --git a/utils/pom.xml b/utils/pom.xml index b183ea03..52fa6917 100644 --- a/utils/pom.xml +++ b/utils/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.0.2-SNAPSHOT + 1.0.2 4.0.0 at.gv.egiz utils BKU Utils jar - 1.0.2-SNAPSHOT + 1.0.2 http://bku.egiz.gv.at -- cgit v1.2.3 From ce977ee25ede5535beaf72bd0555c0984d5741bf Mon Sep 17 00:00:00 2001 From: clemenso Date: Tue, 20 Jan 2009 17:01:18 +0000 Subject: [maven-release-plugin] prepare for next development iteration git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@277 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 14 +++++++------- BKUCommonGUI/pom.xml | 8 ++++---- BKULocal/pom.xml | 22 +++++++++++----------- BKULocalApp/pom.xml | 8 ++++---- BKUOnline/pom.xml | 20 ++++++++++---------- BKUViewer/pom.xml | 6 +++--- STAL/pom.xml | 4 ++-- STALExt/pom.xml | 6 +++--- STALService/pom.xml | 6 +++--- bkucommon/pom.xml | 8 ++++---- pom.xml | 8 ++++---- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 10 +++++----- utils/pom.xml | 4 ++-- 14 files changed, 64 insertions(+), 64 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index 49159c5e..303a44ff 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2 + 1.0.3-SNAPSHOT 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.0.2 + 1.0.3-SNAPSHOT @@ -117,27 +117,27 @@ at.gv.egiz smcc - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz STAL - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz STALService - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz smccSTAL - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz BKUCommonGUI - 1.0.2 + 1.0.3-SNAPSHOT commons-logging diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index 64b93904..fc99b6bb 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -2,23 +2,23 @@ bku at.gv.egiz - 1.0.2 + 1.0.3-SNAPSHOT 4.0.0 at.gv.egiz BKUCommonGUI BKU Common GUI - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz smcc - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz STAL - 1.0.2 + 1.0.3-SNAPSHOT compile diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index e147a6ad..ab1b9fb9 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.0.2 + 1.0.3-SNAPSHOT 4.0.0 at.gv.egiz BKULocal war BKU Local - 1.0.1 + 1.0.3-SNAPSHOT - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.2/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.2/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.0.2/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal @@ -56,22 +56,22 @@ at.gv.egiz STAL - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz bkucommon - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz smcc - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz smccSTAL - 1.0.2 + 1.0.3-SNAPSHOT org.springframework @@ -96,12 +96,12 @@ at.gv.egiz BKUApplet - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz BKUViewer - 1.0.2 + 1.0.3-SNAPSHOT diff --git a/BKULocalApp/pom.xml b/BKULocalApp/pom.xml index e253ab46..10035ee5 100644 --- a/BKULocalApp/pom.xml +++ b/BKULocalApp/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.2 + 1.0.3-SNAPSHOT 4.0.0 at.gv.egiz.bku BKULocalApp BKU Local App - 1.0.1 + 1.0.3-SNAPSHOT @@ -76,13 +76,13 @@ at.gv.egiz BKULocal - 1.0.1 + 1.0.3-SNAPSHOT war utils at.gv.egiz - 1.0.2 + 1.0.3-SNAPSHOT compile diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index cfc5507e..d705ee3d 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -3,14 +3,14 @@ bku at.gv.egiz - 1.0.2 + 1.0.3-SNAPSHOT 4.0.0 at.gv.egiz BKUOnline war BKU Online - 1.0.2 + 1.0.3-SNAPSHOT @@ -24,12 +24,12 @@ at.gv.egiz bkucommon - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz BKUViewer - 1.0.2 + 1.0.3-SNAPSHOT commons-logging @@ -53,20 +53,20 @@ at.gv.egiz STALService - 1.0.2 + 1.0.3-SNAPSHOT compile at.gv.egiz BKUApplet - 1.0.2 + 1.0.3-SNAPSHOT provided at.gv.egiz STALService - 1.0.2 + 1.0.3-SNAPSHOT at.gv.egiz BKUApplet - 1.0.3-SNAPSHOT + 1.0.3 provided at.gv.egiz STALService - 1.0.3-SNAPSHOT + 1.0.3 at.gv.egiz BKUApplet - 1.0.3 + 1.0.4-SNAPSHOT provided at.gv.egiz STALService - 1.0.3 + 1.0.4-SNAPSHOT at.gv.egiz BKUApplet - 1.0.4-SNAPSHOT + 1.0.4 provided at.gv.egiz STALService - 1.0.4-SNAPSHOT + 1.0.4 at.gv.egiz BKUApplet - 1.0.4 + 1.0.5-SNAPSHOT provided at.gv.egiz STALService - 1.0.4 + 1.0.5-SNAPSHOT +<%@ page language="java" contentType="text/html; charset=UTF-8" + pageEncoding="UTF-8" + import="at.gv.egiz.org.apache.tomcat.util.http.AcceptLanguage"%> + + + + + + MOCCA PIN Management + + + + + + + + + <% + String locale = request.getParameter("locale"); + if (locale == null) { + String acceptLanguage = request.getHeader("Accept-Language"); + locale = AcceptLanguage.getLocale(acceptLanguage).toString(); + } + String widthP = request.getParameter("appletWidth"); + String heightP = request.getParameter("appletHeight"); + int width = (widthP == null) ? 295 + : Integer.parseInt(widthP); + int height = (heightP == null) ? 195 + : Integer.parseInt(heightP); + String guiStyle = request.getParameter("appletGuiStyle"); + if (guiStyle == null) { + guiStyle = "advanced"; + } + String backgroundImg = request.getParameter("appletBackground"); + %> + + + + diff --git a/BKUOnline/src/main/webapp/SLRequestForm.html b/BKUOnline/src/main/webapp/SLRequestForm.html new file mode 100644 index 00000000..2aed5298 --- /dev/null +++ b/BKUOnline/src/main/webapp/SLRequestForm.html @@ -0,0 +1,155 @@ + + + + + Security-Layer v1.2 Request Formular + + + + + + +

Security-Layer v1.2 Request Formular

+ + +

+

+ +
Enter XML Request +

+ + + +

+ + tiny + simple + advanced +

+

+

+

+ + +

+ + Activation + PIN Management +

+ + +
+
+
+ + + diff --git a/BKUOnline/src/main/webapp/css/applet.css b/BKUOnline/src/main/webapp/css/applet.css index 4bfbd77d..d2c734a1 100644 --- a/BKUOnline/src/main/webapp/css/applet.css +++ b/BKUOnline/src/main/webapp/css/applet.css @@ -1,4 +1,3 @@ - root { display: block; } diff --git a/BKUOnline/src/main/webapp/css/main.css b/BKUOnline/src/main/webapp/css/main.css new file mode 100644 index 00000000..114b8da9 --- /dev/null +++ b/BKUOnline/src/main/webapp/css/main.css @@ -0,0 +1,48 @@ +/* +Document : main +Created on : 27.02.2009, 10:24:41 +Author : clemens +Description: +Purpose of the stylesheet follows. +*/ + +/* +TODO customize this sample style +Syntax recommendation http://www.w3.org/TR/REC-CSS2/ +*/ + +root { + display: block; +} + +body { + font-family: sans-serif; + font-size: 14px; +} + +h1 { + font-size: 16px; +} + +.box { + margin-top: 10px; + color: #292929; + width: 250px; + border: 1px solid #BABABA; + background-color: #ddd; + padding-left: 10px; + padding-right: 10px; + margin-left: 10px; + margin-bottom: 1em; + -o-border-radius: 10px; + -moz-border-radius: 12px; + -webkit-border-radius: 10px; + -webkit-box-shadow: 0px 3px 7px #adadad; + border-radius: 10px; + -moz-box-sizing: border-box; + -opera-sizing: border-box; + -webkit-box-sizing: border-box; + -khtml-box-sizing: border-box; + box-sizing: border-box; + overflow: hidden; +} \ No newline at end of file diff --git a/BKUOnline/src/main/webapp/index.html b/BKUOnline/src/main/webapp/index.html index 94e2890f..653da5b1 100644 --- a/BKUOnline/src/main/webapp/index.html +++ b/BKUOnline/src/main/webapp/index.html @@ -16,44 +16,21 @@ --> - -BKU Online - - - - -
-

-

TestRequest

-Security Layer Request -

STAL Service

-STAL Service Endpoint Information -

-
- - - + + BKU Online + + + + +
+

+

SL Request

+ Security Layer Request +

PIN Management

+ PIN Management Applet +

STAL Service

+ STAL Service Endpoint +

+
+ diff --git a/BKUOnline/src/main/webapp/slRequestForm.html b/BKUOnline/src/main/webapp/slRequestForm.html deleted file mode 100644 index 76cd1be9..00000000 --- a/BKUOnline/src/main/webapp/slRequestForm.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - Security-Layer v1.2 Request Formular - - - - - -

Security-Layer v1.2 Request Formular

- - -

-

- -
Enter XML Request -

- - - -

- - tiny - simple - advanced -

-

-

-

- - -

- - Activation - PIN Management -

- - -
-
-
- - - diff --git a/STAL/src/main/java/at/gv/egiz/stal/STAL.java b/STAL/src/main/java/at/gv/egiz/stal/STAL.java index 7015ec29..a88d8f89 100644 --- a/STAL/src/main/java/at/gv/egiz/stal/STAL.java +++ b/STAL/src/main/java/at/gv/egiz/stal/STAL.java @@ -39,5 +39,5 @@ public interface STAL { * If the locale is not set the default locale will be used. * @param locale must not be null. */ - public void setLocale(Locale locale); +// public void setLocale(Locale locale); } \ No newline at end of file diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/binding/BindingProcessorManagerImpl.java b/bkucommon/src/main/java/at/gv/egiz/bku/binding/BindingProcessorManagerImpl.java index 5b061850..144416ed 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/binding/BindingProcessorManagerImpl.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/binding/BindingProcessorManagerImpl.java @@ -216,7 +216,7 @@ public class BindingProcessorManagerImpl implements BindingProcessorManager { bindingProcessor.init(stal, commandInvokerClass.newInstance()); if (locale != null) { bindingProcessor.setLocale(locale); - stal.setLocale(locale); +// stal.setLocale(locale); } return bindingProcessor; } diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractBKUWorker.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractBKUWorker.java index b6c5a8ca..23b71690 100644 --- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractBKUWorker.java +++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractBKUWorker.java @@ -54,7 +54,7 @@ public abstract class AbstractBKUWorker extends AbstractSMCCSTAL implements Acti throw new NullPointerException("No BKU GUI provided"); } this.gui = gui; - this.locale = gui.getLocale(); +// this.locale = gui.getLocale(); addRequestHandler(QuitRequest.class, this); } @@ -149,7 +149,7 @@ public abstract class AbstractBKUWorker extends AbstractSMCCSTAL implements Acti } break; case SMCCHelper.CARD_FOUND: - signatureCard = smccHelper.getSignatureCard(locale); + signatureCard = smccHelper.getSignatureCard(gui.getLocale()); return false; } smccHelper.update(3000); diff --git a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java index 0074860f..3691156e 100644 --- a/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java +++ b/smccSTAL/src/main/java/at/gv/egiz/bku/smccstal/AbstractSMCCSTAL.java @@ -20,7 +20,7 @@ import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.List; -import java.util.Locale; +//import java.util.Locale; import java.util.Map; import java.util.Set; @@ -41,7 +41,7 @@ public abstract class AbstractSMCCSTAL implements STAL { public final static int DEFAULT_MAX_RETRIES = 1; - protected Locale locale = Locale.getDefault(); +// protected Locale locale = Locale.getDefault(); protected SignatureCard signatureCard = null; protected Map handlerMap = new HashMap(); @@ -159,13 +159,13 @@ public abstract class AbstractSMCCSTAL implements STAL { return handlerMap.get(request.getSimpleName()); } - @Override - public void setLocale(Locale locale) { - if (locale == null) { - throw new NullPointerException("Locale must not be set to null"); - } - this.locale = locale; - } +// @Override +// public void setLocale(Locale locale) { +// if (locale == null) { +// throw new NullPointerException("Locale must not be set to null"); +// } +// this.locale = locale; +// } public void setMaxRetries(int maxRetries) { this.maxRetries = maxRetries; -- cgit v1.2.3 From 1a75d2ae8fa57011166110754fed3ab082a52302 Mon Sep 17 00:00:00 2001 From: clemenso Date: Tue, 7 Apr 2009 09:09:21 +0000 Subject: [maven-release-plugin] prepare release mocca-1.1.0 git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@329 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 14 +++++++------- BKUAppletExt/pom.xml | 14 +++++++------- BKUCommonGUI/pom.xml | 8 ++++---- BKULocal/pom.xml | 22 +++++++++++----------- BKULocalApp/pom.xml | 8 ++++---- BKUOnline/pom.xml | 24 ++++++++++++------------ BKUViewer/pom.xml | 6 +++--- STAL/pom.xml | 4 ++-- STALExt/pom.xml | 6 +++--- STALService/pom.xml | 6 +++--- STALXService/pom.xml | 10 +++++----- bkucommon/pom.xml | 17 +++++++---------- pom.xml | 8 ++++---- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 10 +++++----- utils/pom.xml | 4 ++-- 16 files changed, 81 insertions(+), 84 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index da5dbc6f..a0777ee6 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.5-SNAPSHOT + 1.1.0 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.0.5-SNAPSHOT + 1.1.0 @@ -74,27 +74,27 @@ at.gv.egiz smcc - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz STAL - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz STALService - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz smccSTAL - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz BKUCommonGUI - 1.0.5-SNAPSHOT + 1.1.0 \ No newline at end of file diff --git a/BKUAppletExt/pom.xml b/BKUAppletExt/pom.xml index 3ff88ed8..69daa021 100644 --- a/BKUAppletExt/pom.xml +++ b/BKUAppletExt/pom.xml @@ -3,34 +3,34 @@ bku at.gv.egiz - 1.0.5-SNAPSHOT + 1.1.0 4.0.0 at.gv.egiz BKUAppletExt BKU Applet Extension - 1.0.2-SNAPSHOT - + 1.1.0 + at.gv.egiz STALExt - 1.0.2-SNAPSHOT + 1.1.0 at.gv.egiz STALXService - 1.0.2-SNAPSHOT + 1.1.0 at.gv.egiz smccSTAL - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz BKUApplet - 1.0.5-SNAPSHOT + 1.1.0 diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index 47cd7545..34a13fdd 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -2,23 +2,23 @@ bku at.gv.egiz - 1.0.5-SNAPSHOT + 1.1.0 4.0.0 at.gv.egiz BKUCommonGUI BKU Common GUI - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz smcc - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz STAL - 1.0.5-SNAPSHOT + 1.1.0 compile diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index 5fd142a2..a211da42 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.0.5-SNAPSHOT + 1.1.0 4.0.0 at.gv.egiz BKULocal war BKU Local - 1.0.2-SNAPSHOT + 1.0.3 - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.1.0/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.1.0/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.1.0/BKULocal @@ -56,22 +56,22 @@ at.gv.egiz STAL - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz bkucommon - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz smcc - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz smccSTAL - 1.0.5-SNAPSHOT + 1.1.0 org.springframework @@ -96,12 +96,12 @@ at.gv.egiz BKUApplet - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz BKUViewer - 1.0.5-SNAPSHOT + 1.1.0 diff --git a/BKULocalApp/pom.xml b/BKULocalApp/pom.xml index bce6f584..d94b4893 100644 --- a/BKULocalApp/pom.xml +++ b/BKULocalApp/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.5-SNAPSHOT + 1.1.0 4.0.0 at.gv.egiz BKULocalApp BKU Local App - 1.0.2-SNAPSHOT + 1.0.3 @@ -76,13 +76,13 @@ at.gv.egiz BKULocal - 1.0.2-SNAPSHOT + 1.0.3 war utils at.gv.egiz - 1.0.5-SNAPSHOT + 1.1.0 compile diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index fc5f04fa..98090fcc 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -3,14 +3,14 @@ bku at.gv.egiz - 1.0.5-SNAPSHOT + 1.1.0 4.0.0 at.gv.egiz BKUOnline war BKU Online - 1.0.5-SNAPSHOT + 1.1.0 @@ -24,12 +24,12 @@ at.gv.egiz bkucommon - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz BKUViewer - 1.0.5-SNAPSHOT + 1.1.0 commons-logging @@ -53,13 +53,13 @@ at.gv.egiz STALService - 1.0.5-SNAPSHOT + 1.1.0 compile at.gv.egiz STALService - 1.0.5-SNAPSHOT + 1.1.0 + true + true
org.apache.maven.plugins maven-jar-plugin @@ -52,12 +49,12 @@ at.gv.egiz utils - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz STALExt - 1.0.2-SNAPSHOT + 1.1.0 commons-logging diff --git a/pom.xml b/pom.xml index 2ba2b2ae..98470ab0 100644 --- a/pom.xml +++ b/pom.xml @@ -3,7 +3,7 @@ at.gv.egiz bku pom - 1.0.5-SNAPSHOT + 1.1.0 BKU http://bku.egiz.gv.at @@ -41,9 +41,9 @@ - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk - scm:svn:svn+ssh://svn.egovlabs.gv.at/svnroot/mocca/trunk - svn://svn.egovlabs.gv.at/svnroot/mocca/trunk + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.1.0 + scm:svn:svn+ssh://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.1.0 + svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.1.0 E-Government Innovation Center (EGIZ) diff --git a/smcc/pom.xml b/smcc/pom.xml index 59128c43..e0e0526d 100644 --- a/smcc/pom.xml +++ b/smcc/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.0.5-SNAPSHOT + 1.1.0 4.0.0 at.gv.egiz smcc smcc jar - 1.0.5-SNAPSHOT + 1.1.0 http://bku.egiz.gv.at diff --git a/smccSTAL/pom.xml b/smccSTAL/pom.xml index 02e80632..29362f30 100644 --- a/smccSTAL/pom.xml +++ b/smccSTAL/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.0.5-SNAPSHOT + 1.1.0 4.0.0 at.gv.egiz smccSTAL smcc STAL - 1.0.5-SNAPSHOT + 1.1.0 @@ -24,17 +24,17 @@ at.gv.egiz STAL - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz smcc - 1.0.5-SNAPSHOT + 1.1.0 at.gv.egiz BKUCommonGUI - 1.0.5-SNAPSHOT + 1.1.0 iaik diff --git a/utils/pom.xml b/utils/pom.xml index aabab561..97938813 100644 --- a/utils/pom.xml +++ b/utils/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.0.5-SNAPSHOT + 1.1.0 4.0.0 at.gv.egiz utils BKU Utils jar - 1.0.5-SNAPSHOT + 1.1.0 http://bku.egiz.gv.at -- cgit v1.2.3 From 47bc6ce0d569d7bff1bab891c2f6ce66cd2a544e Mon Sep 17 00:00:00 2001 From: clemenso Date: Tue, 7 Apr 2009 09:13:32 +0000 Subject: [maven-release-plugin] prepare for next development iteration git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@331 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 14 +++++++------- BKUAppletExt/pom.xml | 12 ++++++------ BKUCommonGUI/pom.xml | 8 ++++---- BKULocal/pom.xml | 22 +++++++++++----------- BKULocalApp/pom.xml | 8 ++++---- BKUOnline/pom.xml | 24 ++++++++++++------------ BKUViewer/pom.xml | 6 +++--- STAL/pom.xml | 4 ++-- STALExt/pom.xml | 6 +++--- STALService/pom.xml | 6 +++--- STALXService/pom.xml | 8 ++++---- bkucommon/pom.xml | 8 ++++---- pom.xml | 8 ++++---- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 10 +++++----- utils/pom.xml | 4 ++-- 16 files changed, 76 insertions(+), 76 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index a0777ee6..020ac7e2 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.1.0 + 1.1.1-SNAPSHOT 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.1.0 + 1.1.1-SNAPSHOT @@ -74,27 +74,27 @@ at.gv.egiz smcc - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz STAL - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz STALService - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz smccSTAL - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz BKUCommonGUI - 1.1.0 + 1.1.1-SNAPSHOT \ No newline at end of file diff --git a/BKUAppletExt/pom.xml b/BKUAppletExt/pom.xml index 69daa021..936b7d3a 100644 --- a/BKUAppletExt/pom.xml +++ b/BKUAppletExt/pom.xml @@ -3,34 +3,34 @@ bku at.gv.egiz - 1.1.0 + 1.1.1-SNAPSHOT 4.0.0 at.gv.egiz BKUAppletExt BKU Applet Extension - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz STALExt - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz STALXService - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz smccSTAL - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz BKUApplet - 1.1.0 + 1.1.1-SNAPSHOT diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index 34a13fdd..5d09b7a6 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -2,23 +2,23 @@ bku at.gv.egiz - 1.1.0 + 1.1.1-SNAPSHOT 4.0.0 at.gv.egiz BKUCommonGUI BKU Common GUI - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz smcc - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz STAL - 1.1.0 + 1.1.1-SNAPSHOT compile diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index a211da42..3fdbbf44 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.1.0 + 1.1.1-SNAPSHOT 4.0.0 at.gv.egiz BKULocal war BKU Local - 1.0.3 + 1.0.4-SNAPSHOT - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.1.0/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.1.0/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.1.0/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal @@ -56,22 +56,22 @@ at.gv.egiz STAL - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz bkucommon - 1.1.0 + 1.0.6-SNAPSHOT at.gv.egiz smcc - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz smccSTAL - 1.1.0 + 1.1.1-SNAPSHOT org.springframework @@ -96,12 +96,12 @@ at.gv.egiz BKUApplet - 1.1.0 + 1.1.1-SNAPSHOT at.gv.egiz BKUViewer - 1.1.0 + 1.1.1-SNAPSHOT diff --git a/BKULocalApp/pom.xml b/BKULocalApp/pom.xml index d94b4893..8450c440 100644 --- a/BKULocalApp/pom.xml +++ b/BKULocalApp/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.1.0 + 1.1.1-SNAPSHOT 4.0.0 at.gv.egiz BKULocalApp BKU Local App - 1.0.3 + 1.0.4-SNAPSHOT @@ -76,13 +76,13 @@ at.gv.egiz BKULocal - 1.0.3 + 1.0.4-SNAPSHOT war utils at.gv.egiz - 1.1.0 + 1.1.1-SNAPSHOT compile diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index 98090fcc..abf4bfc1 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -3,14 +3,14 @@ bku at.gv.egiz - 1.1.0 + 1.1.1-SNAPSHOT 4.0.0 at.gv.egiz BKUOnline war BKU Online - 1.1.0 + 1.1.1-SNAPSHOT @@ -24,12 +24,12 @@ at.gv.egiz bkucommon - 1.1.0 + 1.0.6-SNAPSHOT at.gv.egiz BKUViewer - 1.1.0 + 1.1.1-SNAPSHOT commons-logging @@ -53,13 +53,13 @@ at.gv.egiz STALService - 1.1.0 + 1.1.1-SNAPSHOT compile at.gv.egiz STALService - 1.1.0 + 1.1.1-SNAPSHOT - 1.0.4-SNAPSHOT + 1.0.4 http://mocca.egovlabs.gv.at/ Bürgerkartenumgebung (MOCCA Web Start) @@ -199,13 +199,13 @@ at.gv.egiz BKULocal - 1.0.5-SNAPSHOT + 1.0.5 war utils at.gv.egiz - 1.1.2-SNAPSHOT + 1.2.0 iaik_ecc_signed diff --git a/STAL/pom.xml b/STAL/pom.xml index fe697029..32664530 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.1.2-SNAPSHOT + 1.2.0 4.0.0 at.gv.egiz STAL STAL - 1.1.2-SNAPSHOT + 1.2.0 commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index 83071652..4b1564a1 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.1.2-SNAPSHOT + 1.2.0 4.0.0 at.gv.egiz STALExt STAL Extension - 1.1.2-SNAPSHOT + 1.2.0 at.gv.egiz STAL - 1.1.2-SNAPSHOT + 1.2.0 \ No newline at end of file diff --git a/STALService/pom.xml b/STALService/pom.xml index 6bc4a922..0313bbed 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,19 +3,19 @@ bku at.gv.egiz - 1.1.2-SNAPSHOT + 1.2.0 4.0.0 at.gv.egiz STALService STAL Service - 1.1.2-SNAPSHOT + 1.2.0 at.gv.egiz STAL - 1.1.2-SNAPSHOT + 1.2.0 - 1.0.4 + 1.0.5-SNAPSHOT http://mocca.egovlabs.gv.at/ Bürgerkartenumgebung (MOCCA Web Start) @@ -199,13 +199,13 @@ at.gv.egiz BKULocal - 1.0.5 + 1.0.6-SNAPSHOT war utils at.gv.egiz - 1.2.0 + 1.2.1-SNAPSHOT iaik_ecc_signed diff --git a/STAL/pom.xml b/STAL/pom.xml index 32664530..622f0af4 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.0 + 1.2.1-SNAPSHOT 4.0.0 at.gv.egiz STAL STAL - 1.2.0 + 1.2.1-SNAPSHOT commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index 4b1564a1..19566f9d 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.2.0 + 1.2.1-SNAPSHOT 4.0.0 at.gv.egiz STALExt STAL Extension - 1.2.0 + 1.2.1-SNAPSHOT at.gv.egiz STAL - 1.2.0 + 1.2.1-SNAPSHOT \ No newline at end of file diff --git a/STALService/pom.xml b/STALService/pom.xml index 0313bbed..dd60866d 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,19 +3,19 @@ bku at.gv.egiz - 1.2.0 + 1.2.1-SNAPSHOT 4.0.0 at.gv.egiz STALService STAL Service - 1.2.0 + 1.2.1-SNAPSHOT at.gv.egiz STAL - 1.2.0 + 1.2.1-SNAPSHOT - 1.0.10-SNAPSHOT + 1.0.10 http://mocca.egovlabs.gv.at/ Bürgerkartenumgebung @@ -195,7 +194,7 @@ PKCS11 iaik.pkcs.pkcs11.provider.IAIKPkcs11 a-sit - + true false @@ -237,18 +236,18 @@ at.gv.egiz BKULocal - 1.0.10-SNAPSHOT + 1.0.10 war at.gv.egiz BKUCertificates - 1.0-SNAPSHOT + 1.0 utils at.gv.egiz - 1.2.1-SNAPSHOT + 1.2.1 iaik_ecc_signed @@ -299,4 +298,4 @@ ${java.home}/lib/javaws.jar - + \ No newline at end of file diff --git a/STAL/pom.xml b/STAL/pom.xml index 622f0af4..42b105bf 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.1-SNAPSHOT + 1.2.1 4.0.0 at.gv.egiz STAL STAL - 1.2.1-SNAPSHOT + 1.2.1 commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index 19566f9d..b4209e9b 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.2.1-SNAPSHOT + 1.2.1 4.0.0 at.gv.egiz STALExt STAL Extension - 1.2.1-SNAPSHOT + 1.2.1 at.gv.egiz STAL - 1.2.1-SNAPSHOT + 1.2.1 \ No newline at end of file diff --git a/STALService/pom.xml b/STALService/pom.xml index dd60866d..49695b00 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,19 +3,19 @@ bku at.gv.egiz - 1.2.1-SNAPSHOT + 1.2.1 4.0.0 at.gv.egiz STALService STAL Service - 1.2.1-SNAPSHOT + 1.2.1 at.gv.egiz STAL - 1.2.1-SNAPSHOT + 1.2.1 - 1.0.10 + 1.0.11-SNAPSHOT http://mocca.egovlabs.gv.at/ Bürgerkartenumgebung @@ -236,7 +236,7 @@ at.gv.egiz BKULocal - 1.0.10 + 1.0.11-SNAPSHOT war @@ -247,7 +247,7 @@ utils at.gv.egiz - 1.2.1 + 1.2.2-SNAPSHOT iaik_ecc_signed diff --git a/STAL/pom.xml b/STAL/pom.xml index 42b105bf..5b56a464 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.1 + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz STAL STAL - 1.2.1 + 1.2.2-SNAPSHOT commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index b4209e9b..483f0f8c 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.2.1 + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz STALExt STAL Extension - 1.2.1 + 1.2.2-SNAPSHOT at.gv.egiz STAL - 1.2.1 + 1.2.2-SNAPSHOT \ No newline at end of file diff --git a/STALService/pom.xml b/STALService/pom.xml index 49695b00..b6b2b8ce 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,19 +3,19 @@ bku at.gv.egiz - 1.2.1 + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz STALService STAL Service - 1.2.1 + 1.2.2-SNAPSHOT at.gv.egiz STAL - 1.2.1 + 1.2.2-SNAPSHOT - 1.0.11-SNAPSHOT + 1.2.3-SNAPSHOT http://mocca.egovlabs.gv.at/ Bürgerkartenumgebung diff --git a/STAL/pom.xml b/STAL/pom.xml index 5b56a464..4085c238 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz STAL STAL - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index 483f0f8c..13304d8d 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz STALExt STAL Extension - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT diff --git a/STALService/pom.xml b/STALService/pom.xml index b6b2b8ce..b7f1b189 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz STALService STAL Service - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT diff --git a/STALXService/pom.xml b/STALXService/pom.xml index c466d3b8..d303b3be 100644 --- a/STALXService/pom.xml +++ b/STALXService/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz STALXService STAL-X Service - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT http://maven.apache.org diff --git a/bkucommon/pom.xml b/bkucommon/pom.xml index 21e47b4f..52408952 100644 --- a/bkucommon/pom.xml +++ b/bkucommon/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz bkucommon BKU Common - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT diff --git a/pom.xml b/pom.xml index acd17bca..342e0612 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ at.gv.egiz bku pom - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT BKU http://bku.egiz.gv.at diff --git a/smcc/pom.xml b/smcc/pom.xml index d4526a1f..8a1a54ca 100644 --- a/smcc/pom.xml +++ b/smcc/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz smcc smcc jar - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT http://bku.egiz.gv.at diff --git a/smccSTAL/pom.xml b/smccSTAL/pom.xml index b816025b..98096ca7 100644 --- a/smccSTAL/pom.xml +++ b/smccSTAL/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz smccSTAL smcc STAL - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT diff --git a/smccSTALExt/pom.xml b/smccSTALExt/pom.xml index 481993e1..deb92bb4 100644 --- a/smccSTALExt/pom.xml +++ b/smccSTALExt/pom.xml @@ -1,15 +1,13 @@ - - + 4.0.0 bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT at.gv.egiz smccSTALExt - ${project.parent.version} + 1.2.3-SNAPSHOT smcc STAL Extension @@ -23,5 +21,4 @@ ${project.parent.version} - - + \ No newline at end of file diff --git a/utils/pom.xml b/utils/pom.xml index 6f4ff172..84c7a762 100644 --- a/utils/pom.xml +++ b/utils/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz utils BKU Utils jar - 1.2.2-SNAPSHOT + 1.2.3-SNAPSHOT http://bku.egiz.gv.at -- cgit v1.2.3 From ada7c53ce1c19ba26b988e43da51a1a99d584b14 Mon Sep 17 00:00:00 2001 From: clemenso Date: Thu, 20 Aug 2009 17:10:52 +0000 Subject: [maven-release-plugin] rollback the release of mocca-1.2.2 git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@454 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 4 ++-- BKUAppletExt/pom.xml | 4 ++-- BKUCertificates/pom.xml | 2 +- BKUCommonGUI/pom.xml | 4 ++-- BKUGuiExt/pom.xml | 11 +++++++---- BKUHelp/pom.xml | 2 +- BKULocal/pom.xml | 4 ++-- BKUOnline/pom.xml | 5 ++--- BKUViewer/pom.xml | 4 ++-- BKUWebStart/pom.xml | 4 ++-- STAL/pom.xml | 4 ++-- STALExt/pom.xml | 4 ++-- STALService/pom.xml | 4 ++-- STALXService/pom.xml | 4 ++-- bkucommon/pom.xml | 4 ++-- pom.xml | 10 +++++++++- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 4 ++-- smccSTALExt/pom.xml | 11 +++++++---- utils/pom.xml | 4 ++-- 20 files changed, 55 insertions(+), 42 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index 828a98a7..4f78e211 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT diff --git a/BKUAppletExt/pom.xml b/BKUAppletExt/pom.xml index 2cb095cc..cbd12022 100644 --- a/BKUAppletExt/pom.xml +++ b/BKUAppletExt/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz BKUAppletExt BKU Applet Extension - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT diff --git a/BKUCertificates/pom.xml b/BKUCertificates/pom.xml index 66b6c057..f651a8fa 100644 --- a/BKUCertificates/pom.xml +++ b/BKUCertificates/pom.xml @@ -3,7 +3,7 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT at.gv.egiz BKUCertificates diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index cbf28f53..ef6e6692 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz BKUCommonGUI BKU GUI - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT at.gv.egiz diff --git a/BKUGuiExt/pom.xml b/BKUGuiExt/pom.xml index 42a9f57d..87520232 100644 --- a/BKUGuiExt/pom.xml +++ b/BKUGuiExt/pom.xml @@ -1,13 +1,15 @@ - + + 4.0.0 bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT at.gv.egiz BKUGuiExt - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT BKU GUI Extension @@ -21,4 +23,5 @@ 1.2.2-SNAPSHOT - \ No newline at end of file + + diff --git a/BKUHelp/pom.xml b/BKUHelp/pom.xml index 957b6fa9..a28285e7 100644 --- a/BKUHelp/pom.xml +++ b/BKUHelp/pom.xml @@ -3,7 +3,7 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT at.gv.egiz BKUHelp diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index 6b79e745..81cb3df8 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz BKULocal war BKU Local - 1.2.3-SNAPSHOT + 1.0.11-SNAPSHOT scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index 5bcdef1b..3901a4ff 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -3,14 +3,14 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz BKUOnline war BKU Online - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT @@ -315,7 +315,6 @@ at.gv.egiz BKUWebStart - ${project.version} provided zip diff --git a/BKUViewer/pom.xml b/BKUViewer/pom.xml index 0dd3ad6f..f2f78ecf 100644 --- a/BKUViewer/pom.xml +++ b/BKUViewer/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz BKUViewer BKU Viewer - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT diff --git a/BKUWebStart/pom.xml b/BKUWebStart/pom.xml index 0fd975e8..c8278d59 100644 --- a/BKUWebStart/pom.xml +++ b/BKUWebStart/pom.xml @@ -2,7 +2,7 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz @@ -13,7 +13,7 @@ | IMPORTANT: update jnlp/resources/version.xml (BKUWebStart and utils) and | include-webstart profile in BKUOnline if version changes |--> - 1.2.3-SNAPSHOT + 1.0.11-SNAPSHOT http://mocca.egovlabs.gv.at/ Bürgerkartenumgebung diff --git a/STAL/pom.xml b/STAL/pom.xml index 4085c238..5b56a464 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz STAL STAL - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index 13304d8d..483f0f8c 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz STALExt STAL Extension - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT diff --git a/STALService/pom.xml b/STALService/pom.xml index b7f1b189..b6b2b8ce 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz STALService STAL Service - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT diff --git a/STALXService/pom.xml b/STALXService/pom.xml index d303b3be..c466d3b8 100644 --- a/STALXService/pom.xml +++ b/STALXService/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz STALXService STAL-X Service - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT http://maven.apache.org diff --git a/bkucommon/pom.xml b/bkucommon/pom.xml index 52408952..21e47b4f 100644 --- a/bkucommon/pom.xml +++ b/bkucommon/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz bkucommon BKU Common - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT diff --git a/pom.xml b/pom.xml index 342e0612..7f98c2ec 100644 --- a/pom.xml +++ b/pom.xml @@ -4,7 +4,7 @@ at.gv.egiz bku pom - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT BKU http://bku.egiz.gv.at @@ -261,6 +261,14 @@ jaxb-impl 2.1.9 + + + at.gv.egiz + BKUWebStart + 1.0.11-SNAPSHOT + zip + \ No newline at end of file diff --git a/smcc/pom.xml b/smcc/pom.xml index 8a1a54ca..d4526a1f 100644 --- a/smcc/pom.xml +++ b/smcc/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz smcc smcc jar - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT http://bku.egiz.gv.at diff --git a/smccSTAL/pom.xml b/smccSTAL/pom.xml index 98096ca7..b816025b 100644 --- a/smccSTAL/pom.xml +++ b/smccSTAL/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz smccSTAL smcc STAL - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT diff --git a/smccSTALExt/pom.xml b/smccSTALExt/pom.xml index deb92bb4..481993e1 100644 --- a/smccSTALExt/pom.xml +++ b/smccSTALExt/pom.xml @@ -1,13 +1,15 @@ - + + 4.0.0 bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT at.gv.egiz smccSTALExt - 1.2.3-SNAPSHOT + ${project.parent.version} smcc STAL Extension @@ -21,4 +23,5 @@ ${project.parent.version} - \ No newline at end of file + + diff --git a/utils/pom.xml b/utils/pom.xml index 84c7a762..6f4ff172 100644 --- a/utils/pom.xml +++ b/utils/pom.xml @@ -2,14 +2,14 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT 4.0.0 at.gv.egiz utils BKU Utils jar - 1.2.3-SNAPSHOT + 1.2.2-SNAPSHOT http://bku.egiz.gv.at -- cgit v1.2.3 From e676ab1e361aff7ff7417f8f6e93ad176ef6cb60 Mon Sep 17 00:00:00 2001 From: clemenso Date: Thu, 20 Aug 2009 17:27:08 +0000 Subject: [maven-release-plugin] prepare release mocca-1.2.2 git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@455 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 14 +++++++------- BKUAppletExt/pom.xml | 16 ++++++++-------- BKUCertificates/pom.xml | 2 +- BKUCommonGUI/pom.xml | 8 ++++---- BKUGuiExt/pom.xml | 15 ++++++--------- BKUHelp/pom.xml | 2 +- BKULocal/pom.xml | 24 ++++++++++++------------ BKUOnline/pom.xml | 24 ++++++++++++------------ BKUViewer/pom.xml | 6 +++--- BKUWebStart/pom.xml | 8 ++++---- STAL/pom.xml | 4 ++-- STALExt/pom.xml | 6 +++--- STALService/pom.xml | 6 +++--- STALXService/pom.xml | 8 ++++---- bkucommon/pom.xml | 8 ++++---- pom.xml | 10 +++++----- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 10 +++++----- smccSTALExt/pom.xml | 11 ++++------- utils/pom.xml | 4 ++-- 20 files changed, 92 insertions(+), 98 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index 4f78e211..fb90f314 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.2.2-SNAPSHOT + 1.2.2 @@ -98,27 +98,27 @@ at.gv.egiz smcc - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz STAL - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz STALService - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz smccSTAL - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz BKUCommonGUI - 1.2.2-SNAPSHOT + 1.2.2 \ No newline at end of file diff --git a/BKUAppletExt/pom.xml b/BKUAppletExt/pom.xml index cbd12022..0ba54934 100644 --- a/BKUAppletExt/pom.xml +++ b/BKUAppletExt/pom.xml @@ -2,44 +2,44 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 4.0.0 at.gv.egiz BKUAppletExt BKU Applet Extension - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz STALExt - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz STALXService - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz smccSTAL - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz BKUApplet - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz BKUGuiExt - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz smccSTALExt - 1.2.2-SNAPSHOT + 1.2.2 diff --git a/BKUCertificates/pom.xml b/BKUCertificates/pom.xml index f651a8fa..ec728b8b 100644 --- a/BKUCertificates/pom.xml +++ b/BKUCertificates/pom.xml @@ -3,7 +3,7 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz BKUCertificates diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index ef6e6692..09b75a88 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -2,23 +2,23 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 4.0.0 at.gv.egiz BKUCommonGUI BKU GUI - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz smcc - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz STAL - 1.2.2-SNAPSHOT + 1.2.2 compile diff --git a/BKUGuiExt/pom.xml b/BKUGuiExt/pom.xml index 87520232..064ceefa 100644 --- a/BKUGuiExt/pom.xml +++ b/BKUGuiExt/pom.xml @@ -1,27 +1,24 @@ - - + 4.0.0 bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz BKUGuiExt - 1.2.2-SNAPSHOT + 1.2.2 BKU GUI Extension at.gv.egiz STALXService - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz smccSTAL - 1.2.2-SNAPSHOT + 1.2.2 - - + \ No newline at end of file diff --git a/BKUHelp/pom.xml b/BKUHelp/pom.xml index a28285e7..29078da6 100644 --- a/BKUHelp/pom.xml +++ b/BKUHelp/pom.xml @@ -3,7 +3,7 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz BKUHelp diff --git a/BKULocal/pom.xml b/BKULocal/pom.xml index 81cb3df8..f08a7f9f 100644 --- a/BKULocal/pom.xml +++ b/BKULocal/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 4.0.0 at.gv.egiz BKULocal war BKU Local - 1.0.11-SNAPSHOT + 1.2.2 - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal - scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/trunk/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.2.2/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.2.2/BKULocal + scm:svn:svn://svn.egovlabs.gv.at/svnroot/mocca/tags/mocca-1.2.2/BKULocal @@ -76,37 +76,37 @@ at.gv.egiz STAL - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz bkucommon - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz smcc - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz smccSTAL - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz BKUGuiExt - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz smccSTALExt - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz BKUViewer - 1.2.2-SNAPSHOT + 1.2.2 BKUHelp diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml index 3901a4ff..8362b1a5 100644 --- a/BKUOnline/pom.xml +++ b/BKUOnline/pom.xml @@ -3,14 +3,14 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 4.0.0 at.gv.egiz BKUOnline war BKU Online - 1.2.2-SNAPSHOT + 1.2.2 @@ -24,12 +24,12 @@ at.gv.egiz bkucommon - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz BKUViewer - 1.2.2-SNAPSHOT + 1.2.2 BKUCertificates @@ -63,13 +63,13 @@ at.gv.egiz STALService - 1.2.2-SNAPSHOT + 1.2.2 compile at.gv.egiz STALService - 1.2.2-SNAPSHOT + 1.2.2 - 1.0.11-SNAPSHOT + 1.2.2 http://mocca.egovlabs.gv.at/ Bürgerkartenumgebung @@ -224,7 +224,7 @@ at.gv.egiz BKULocal - 1.0.11-SNAPSHOT + 1.2.2 war @@ -235,7 +235,7 @@ utils at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 iaik_ecc_signed diff --git a/STAL/pom.xml b/STAL/pom.xml index 5b56a464..60efbf70 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 4.0.0 at.gv.egiz STAL STAL - 1.2.2-SNAPSHOT + 1.2.2 commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index 483f0f8c..c548b3d7 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 4.0.0 at.gv.egiz STALExt STAL Extension - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz STAL - 1.2.2-SNAPSHOT + 1.2.2 \ No newline at end of file diff --git a/STALService/pom.xml b/STALService/pom.xml index b6b2b8ce..c38fec75 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,19 +3,19 @@ bku at.gv.egiz - 1.2.2-SNAPSHOT + 1.2.2 4.0.0 at.gv.egiz STALService STAL Service - 1.2.2-SNAPSHOT + 1.2.2 at.gv.egiz STAL - 1.2.2-SNAPSHOT + 1.2.2 - 1.2.2 + 1.2.3-SNAPSHOT http://mocca.egovlabs.gv.at/ Bürgerkartenumgebung @@ -224,7 +224,7 @@ at.gv.egiz BKULocal - 1.2.2 + 1.2.3-SNAPSHOT war @@ -235,7 +235,7 @@ utils at.gv.egiz - 1.2.2 + 1.2.3-SNAPSHOT iaik_ecc_signed diff --git a/STAL/pom.xml b/STAL/pom.xml index 60efbf70..4085c238 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.2 + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz STAL STAL - 1.2.2 + 1.2.3-SNAPSHOT commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index c548b3d7..66962ac5 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.2.2 + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz STALExt STAL Extension - 1.2.2 + 1.2.3-SNAPSHOT at.gv.egiz STAL - 1.2.2 + 1.2.3-SNAPSHOT \ No newline at end of file diff --git a/STALService/pom.xml b/STALService/pom.xml index c38fec75..3d10c457 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,19 +3,19 @@ bku at.gv.egiz - 1.2.2 + 1.2.3-SNAPSHOT 4.0.0 at.gv.egiz STALService STAL Service - 1.2.2 + 1.2.3-SNAPSHOT at.gv.egiz STAL - 1.2.2 + 1.2.3-SNAPSHOT - 1.2.3-SNAPSHOT + 1.2.3 http://mocca.egovlabs.gv.at/ Bürgerkartenumgebung @@ -224,7 +224,7 @@ at.gv.egiz BKULocal - 1.2.3-SNAPSHOT + 1.2.3 war @@ -235,7 +235,7 @@ utils at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.3 iaik_ecc_signed diff --git a/STAL/pom.xml b/STAL/pom.xml index 4085c238..9efc58dd 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.3 4.0.0 at.gv.egiz STAL STAL - 1.2.3-SNAPSHOT + 1.2.3 commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index 66962ac5..9a44fb8f 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.3 4.0.0 at.gv.egiz STALExt STAL Extension - 1.2.3-SNAPSHOT + 1.2.3 at.gv.egiz STAL - 1.2.3-SNAPSHOT + 1.2.3 \ No newline at end of file diff --git a/STALService/pom.xml b/STALService/pom.xml index 3d10c457..060e67f7 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,19 +3,19 @@ bku at.gv.egiz - 1.2.3-SNAPSHOT + 1.2.3 4.0.0 at.gv.egiz STALService STAL Service - 1.2.3-SNAPSHOT + 1.2.3 at.gv.egiz STAL - 1.2.3-SNAPSHOT + 1.2.3 - 1.2.3 + 1.2.4-SNAPSHOT http://mocca.egovlabs.gv.at/ Bürgerkartenumgebung @@ -224,7 +224,7 @@ at.gv.egiz BKULocal - 1.2.3 + 1.2.4-SNAPSHOT war @@ -235,7 +235,7 @@ utils at.gv.egiz - 1.2.3 + 1.2.4-SNAPSHOT iaik_ecc_signed diff --git a/STAL/pom.xml b/STAL/pom.xml index 9efc58dd..cf6f37e0 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.3 + 1.2.4-SNAPSHOT 4.0.0 at.gv.egiz STAL STAL - 1.2.3 + 1.2.4-SNAPSHOT commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index 9a44fb8f..36c6bb22 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.2.3 + 1.2.4-SNAPSHOT 4.0.0 at.gv.egiz STALExt STAL Extension - 1.2.3 + 1.2.4-SNAPSHOT at.gv.egiz STAL - 1.2.3 + 1.2.4-SNAPSHOT \ No newline at end of file diff --git a/STALService/pom.xml b/STALService/pom.xml index 060e67f7..c2b965a2 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,19 +3,19 @@ bku at.gv.egiz - 1.2.3 + 1.2.4-SNAPSHOT 4.0.0 at.gv.egiz STALService STAL Service - 1.2.3 + 1.2.4-SNAPSHOT at.gv.egiz STAL - 1.2.3 + 1.2.4-SNAPSHOT - + \ No newline at end of file diff --git a/STAL/pom.xml b/STAL/pom.xml index cf6f37e0..cc7573a0 100644 --- a/STAL/pom.xml +++ b/STAL/pom.xml @@ -3,13 +3,13 @@ bku at.gv.egiz - 1.2.4-SNAPSHOT + 1.2.4 4.0.0 at.gv.egiz STAL STAL - 1.2.4-SNAPSHOT + 1.2.4 commons-logging diff --git a/STALExt/pom.xml b/STALExt/pom.xml index 36c6bb22..d7867a65 100644 --- a/STALExt/pom.xml +++ b/STALExt/pom.xml @@ -2,19 +2,19 @@ bku at.gv.egiz - 1.2.4-SNAPSHOT + 1.2.4 4.0.0 at.gv.egiz STALExt STAL Extension - 1.2.4-SNAPSHOT + 1.2.4 at.gv.egiz STAL - 1.2.4-SNAPSHOT + 1.2.4 \ No newline at end of file diff --git a/STALService/pom.xml b/STALService/pom.xml index c2b965a2..7c4c749d 100644 --- a/STALService/pom.xml +++ b/STALService/pom.xml @@ -3,19 +3,19 @@ bku at.gv.egiz - 1.2.4-SNAPSHOT + 1.2.4 4.0.0 at.gv.egiz STALService STAL Service - 1.2.4-SNAPSHOT + 1.2.4 at.gv.egiz STAL - 1.2.4-SNAPSHOT + 1.2.4 ${basedir}/src/main/wsdl stal-service.wsdl diff --git a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java index eab9bed5..c8ab280f 100644 --- a/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java +++ b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java @@ -267,6 +267,7 @@ public class STALServiceImpl implements STALPortType { ref.setID(reqRefId); ref.setMimeType(reqHdi.getMimeType()); ref.setEncoding(reqHdi.getEncoding()); + ref.setFilename(reqHdi.getFilename()); ref.setValue(baos.toByteArray()); response.getReference().add(ref); } catch (IOException ex) { diff --git a/BKUOnline/src/main/webapp/META-INF/context.xml b/BKUOnline/src/main/webapp/META-INF/context.xml index f38215a1..2a2da79e 100644 --- a/BKUOnline/src/main/webapp/META-INF/context.xml +++ b/BKUOnline/src/main/webapp/META-INF/context.xml @@ -16,4 +16,4 @@ limitations under the License. --> - + diff --git a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd index 2389e043..a420035f 100644 --- a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd +++ b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd @@ -151,6 +151,7 @@ + diff --git a/BKUOnline/src/main/wsdl/stal-service.xsd b/BKUOnline/src/main/wsdl/stal-service.xsd index 870e2db6..177b9e7f 100644 --- a/BKUOnline/src/main/wsdl/stal-service.xsd +++ b/BKUOnline/src/main/wsdl/stal-service.xsd @@ -166,6 +166,7 @@ + diff --git a/BKUOnline/src/test/java/at/gv/egiz/stal/service/STALRequestBrokerTest.java b/BKUOnline/src/test/java/at/gv/egiz/stal/service/STALRequestBrokerTest.java index a1f3864e..741974eb 100644 --- a/BKUOnline/src/test/java/at/gv/egiz/stal/service/STALRequestBrokerTest.java +++ b/BKUOnline/src/test/java/at/gv/egiz/stal/service/STALRequestBrokerTest.java @@ -126,6 +126,12 @@ public class STALRequestBrokerTest { public String getEncoding() { return "UTF-8"; } + + + @Override + public String getFilename() { + return "file.txt"; + } }; r1.setHashDataInput(Collections.singletonList(hdi)); requests.add(r1); @@ -172,6 +178,11 @@ public class STALRequestBrokerTest { public String getEncoding() { return "UTF-8"; } + + @Override + public String getFilename() { + return "file.txt"; + } }; r1.setHashDataInput(Collections.singletonList(hdi)); requests.add(r1); @@ -231,6 +242,11 @@ public class STALRequestBrokerTest { public String getEncoding() { return "UTF-8"; } + + @Override + public String getFilename() { + return "file.txt"; + } }; r1.setHashDataInput(Collections.singletonList(hdi)); requests.add(r1); @@ -259,6 +275,11 @@ public class STALRequestBrokerTest { public String getEncoding() { return "UTF-8"; } + + @Override + public String getFilename() { + return "file.xml"; + } }; r2.setHashDataInput(Collections.singletonList(hdi2)); requests2.add(r2); diff --git a/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java b/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java index 62c25fc4..7092470c 100644 --- a/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java +++ b/STAL/src/main/java/at/gv/egiz/stal/HashDataInput.java @@ -31,6 +31,8 @@ public interface HashDataInput { public String getEncoding(); + public String getFilename(); + public InputStream getHashDataInput(); } diff --git a/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputResponseType.java b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputResponseType.java index 7536d936..ad029757 100644 --- a/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputResponseType.java +++ b/STALService/src/main/java/at/gv/egiz/stal/service/types/GetHashDataInputResponseType.java @@ -28,6 +28,7 @@ import javax.xml.bind.annotation.XmlValue; * <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="Encoding" type="{http://www.w3.org/2001/XMLSchema}string" /> + * <attribute name="Filename" type="{http://www.w3.org/2001/XMLSchema}string" /> * </extension> * </simpleContent> * </complexType> @@ -118,6 +119,7 @@ public class GetHashDataInputResponseType { * <attribute name="ID" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" /> * <attribute name="Encoding" type="{http://www.w3.org/2001/XMLSchema}string" /> + * <attribute name="Filename" type="{http://www.w3.org/2001/XMLSchema}string" /> * </extension> * </simpleContent> * </complexType> @@ -139,6 +141,8 @@ public class GetHashDataInputResponseType { protected String mimeType; @XmlAttribute(name = "Encoding") protected String encoding; + @XmlAttribute(name = "Filename") + protected String filename; /** * Gets the value of the value property. @@ -234,6 +238,30 @@ public class GetHashDataInputResponseType { this.encoding = value; } + /** + * Gets the value of the filename property. + * + * @return + * possible object is + * {@link String } + * + */ + public String getFilename() { + return filename; + } + + /** + * Sets the value of the filename property. + * + * @param value + * allowed object is + * {@link String } + * + */ + public void setFilename(String value) { + this.filename = value; + } + } } diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/binding/HTTPBindingProcessor.java b/bkucommon/src/main/java/at/gv/egiz/bku/binding/HTTPBindingProcessor.java index b1906666..e39addb5 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/binding/HTTPBindingProcessor.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/binding/HTTPBindingProcessor.java @@ -339,6 +339,7 @@ public class HTTPBindingProcessor extends AbstractBindingProcessor implements // process headers and request setHTTPHeaders(dataUrlResponse.getResponseHeaders()); consumeRequestStream(dataUrlResponse.getStream()); + //TODO check for bindingProcessorError closeDataUrlConnection(); srcContex.setSourceCertificate(conn.getServerCertificate()); srcContex.setSourceIsDataURL(true); diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/DataObjectHashDataInput.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/DataObjectHashDataInput.java index 1a9b56fb..57358ba0 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/DataObjectHashDataInput.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/DataObjectHashDataInput.java @@ -50,4 +50,10 @@ public class DataObjectHashDataInput implements HashDataInput { return HttpUtil.getCharset(dataObject.getMimeType(), false); } + @Override + public String getFilename() { + //TODO obtain filename from dataObject, if not set return null or get filename (extension!) from mimetype + return dataObject.getFilename(); + } + } diff --git a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/xsect/DataObject.java b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/xsect/DataObject.java index 89124d16..6e84081e 100644 --- a/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/xsect/DataObject.java +++ b/bkucommon/src/main/java/at/gv/egiz/bku/slcommands/impl/xsect/DataObject.java @@ -49,8 +49,6 @@ import javax.xml.crypto.dsig.spec.XPathType; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.w3._2000._09.xmldsig_.TransformType; -import org.w3._2000._09.xmldsig_.TransformsType; import org.w3c.dom.DOMConfiguration; import org.w3c.dom.DOMException; import org.w3c.dom.Document; @@ -71,6 +69,7 @@ import at.buergerkarte.namespaces.securitylayer._1.DataObjectInfoType; import at.buergerkarte.namespaces.securitylayer._1.MetaInfoType; import at.buergerkarte.namespaces.securitylayer._1.TransformsInfoType; import at.gv.egiz.bku.binding.HttpUtil; +import at.gv.egiz.bku.gui.viewer.MimeTypes; import at.gv.egiz.bku.slexceptions.SLCommandException; import at.gv.egiz.bku.slexceptions.SLRequestException; import at.gv.egiz.bku.slexceptions.SLRuntimeException; @@ -81,11 +80,11 @@ import at.gv.egiz.bku.viewer.ValidationException; import at.gv.egiz.bku.viewer.Validator; import at.gv.egiz.bku.viewer.ValidatorFactory; import at.gv.egiz.dom.DOMUtils; -import at.gv.egiz.marshal.NamespacePrefixMapperImpl; import at.gv.egiz.slbinding.impl.XMLContentType; -import javax.xml.namespace.NamespaceContext; -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; +import java.io.File; +import java.net.MalformedURLException; +import java.net.URI; +import java.net.URL; /** * This class represents a DataObject of an XML-Signature @@ -184,7 +183,9 @@ public class DataObject { * An optional description of the digest input. */ private String description; - + + private String filename; + /** * Creates a new instance. * @@ -230,6 +231,10 @@ public class DataObject { return mimeType; } + public String getFilename() { + return filename; + } + /** * @return the description */ @@ -336,7 +341,74 @@ public class DataObject { } // other values are not allowed by the schema and are therefore ignored - + + this.filename = deriveFilename(); + } + + /** + * Extract filename from reference URI + * or propose reference Id with an apropriate (mime-type) file extension + * + * @return if neither reference nor id can be extracted return null (or data.extension?) + */ + private String deriveFilename() { + + String filename = null; + + if (reference != null) { + if (reference.getURI() != null && !"".equals(reference.getURI())) { + try { + log.info("deriving filename from reference URI " + reference.getURI()); + URI refURI = new URI(reference.getURI()); + + if (refURI.isOpaque()) { + // could check scheme component, but also allow other schemes (e.g. testlocal) + log.trace("opaque reference URI, use scheme-specific part as filename"); + filename = refURI.getSchemeSpecificPart(); + if (!hasExtension(filename)) { + filename += MimeTypes.getExtension(mimeType); + } + // else hierarchical URI: + // for shorthand xpointer use fragment as filename, + // for any other xpointer use reference Id and + // for any other hierarchical (absolute or relative) use filename (ignore fragment, see xmldsig section 4.3.3.2: fragments not recommendet) + } else if ("".equals(refURI.getPath()) && + refURI.getFragment() != null && + refURI.getFragment().indexOf('(') < 0) { // exclude (schemebased) xpointer expressions + log.trace("fragment (shorthand xpointer) URI, use fragment as filename"); + filename = refURI.getFragment(); + if(!hasExtension(filename)) { + filename += MimeTypes.getExtension(mimeType); + } + } else if (!"".equals(refURI.getPath())) { + log.trace("hierarchical URI with path component, use path as filename"); + File refFile = new File(refURI.getPath()); + filename = refFile.getName(); + if(!hasExtension(filename)) { + filename += MimeTypes.getExtension(mimeType); + } + } else { + log.info("failed to derive filename from URI '" + refURI + "', derive filename from reference ID"); + filename = reference.getId() + MimeTypes.getExtension(mimeType); + } + } catch (URISyntaxException ex) { + log.error("failed to derive filename from invalid URI " + ex.getMessage()); + filename = reference.getId() + MimeTypes.getExtension(mimeType); + } + } else { + log.info("same-document URI, derive filename from reference ID"); + filename = reference.getId() + MimeTypes.getExtension(mimeType); + } + } else { + log.error("failed to derive filename, no reference created"); + } + log.debug("derived filename for reference " + reference.getId() + ": " + filename); + return filename; + } + + private static boolean hasExtension(String filename) { + int extDelimiterInd = filename.lastIndexOf('.'); + return extDelimiterInd >= 0 && extDelimiterInd >= filename.length() - 4; } private byte[] getTransformsBytes(at.gv.egiz.slbinding.impl.TransformsInfoType ti) { diff --git a/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/xsect/SignatureTest.java b/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/xsect/SignatureTest.java index 7ce7b42d..ccd29e85 100644 --- a/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/xsect/SignatureTest.java +++ b/bkucommon/src/test/java/at/gv/egiz/bku/slcommands/impl/xsect/SignatureTest.java @@ -443,8 +443,11 @@ public class SignatureTest { @SuppressWarnings("unchecked") @Test + public void testDataObject_XMLContent_1() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { + System.out.println("\n ****************** testDataObject_XMLContent_1 \n"); + List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_XMLContent_1.xml"); Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); @@ -485,6 +488,8 @@ public class SignatureTest { @Test public void testDataObject_XMLContent_2() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { + System.out.println("\n ****************** testDataObject_XMLContent_2 \n"); + List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_XMLContent_2.xml"); Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); @@ -526,6 +531,8 @@ public class SignatureTest { @Test public void testDataObject_LocRefContent_1() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { + System.out.println("\n ****************** testDataObject_LocRefContent_1 \n"); + List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_LocRefContent_1.xml"); Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); @@ -535,7 +542,7 @@ public class SignatureTest { } signature.buildXMLSignature(); - + signAndMarshalSignature(signature); List references = signature.getReferences(); @@ -564,6 +571,8 @@ public class SignatureTest { @Test public void testDataObject_LocRefContent_2() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { + System.out.println("\n ****************** testDataObject_LocRefContent_2 \n"); + List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_LocRefContent_2.xml"); Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); @@ -602,6 +611,8 @@ public class SignatureTest { @Test public void testDataObject_Reference_1() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { + System.out.println("\n ****************** testDataObject_Reference_1 \n"); + List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_Reference_1.xml"); Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); @@ -640,6 +651,8 @@ public class SignatureTest { @Test public void testDataObject_Detached_1() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { + System.out.println("\n ****************** testDataObject_Detached_1 \n"); + List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_Detached_1.xml"); Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); @@ -671,6 +684,8 @@ public class SignatureTest { @Test public void testDataObject_Detached_Base64Content() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { + System.out.println("\n ****************** testDataObject_Detached_Base64Content \n"); + List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_Detached_Base64Content.xml"); Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); @@ -698,6 +713,39 @@ public class SignatureTest { } + @SuppressWarnings("unchecked") + @Test + public void testDataObject_Detached_LocRefContent() throws JAXBException, SLCommandException, XMLStreamException, SLRequestException, MarshalException, XMLSignatureException, SLViewerException { + + System.out.println("\n ****************** testDataObject_Detached_LocRefContent \n"); + + List dataObjectInfos = unmarshalDataObjectInfo("DataObjectInfo_Detached_LocRefContent.xml"); + + Signature signature = new Signature(null, new IdValueFactoryImpl(), new AlgorithmMethodFactoryImpl()); + + for (DataObjectInfoType dataObjectInfo : dataObjectInfos) { + signature.addDataObject(dataObjectInfo); + } + + signature.buildXMLSignature(); + + signAndMarshalSignature(signature); + + List references = signature.getReferences(); + assertTrue(references.size() == 2); + + Reference reference = references.get(0); + assertNotNull(reference.getId()); + + List transforms = reference.getTransforms(); + assertTrue(transforms.size() == 0); + + List objects = signature.getXMLObjects(); + assertNotNull(objects); + assertTrue(objects.size() == 1); + + } + // // // TransformsInfo diff --git a/bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/impl/DataObjectInfo_Detached_LocRefContent.xml b/bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/impl/DataObjectInfo_Detached_LocRefContent.xml new file mode 100644 index 00000000..75f45ff0 --- /dev/null +++ b/bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/impl/DataObjectInfo_Detached_LocRefContent.xml @@ -0,0 +1,13 @@ + + + + + testlocal:DataObject1.bin + + + + application/octet-stream + + + + \ No newline at end of file diff --git a/bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/impl/DataObjectInfo_LocRefContent_2.xml b/bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/impl/DataObjectInfo_LocRefContent_2.xml index 852c115f..a94f51b6 100644 --- a/bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/impl/DataObjectInfo_LocRefContent_2.xml +++ b/bkucommon/src/test/resources/at/gv/egiz/bku/slcommands/impl/DataObjectInfo_LocRefContent_2.xml @@ -6,7 +6,7 @@ - application/octetstream + application/octet-stream diff --git a/utils/src/main/java/at/gv/egiz/slbinding/RedirectEventFilter.java b/utils/src/main/java/at/gv/egiz/slbinding/RedirectEventFilter.java index 14c5ba48..5fe84aae 100644 --- a/utils/src/main/java/at/gv/egiz/slbinding/RedirectEventFilter.java +++ b/utils/src/main/java/at/gv/egiz/slbinding/RedirectEventFilter.java @@ -153,9 +153,6 @@ public class RedirectEventFilter implements EventFilter { private void redirectEvent(XMLEvent event) { try { - if (log.isTraceEnabled()) { - log.trace("redirecting StAX event " + event); - } redirectWriter.add(event); } catch (XMLStreamException ex) { ex.printStackTrace(); diff --git a/utils/src/main/java/at/gv/egiz/slbinding/impl/TransformsInfoType.java b/utils/src/main/java/at/gv/egiz/slbinding/impl/TransformsInfoType.java index 1180e9fa..b1de9406 100644 --- a/utils/src/main/java/at/gv/egiz/slbinding/impl/TransformsInfoType.java +++ b/utils/src/main/java/at/gv/egiz/slbinding/impl/TransformsInfoType.java @@ -22,6 +22,7 @@ package at.gv.egiz.slbinding.impl; import at.gv.egiz.slbinding.*; import java.io.ByteArrayOutputStream; +import java.io.UnsupportedEncodingException; import java.util.HashSet; import java.util.Set; import javax.xml.bind.annotation.XmlTransient; @@ -62,6 +63,13 @@ public class TransformsInfoType extends at.buergerkarte.namespaces.securitylayer log.debug("disabling event redirection for TransformsInfoType"); filter.flushRedirectStream(); filter.setRedirectStream(null); + if (log.isDebugEnabled()) { + try { + log.debug("redirected events (UTF-8): " + redirectOS.toString("UTF-8")); + } catch (UnsupportedEncodingException ex) { + log.debug("failed to log redirected events", ex); + } + } } @Override diff --git a/utils/src/main/java/at/gv/egiz/slbinding/impl/XMLContentType.java b/utils/src/main/java/at/gv/egiz/slbinding/impl/XMLContentType.java index eb147f88..fd52e378 100644 --- a/utils/src/main/java/at/gv/egiz/slbinding/impl/XMLContentType.java +++ b/utils/src/main/java/at/gv/egiz/slbinding/impl/XMLContentType.java @@ -23,6 +23,8 @@ package at.gv.egiz.slbinding.impl; import at.gv.egiz.slbinding.RedirectCallback; import at.gv.egiz.slbinding.RedirectEventFilter; import java.io.ByteArrayOutputStream; +import java.io.UnsupportedEncodingException; + import javax.xml.bind.annotation.XmlTransient; import javax.xml.stream.XMLStreamException; import org.apache.commons.logging.Log; @@ -51,6 +53,13 @@ public class XMLContentType extends at.buergerkarte.namespaces.securitylayer._1. log.debug("disabling event redirection for XMLContentType"); filter.flushRedirectStream(); filter.setRedirectStream(null); + if (log.isDebugEnabled()) { + try { + log.debug("redirected events (UTF-8): " + redirectOS.toString("UTF-8")); + } catch (UnsupportedEncodingException ex) { + log.debug("failed to log redirected events", ex); + } + } } @Override -- cgit v1.2.3 From ceeaeb1790d1ed1ef9565f7c47e8bf247a83f28c Mon Sep 17 00:00:00 2001 From: clemenso Date: Wed, 2 Dec 2009 09:19:40 +0000 Subject: [maven-release-plugin] prepare release mocca-1.2.9 git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@558 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4 --- BKUApplet/pom.xml | 14 +++++++------- BKUAppletExt/pom.xml | 16 ++++++++-------- BKUCertificates/pom.xml | 4 ++-- BKUCommonGUI/pom.xml | 8 ++++---- BKUFonts/pom.xml | 4 ++-- BKUGuiExt/pom.xml | 8 ++++---- BKUHelp/pom.xml | 4 ++-- BKULocal/pom.xml | 26 +++++++++++++------------- BKUOnline/pom.xml | 28 ++++++++++++++-------------- BKUViewer/pom.xml | 8 ++++---- BKUWebStart/pom.xml | 6 +++--- STAL/pom.xml | 4 ++-- STALExt/pom.xml | 6 +++--- STALService/pom.xml | 6 +++--- STALXService/pom.xml | 8 ++++---- bkucommon/pom.xml | 4 ++-- pom.xml | 10 +++++----- smcc/pom.xml | 4 ++-- smccSTAL/pom.xml | 10 +++++----- smccSTALExt/pom.xml | 4 ++-- utils/pom.xml | 4 ++-- 21 files changed, 93 insertions(+), 93 deletions(-) (limited to 'STAL') diff --git a/BKUApplet/pom.xml b/BKUApplet/pom.xml index 0c6768aa..3bafd8c9 100644 --- a/BKUApplet/pom.xml +++ b/BKUApplet/pom.xml @@ -2,13 +2,13 @@ bku at.gv.egiz - 1.2.9-SNAPSHOT + 1.2.9 4.0.0 at.gv.egiz BKUApplet BKU Applet - 1.2.9-SNAPSHOT + 1.2.9 @@ -118,27 +118,27 @@ at.gv.egiz smcc - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz STAL - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz STALService - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz smccSTAL - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz BKUCommonGUI - 1.2.9-SNAPSHOT + 1.2.9 \ No newline at end of file diff --git a/BKUAppletExt/pom.xml b/BKUAppletExt/pom.xml index 84c4844c..cb831cff 100644 --- a/BKUAppletExt/pom.xml +++ b/BKUAppletExt/pom.xml @@ -2,44 +2,44 @@ bku at.gv.egiz - 1.2.9-SNAPSHOT + 1.2.9 4.0.0 at.gv.egiz BKUAppletExt BKU Applet Extension - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz STALExt - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz STALXService - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz smccSTAL - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz BKUApplet - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz BKUGuiExt - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz smccSTALExt - 1.2.9-SNAPSHOT + 1.2.9 diff --git a/BKUCertificates/pom.xml b/BKUCertificates/pom.xml index 14cd84bf..4313dbb1 100644 --- a/BKUCertificates/pom.xml +++ b/BKUCertificates/pom.xml @@ -3,11 +3,11 @@ bku at.gv.egiz - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz BKUCertificates - 1.1-SNAPSHOT + 1.1 BKU Certificates diff --git a/BKUCommonGUI/pom.xml b/BKUCommonGUI/pom.xml index e077401f..453a34ae 100644 --- a/BKUCommonGUI/pom.xml +++ b/BKUCommonGUI/pom.xml @@ -2,23 +2,23 @@ bku at.gv.egiz - 1.2.9-SNAPSHOT + 1.2.9 4.0.0 at.gv.egiz BKUCommonGUI BKU GUI - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz smcc - 1.2.9-SNAPSHOT + 1.2.9 at.gv.egiz STAL - 1.2.9-SNAPSHOT + 1.2.9 compile