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
---
BKUOnline/catalog.xml | 4 +
BKUOnline/nb-configuration.xml | 15 +
BKUOnline/pom.xml | 120 +
BKUOnline/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 ++++++++++++++++++++
.../src/main/custom-binding/stalservice-custom.xml | 102 +
.../src/main/custom-binding/staltypes-custom.xml | 70 +
.../at/gv/egiz/bku/online/conf/Configurator.java | 69 +
.../egiz/bku/online/webapp/BKURequestHandler.java | 91 +
.../gv/egiz/bku/online/webapp/ResultServlet.java | 120 +
.../gv/egiz/bku/online/webapp/SessionTimeout.java | 49 +
.../egiz/bku/online/webapp/SpringBKUServlet.java | 31 +
.../service/impl/RequestBrokerSTALFactory.java | 38 +
.../egiz/stal/service/impl/STALRequestBroker.java | 43 +
.../stal/service/impl/STALRequestBrokerImpl.java | 554 +++++
.../gv/egiz/stal/service/impl/STALServiceImpl.java | 220 ++
.../src/main/resources/commons-logging.properties | 16 +
BKUOnline/src/main/resources/log4j.properties | 34 +
BKUOnline/src/main/webapp/HTTP-ohne.html | 85 +
BKUOnline/src/main/webapp/META-INF/MANIFEST.MF | 3 +
BKUOnline/src/main/webapp/META-INF/context.xml | 18 +
.../src/main/webapp/WEB-INF/applicationContext.xml | 43 +
BKUOnline/src/main/webapp/WEB-INF/sun-jaxws.xml | 36 +
BKUOnline/src/main/webapp/WEB-INF/web.xml | 97 +
BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.wsdl | 82 +
BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd | 135 ++
BKUOnline/src/main/webapp/appletPage.jsp | 65 +
BKUOnline/src/main/webapp/expired.html | 28 +
BKUOnline/src/main/webapp/index.html | 59 +
BKUOnline/src/main/webapp/js/deployJava.js | 886 +++++++
.../egiz/stal/service/STALRequestBrokerTest.java | 362 +++
32 files changed, 6376 insertions(+)
create mode 100644 BKUOnline/catalog.xml
create mode 100644 BKUOnline/nb-configuration.xml
create mode 100644 BKUOnline/pom.xml
create mode 100644 BKUOnline/private/cache/retriever/catalog.xml
create mode 100644 BKUOnline/private/cache/retriever/java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd
create mode 100644 BKUOnline/private/cache/retriever/www.w3.org/2001/XMLSchema.xsd
create mode 100644 BKUOnline/src/main/custom-binding/stalservice-custom.xml
create mode 100644 BKUOnline/src/main/custom-binding/staltypes-custom.xml
create mode 100644 BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
create mode 100644 BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/BKURequestHandler.java
create mode 100644 BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/ResultServlet.java
create mode 100644 BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SessionTimeout.java
create mode 100644 BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java
create mode 100644 BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/RequestBrokerSTALFactory.java
create mode 100644 BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBroker.java
create mode 100644 BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java
create mode 100644 BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java
create mode 100644 BKUOnline/src/main/resources/commons-logging.properties
create mode 100644 BKUOnline/src/main/resources/log4j.properties
create mode 100644 BKUOnline/src/main/webapp/HTTP-ohne.html
create mode 100644 BKUOnline/src/main/webapp/META-INF/MANIFEST.MF
create mode 100644 BKUOnline/src/main/webapp/META-INF/context.xml
create mode 100644 BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
create mode 100644 BKUOnline/src/main/webapp/WEB-INF/sun-jaxws.xml
create mode 100644 BKUOnline/src/main/webapp/WEB-INF/web.xml
create mode 100644 BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.wsdl
create mode 100644 BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd
create mode 100644 BKUOnline/src/main/webapp/appletPage.jsp
create mode 100644 BKUOnline/src/main/webapp/expired.html
create mode 100644 BKUOnline/src/main/webapp/index.html
create mode 100644 BKUOnline/src/main/webapp/js/deployJava.js
create mode 100644 BKUOnline/src/test/java/at/gv/egiz/stal/service/STALRequestBrokerTest.java
(limited to 'BKUOnline')
diff --git a/BKUOnline/catalog.xml b/BKUOnline/catalog.xml
new file mode 100644
index 00000000..38c98894
--- /dev/null
+++ b/BKUOnline/catalog.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/BKUOnline/nb-configuration.xml b/BKUOnline/nb-configuration.xml
new file mode 100644
index 00000000..4bfb3c58
--- /dev/null
+++ b/BKUOnline/nb-configuration.xml
@@ -0,0 +1,15 @@
+
+
+This file contains additional configuration written by modules in the NetBeans IDE.
+The configuration is intended to be shared among all the users of project and
+therefore it is assumed to be part of version control checkout.
+Without this configuration present, some functionality in the IDE may be limited or fail altogether.
+
+
+
+
+ src/main/webapp/WEB-INF/applicationContext.xml
+
+
+
+
diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml
new file mode 100644
index 00000000..dacdbaf5
--- /dev/null
+++ b/BKUOnline/pom.xml
@@ -0,0 +1,120 @@
+
+
+
+ bku
+ at.gv.egiz
+ 1.0-SNAPSHOT
+
+ 4.0.0
+ at.gv.egiz
+ BKUOnline
+ war
+ BKU Online
+ 1.0-SNAPSHOT
+
+
+ at.gv.egiz
+ bkucommon
+ 1.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-SNAPSHOT
+ compile
+
+
+
+ com.sun.xml.ws
+
+ jaxws-rt
+ 2.1.4
+
+
+
+
+ Tomcat60
+
+
+
+
+ maven-dependency-plugin
+
+
+ copyapplet
+
+ copy
+
+
+
+
+ at.gv.egiz
+ BKUApplet
+ 1.0-SNAPSHOT
+
+
+ commons-logging
+ commons-logging
+
+
+ ${project.build.directory}/${project.build.finalName}/applet
+
+
+
+
+
+
+
+
diff --git a/BKUOnline/private/cache/retriever/catalog.xml b/BKUOnline/private/cache/retriever/catalog.xml
new file mode 100644
index 00000000..c40b0d50
--- /dev/null
+++ b/BKUOnline/private/cache/retriever/catalog.xml
@@ -0,0 +1,5 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/BKUOnline/private/cache/retriever/java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd b/BKUOnline/private/cache/retriever/java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd
new file mode 100644
index 00000000..f9a884c0
--- /dev/null
+++ b/BKUOnline/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/BKUOnline/private/cache/retriever/www.w3.org/2001/XMLSchema.xsd b/BKUOnline/private/cache/retriever/www.w3.org/2001/XMLSchema.xsd
new file mode 100644
index 00000000..2e9a2729
--- /dev/null
+++ b/BKUOnline/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/BKUOnline/src/main/custom-binding/stalservice-custom.xml b/BKUOnline/src/main/custom-binding/stalservice-custom.xml
new file mode 100644
index 00000000..384b04f7
--- /dev/null
+++ b/BKUOnline/src/main/custom-binding/stalservice-custom.xml
@@ -0,0 +1,102 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ false
+
+
+
+
+
+
+ Fetch the next request.
+
+
+
+
+
+
+ true
+ false
+
+
+
+
+
+ Fetch the signed references corresponding to the previous SignatureRequest.
+
+
+
+
+
+
+ true
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/BKUOnline/src/main/custom-binding/staltypes-custom.xml b/BKUOnline/src/main/custom-binding/staltypes-custom.xml
new file mode 100644
index 00000000..2ea42082
--- /dev/null
+++ b/BKUOnline/src/main/custom-binding/staltypes-custom.xml
@@ -0,0 +1,70 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
new file mode 100644
index 00000000..0cb717c4
--- /dev/null
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
@@ -0,0 +1,69 @@
+/*
+* 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.online.conf;
+
+import iaik.security.ecc.provider.ECCProvider;
+import iaik.xml.crypto.XSecProvider;
+
+import java.net.HttpURLConnection;
+import java.security.Provider;
+import java.security.Security;
+
+import javax.net.ssl.HttpsURLConnection;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import at.gv.egiz.bku.slcommands.impl.xsect.STALProvider;
+
+/**
+ *
+ * TODO currently only the code to get started.
+ */
+public class Configurator {
+ private Log log = LogFactory.getLog(Configurator.class);
+
+ public Configurator() {
+ configure();
+ }
+
+ protected void configUrlConnections() {
+ HttpsURLConnection.setFollowRedirects(false);
+ HttpURLConnection.setFollowRedirects(false);
+ }
+
+ protected void configureProviders() {
+ log.debug("Registering security providers");
+ Security.addProvider(new STALProvider());
+ XSecProvider.addAsProvider(false);
+ Security.insertProviderAt(new ECCProvider(false), 1);
+ StringBuffer sb = new StringBuffer();
+ sb.append("Following providers are now registered: ");
+ int i = 1;
+ for (Provider prov : Security.getProviders()) {
+ sb.append((i++) + ". : " + prov);
+ }
+ log.debug("Configured provider" + sb.toString());
+ }
+
+ public void configure() {
+ configureProviders();
+ configUrlConnections();
+
+ }
+
+}
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
new file mode 100644
index 00000000..53a7c164
--- /dev/null
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/BKURequestHandler.java
@@ -0,0 +1,91 @@
+/*
+* 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.online.webapp;
+
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Locale;
+import java.util.Map;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import at.gv.egiz.bku.binding.HTTPBindingProcessor;
+import at.gv.egiz.bku.binding.HttpUtil;
+import at.gv.egiz.org.apache.tomcat.util.http.AcceptLanguage;
+
+/**
+ * Handles SL requests and instantiates BindingProcessors
+ *
+ */
+public class BKURequestHandler extends SpringBKUServlet {
+
+ public final static String REDIRECT_URL ="appletPage.jsp";
+
+ protected Log log = LogFactory.getLog(BKURequestHandler.class);
+
+ protected void doPost(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, java.io.IOException {
+ log.debug("Got new request");
+ String lang = req.getHeader("Accept-Language");
+ Locale locale = AcceptLanguage.getLocale(lang);
+ log.debug("Using locale: "+locale);
+ HttpSession session = req.getSession();
+ if (session != null) {
+ session.invalidate();
+ }
+ String id = req.getSession(true).getId();
+ log.debug("Using session id: "+id);
+ HTTPBindingProcessor bindingProcessor;
+ if (req.isSecure()) {
+ bindingProcessor = (HTTPBindingProcessor) getBindingProcessorManager()
+ .createBindingProcessor("https", id, locale);
+ } else {
+ bindingProcessor = (HTTPBindingProcessor) getBindingProcessorManager()
+ .createBindingProcessor("http", id, locale);
+ }
+ Map headerMap = new HashMap();
+ for (Enumeration headerName = req.getHeaderNames(); headerName
+ .hasMoreElements();) {
+ String header = headerName.nextElement();
+ if (header != null) {
+ headerMap.put(header, req.getHeader(header));
+ }
+ }
+ String charset = req.getCharacterEncoding();
+ String contentType = req.getContentType();
+ if (charset != null) {
+ contentType += ";"+charset;
+ }
+ headerMap.put(HttpUtil.HTTP_HEADER_CONTENT_TYPE, contentType);
+ bindingProcessor.setHTTPHeaders(headerMap);
+ bindingProcessor.consumeRequestStream(req.getInputStream());
+ req.getInputStream().close();
+ getBindingProcessorManager().process(bindingProcessor);
+ resp.sendRedirect(REDIRECT_URL);
+ }
+
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, java.io.IOException {
+ doPost(req, resp);
+ }
+}
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
new file mode 100644
index 00000000..6c1a4c3a
--- /dev/null
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/ResultServlet.java
@@ -0,0 +1,120 @@
+/*
+* 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.online.webapp;
+
+import java.io.IOException;
+import java.util.Iterator;
+
+import javax.servlet.ServletConfig;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import at.gv.egiz.bku.binding.HTTPBindingProcessor;
+import at.gv.egiz.bku.binding.IdFactory;
+
+/**
+ * Delivers the result to the browser
+ *
+ */
+public class ResultServlet extends SpringBKUServlet {
+
+ private final static Log log = LogFactory.getLog(ResultServlet.class);
+
+ private String encoding = "UTF-8";
+ private String expiredPage = "./expiredError.jsp";
+
+ public ResultServlet() {
+ }
+
+ private void myInit() {
+ String enc = getServletContext().getInitParameter("responseEncoding");
+ if (enc != null) {
+ log.debug("Init default encoding to: "+enc);
+ encoding = enc;
+ }
+ String expP = getServletConfig().getInitParameter("expiredPage");
+ if (expP != null) {
+ log.debug("Init expired page to: "+expP);
+ expiredPage = expP;
+ }
+ }
+
+ @Override
+ public void init() throws ServletException {
+ super.init();
+ myInit();
+ }
+
+ @Override
+ public void init(ServletConfig config) throws ServletException {
+ super.init(config);
+ myInit();
+ }
+
+
+
+ protected void doPost(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, IOException {
+ doGet(req, resp);
+ }
+
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, java.io.IOException {
+
+ HttpSession session = req.getSession(false);
+ if (session == null) {
+ resp.sendRedirect(expiredPage);
+ return;
+ }
+ String sessionId = session.getId();
+ if (sessionId == null) {
+ resp.sendRedirect(expiredPage);
+ return;
+ }
+ log.debug("Got a result request for session: " + sessionId);
+ HTTPBindingProcessor bp = (HTTPBindingProcessor) getBindingProcessorManager().getBindingProcessor(
+ IdFactory.getInstance().createId(sessionId));
+ if (bp == null) {
+ session.invalidate();
+ resp.sendRedirect(expiredPage);
+ return;
+ }
+
+ if (bp.getRedirectURL() != null) {
+ resp.sendRedirect(bp.getRedirectURL());
+ return;
+ }
+ resp.setStatus(bp.getResponseCode());
+ resp.setHeader("Cache-Control","no-store"); //HTTP 1.1
+ resp.setHeader("Pragma","no-cache"); //HTTP 1.0
+ resp.setDateHeader ("Expires", 0);
+ for (Iterator it = bp.getResponseHeaders().keySet()
+ .iterator(); it.hasNext();) {
+ String header = it.next();
+ resp.setHeader(header, bp.getResponseHeaders().get(header));
+ }
+ resp.setContentType(bp.getResultContentType());
+ resp.setCharacterEncoding(encoding);
+ bp.writeResultTo(resp.getOutputStream(), encoding);
+ session.invalidate();
+ }
+}
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SessionTimeout.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SessionTimeout.java
new file mode 100644
index 00000000..2b56166c
--- /dev/null
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SessionTimeout.java
@@ -0,0 +1,49 @@
+/*
+* 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.online.webapp;
+
+import javax.servlet.http.HttpSessionEvent;
+import javax.servlet.http.HttpSessionListener;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import at.gv.egiz.bku.binding.BindingProcessorManager;
+import at.gv.egiz.bku.binding.IdFactory;
+
+/**
+ * Session listener to trigger the removal of the BindingProcessor
+ *
+ */
+public class SessionTimeout implements HttpSessionListener {
+
+ private static Log log = LogFactory.getLog(SessionTimeout.class);
+
+ @Override
+ public void sessionCreated(HttpSessionEvent arg0) {
+ // TODO Auto-generated method stub
+
+ }
+
+ @Override
+ public void sessionDestroyed(HttpSessionEvent event) {
+ BindingProcessorManager manager = (BindingProcessorManager) event.getSession().getServletContext().getAttribute(SpringBKUServlet.BEAN_NAME);
+ log.info("Removing session: "+event.getSession().getId());
+ manager.removeBindingProcessor(IdFactory.getInstance().createId(event.getSession().getId()));
+ }
+
+}
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java
new file mode 100644
index 00000000..6ee537b1
--- /dev/null
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java
@@ -0,0 +1,31 @@
+/*
+* 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.online.webapp;
+
+import javax.servlet.http.HttpServlet;
+
+import at.gv.egiz.bku.binding.BindingProcessorManager;
+
+public abstract class SpringBKUServlet extends HttpServlet {
+
+ public final static String BEAN_NAME="bindingProcessorManager";
+
+ protected BindingProcessorManager getBindingProcessorManager() {
+ return (BindingProcessorManager) getServletContext().getAttribute(BEAN_NAME);
+ }
+
+}
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
new file mode 100644
index 00000000..38c568ab
--- /dev/null
+++ b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/RequestBrokerSTALFactory.java
@@ -0,0 +1,38 @@
+/*
+* 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.
+*/
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+package at.gv.egiz.stal.service.impl;
+
+import at.gv.egiz.stal.STAL;
+import at.gv.egiz.stal.STALFactory;
+
+/**
+ *
+ * @author clemens
+ */
+public class RequestBrokerSTALFactory implements STALFactory {
+
+ @Override
+ public STAL createSTAL() {
+ return new STALRequestBrokerImpl();
+ }
+
+}
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
new file mode 100644
index 00000000..aad9b874
--- /dev/null
+++ b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBroker.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.
+*/
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package at.gv.egiz.stal.service.impl;
+
+import at.gv.egiz.stal.STAL;
+import at.gv.egiz.stal.STALRequest;
+import at.gv.egiz.stal.STALResponse;
+import at.gv.egiz.stal.HashDataInputCallback;
+import java.util.List;
+import java.util.concurrent.TimeoutException;
+
+/**
+ *
+ * @author clemens
+ */
+public interface STALRequestBroker extends STAL {
+
+ public static final int ERR_6000 = 6000;
+ public static final long TIMEOUT_MS = 1000*60*5; //300000;
+
+ public List nextRequest(List response);
+// public void setResponse(List response) throws TimeoutException;
+// public void interruptRequestHandling(ErrorResponseType error);
+ public HashDataInputCallback 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
new file mode 100644
index 00000000..19548247
--- /dev/null
+++ b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java
@@ -0,0 +1,554 @@
+/*
+* 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.
+*/
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package at.gv.egiz.stal.service.impl;
+
+import at.gv.egiz.stal.ErrorResponse;
+import at.gv.egiz.stal.QuitRequest;
+import at.gv.egiz.stal.STALRequest;
+import at.gv.egiz.stal.STALResponse;
+import at.gv.egiz.stal.HashDataInputCallback;
+import at.gv.egiz.stal.SignRequest;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Locale;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+/**
+ * An instance of STALRequestBroker is shared between a producer threads (SLCommand)
+ * and multiple consumer threads (STALService).
+ * This implementation assures that handleRequest is executed only once the previous invocation returned.
+ * The BindingProcessor assures that a new SLCommand calls handleRequest() only once
+ * the bindingProcessor called handleRequest(QUIT) after the previous SLCommand's handleRequest() returned.
+ *
+ * Multiple STALService threads might call nextRequest()/getSignedReferences() in any order.
+ *
+ * @author clemens
+ */
+public class STALRequestBrokerImpl implements STALRequestBroker {
+
+ private static final Log log = LogFactory.getLog(STALRequestBrokerImpl.class);
+// protected RequestResponseBroker broker;
+ protected List requests = null;
+ protected List responses = null;
+ protected HashDataInputCallback currentHashDataInputCallback;
+ private boolean isHandlingRequest = false;
+ private boolean expectingResponse = false;
+// private Object handleRequestCondition = new Object();
+// private Object gotResponsesCondition = new Object();
+// public STALRequestBrokerImpl() {
+// broker = new RequestResponseBroker();
+// new Thread(handler).start();
+// }
+
+// @Override
+// public HashDataInputCallback getCurrentHashDataInputCallback() {
+// return broker.getCurrentHashDataInputCallback();
+// }
+ /**
+ * Produce requests (and HashDataInputCallback) and wait for responses.
+ * The next thread may enter once we consumed the responses.
+ *
+ * @param requests
+ * @return
+ *
+ * @pre requests either single SignRequest, QuitRequest or multiple ReadInfoboxRequests
+ */
+ @Override
+ public synchronized List handleRequest(List requests) {
+ while (isHandlingRequest) {
+ log.trace("waiting to produce request");
+ try {
+ long beforeWait = System.currentTimeMillis();
+ wait(TIMEOUT_MS);
+ if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
+ log.warn("timeout while waiting to produce request");
+ return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000));
+ }
+ } catch (InterruptedException ex) {
+ log.warn("interrupt while waiting to produce request: " + ex.getMessage());
+ }
+ }
+ log.trace("produce request");
+ isHandlingRequest = true;
+
+ this.requests = requests;
+ currentHashDataInputCallback = null;
+ for (STALRequest request : requests) {
+ if (request instanceof SignRequest) {
+ log.trace("Received SignRequest, keep HashDataInput callback.");
+ currentHashDataInputCallback = ((SignRequest) request).getHashDataInput();
+ break;
+ } else if (request instanceof QuitRequest) {
+ //alternative1:
+ //for QUIT requests, do not wait for responses, but for request consumation
+ // (i.e. set isHandlingReq to false once QUIT is consumed)
+ log.trace("Received QuitRequest, do not wait for responses.");
+ log.trace("notifying request consumers");
+ notify();
+ //alternative2:
+ //wait for QUIT to be consumed
+ // (i.e. notify me noce QUIT is consumed)
+// while (this.requests != null) {
+// try {
+// long beforeWait = System.currentTimeMillis();
+// wait(TIMEOUT_MS);
+// if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
+// log.warn("timeout while waiting for QUIT to be consumed");
+// this.requests = null;
+// isHandlingRequest = false;
+// return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000));
+// }
+// } catch (InterruptedException ex) {
+// log.warn("interrupt while waiting for QUIT to be consumed: " + ex.getMessage());
+// }
+// }
+// isHandlingRequest = false;
+ return new ArrayList();
+ } else if (log.isTraceEnabled()) {
+ log.trace("Received STAL request: " + request.getClass().getName());
+ }
+ }
+ log.trace("notifying request consumers");
+ notify();
+
+ while (this.responses == null) {
+ log.trace("waiting to consume response");
+ try {
+ long beforeWait = System.currentTimeMillis();
+ wait(TIMEOUT_MS);
+ if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
+ log.warn("timeout while waiting to consume response");
+ this.requests = null;
+ currentHashDataInputCallback = null;
+ isHandlingRequest = false;
+ return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000));
+ }
+ } catch (InterruptedException ex) {
+ log.warn("interrupt while waiting to consume response: " + ex.getMessage());
+ }
+ }
+ log.trace("consuming responses");
+ List resps = responses;
+ responses = null;
+ log.trace("notifying response producers");
+ notify();
+
+ isHandlingRequest = false;
+ log.trace("notifying request producers");
+ notify();
+
+ return resps;
+ }
+
+ /**
+ *
+ * @param responses
+ * @return QUIT if expected responses are not provided
+ */
+ @Override
+ public synchronized List nextRequest(List responses) {
+ if (responses != null && responses.size() > 0) {
+ if (!expectingResponse) {
+ log.warn("Received unexpected response in nextRequest()");
+ return Collections.singletonList((STALRequest) new QuitRequest());
+ }
+ while (this.responses != null) {
+ log.trace("waiting to produce response");
+ try {
+ long beforeWait = System.currentTimeMillis();
+ wait(TIMEOUT_MS);
+ if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
+ log.warn("timeout while waiting to produce response");
+ return Collections.singletonList((STALRequest) new QuitRequest());
+ }
+ } catch (InterruptedException ex) {
+ log.warn("interrupt while waiting to produce response: " + ex.getMessage());
+ }
+ }
+ log.trace("produce response");
+ this.responses = responses;
+ //reset HashDataInputCallback
+ if (log.isTraceEnabled()) {
+ for (STALResponse response : responses) {
+ log.trace("Received STAL response: " + response.getClass().getName());
+ }
+ }
+ log.trace("notifying response consumers");
+ notify();
+ } else {
+ if (expectingResponse) {
+ // while (expectingResponse) wait();
+ log.warn("No expected response received in nextRequest()");
+ return Collections.singletonList((STALRequest) new QuitRequest());
+ }
+ log.trace("expecting non-null response in next nextRequest(response)");
+ expectingResponse = true;
+ }
+ while (this.requests == null) {
+ log.trace("waiting to consume request");
+ try {
+ long beforeWait = System.currentTimeMillis();
+ wait(TIMEOUT_MS);
+ if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
+ log.warn("timeout while waiting to consume request");
+ return Collections.singletonList((STALRequest) new QuitRequest());
+ }
+ } catch (InterruptedException ex) {
+ log.warn("interrupt while waiting to consume request: " + ex.getMessage());
+ }
+ }
+ log.trace("consume request");
+ List reqs = requests;
+ //TODO check if QUIT and set isHandlingReq to false here?
+ // (rename isHandlingReq -> produce)
+ // handleReq(QUIT) doesn't wait() and returns immediately
+ // cf. handleReq(QUIT)
+ requests = null;
+ //no need to notify; request producer is waiting for isHandlingRequest
+ //(alt2: the QUIT producer returned immediately and didn't notify)
+ //(alt1: the QUIT producer is waiting for notification on QUIT consumption)
+ if (reqs.size() > 0 && reqs.get(0) instanceof QuitRequest) {
+ isHandlingRequest = false;
+ log.trace("consumed QUIT, notifying request producers");
+ notify();
+ log.trace("expecting no response in next nextRequest()");
+ expectingResponse = false;
+ //notify no-response request consumers
+ }
+ return reqs;
+ }
+
+ @Override
+ public synchronized HashDataInputCallback getHashDataInput() {
+ log.trace("return current HashDataInput callback");
+ return currentHashDataInputCallback;
+ }
+// /**
+// * Causes the calling thread to sleep until response is passed via nextRequest()
+// * (except for QUIT request, which returns immediately).
+// * The requestList may contain at most one signRequest.
+// * The signRequest's signedRefCallback is stored until a response to the signRequest is provided (2nd nextRequest() call),
+// * i.e. until handleRequest() returns.
+// *
+// * @param aRequestList
+// * @return
+// * @pre requestList contains at most one signRequest
+// */
+// @Override
+// public List handleRequest(List requestList) {
+// try {
+// if (log.isTraceEnabled()) {
+// log.trace("HandleRequest (" + requestList.size() + " requests)");
+// }
+//
+// broker.produceRequests(requestList);
+//
+// // QUIT returns immediately
+// if (requestList.size() == 1 && requestList.get(0) instanceof QuitRequest) {
+// log.trace("Received QUIT request, do not wait for responses.");
+// return new ArrayList();
+// }
+// return broker.consumeResponses();
+// } catch (InterruptedException ex) {
+// log.error("Interrupted while handling STAL request list: " + ex.getMessage());
+// return Collections.singletonList((STALResponse) new ErrorResponse());
+// } catch (TimeoutException ex) {
+// log.error("Timeout during handle request: " + ex.getMessage());
+// ErrorResponse err = new ErrorResponse();
+// err.setErrorCode(ERR_6000);
+// return Collections.singletonList((STALResponse) err);
+// }
+// }
+//
+// @Override
+// public void setResponse(List responses) {
+// try {
+//// if (responses != null && responses.size() > 0) {
+//// List stalResponses = translateResponses(responses);
+// broker.produceResponses(responses);
+//// } else {
+//// log.trace("Received emtpy responses list, do not add.");
+//// }
+// } catch (InterruptedException ex) {
+// log.error("Interrupted while setting STAL response: " + ex.getMessage());
+//// broker.interrupt(new ErrorResponse());
+// } catch (TimeoutException ex) {
+// log.error("Timeout during setResponse: " + ex.getMessage());
+// }
+// }
+//
+// /**
+// * TODO split in nextRequest(void) and setResponses(responses)
+// *
+// * Translate (possibly empty) STAL-WS response list to STAL responses and
+// * wait until request(s) are available and translate to STAL-WS requests.
+// * @param prevResponse if null or zero-length, they are not passed to the handler
+// * @return
+// */
+// @Override
+// public List nextRequest() { //List responses) {
+// try {
+//// if (responses != null && responses.size() > 0) {
+//// List stalResponses = translateResponses(responses);
+//// broker.produceResponses(stalResponses);
+//// } else {
+//// log.trace("Received emtpy responses list, do not add.");
+//// }
+//
+//// List extends STALRequest> stalRequests = broker.consumeRequests();
+//// List requests = translateRequests(stalRequests);
+// return broker.consumeRequests();
+//// } catch (InterruptedException ex) {
+//// log.error("Interrupted while requesting next STAL request: " + ex.getMessage());
+//// return Collections.singletonList((STALResponse) new ErrorResponse());
+// } catch (InterruptedException ex) {
+// log.error("Interrupted while requesting next STAL request: " + ex.getMessage());
+//// broker.interrupt(new ErrorResponse());
+// return new ArrayList();
+// } catch (TimeoutException ex) {
+// log.error("Timeout during nextRequest: " + ex.getMessage());
+// return new ArrayList();
+// }
+// }
+//
+//// @Override
+//// public void interruptRequestHandling(ErrorResponseType error) {
+//// if (log.isTraceEnabled()) {
+//// log.trace("Received Error: " + error.getErrorMessage());
+//// }
+//// broker.interrupt(new ErrorResponse(error.getErrorCode()));
+//// }
+//
+// //TODO
+//// private List translateRequests(List extends STALRequest> stalRequests) {
+//// List requests = new ArrayList(stalRequests.size());
+//// for (STALRequest stalRequest : stalRequests) {
+//// if (stalRequest instanceof InfoboxReadRequest) {
+//// InfoboxReadRequestType req = new InfoboxReadRequestType();
+//// req.setInfoboxIdentifier(((InfoboxReadRequest) stalRequest).getInfoboxIdentifier());
+//// log.warn("TODO consider domain identifier for infobox " + req.getInfoboxIdentifier());
+//// req.setDomainIdentifier("TODO");
+//// requests.add(req);
+//// } else if (stalRequest instanceof SignRequest) {
+//// //TODO
+//// //remember current sign request for getSignedReferences()
+//// throw new UnsupportedOperationException("SignRequest unsupported");
+//// } else if (stalRequest instanceof QuitRequest) {
+//// requests.add(new QuitRequestType());
+//// } else {
+//// log.error("Unknown STAL request: " + stalRequest.getClass().getName());
+//// }
+//// }
+//// return requests;
+//// }
+//
+//// private List translateResponses(List responses) {
+//// List stalResponses = new ArrayList(responses.size());
+//// for (ResponseType response : responses) {
+//// if (response instanceof InfoboxReadResponseType) {
+//// byte[] infoboxValue = ((InfoboxReadResponseType) response).getInfoboxValue();
+//// stalResponses.add(new InfoboxReadResponse(infoboxValue));
+//// } else if (response instanceof SignResponseType) {
+//// byte[] signatureValue = ((SignResponseType) response).getSignatureValue();
+//// stalResponses.add(new SignResponse(signatureValue));
+//// } else if (response instanceof ErrorResponseType) {
+//// int errorCode = ((ErrorResponseType) response).getErrorCode();
+//// log.warn("TODO consider error msg: " + ((ErrorResponseType) response).getErrorMessage());
+//// stalResponses.add(new ErrorResponse(errorCode));
+//// } else {
+//// log.error("Unknown STAL service response " + response.getId() + ": " + response.getClass().getName());
+//// }
+//// }
+//// return stalResponses;
+//// }
+// /**
+// * synchronize on this, not on request/response lists since they are nulled
+// */
+// // protected since outer handler field is protected
+// protected class RequestResponseBroker { //implements Runnable {
+//
+// protected List requests = null;
+// protected List responses = null;
+// protected HashDataInputCallback currentHashDataInputCallback;
+//
+//// @Override
+//// public void run() {
+//// while (true) {
+//// ;
+//// }
+//// //TODO handler lifecycle in run()?
+//// }
+// /**
+// * wait until requests are consumed,
+// * produce requests, remember sigRefCallback and notify consumer
+// * (no need for synchronized?)
+// * @param requests
+// */
+// public synchronized void produceRequests(List requests) throws InterruptedException, TimeoutException {
+//// synchronized (requests) {
+//
+// // requests is null, since there's only one producer thread calling handleRequests()
+// // and handleRequest() returns only if nextRequest() was called
+// while (this.requests != null) {
+//// requests.wait();
+// long before = System.currentTimeMillis();
+// log.trace("waiting to produce requests ...");
+// wait(); //TIMEOUT_MS);
+// if (System.currentTimeMillis() - before >= TIMEOUT_MS) {
+// log.error("Timeout while waiting to produce requests.");
+// throw new TimeoutException();
+// }
+// }
+// log.trace("producing requests");
+// this.requests = requests;
+// // getSignedReferences does not produce responses,
+// // so the command thread will not continue (and no further signRequest can possibly be produced)
+// // once the ws-client sends nextRequest with responses to the signRequest, the callback is invalidated
+//
+// // reset callback if for some reason produceResponse() wasn't called
+// currentHashDataInputCallback = null;
+// for (STALRequest request : requests) {
+// if (request instanceof SignRequest) {
+// log.trace("keep hashdatainput callback");
+// currentHashDataInputCallback = ((SignRequest) request).getHashDataInput();
+// break;
+// }
+// }
+//
+//// requests.notify();
+// log.trace("notifying request consumers (TODO not only consumers)");
+// notify();
+//// }
+// }
+//
+// /**
+// * wait until requests are produced and consume them
+// * @return
+// */
+// public synchronized List consumeRequests() throws InterruptedException, TimeoutException {
+// List retVal = null;
+//// synchronized (requests) {
+// while (requests == null) {
+//// requests.wait();
+// long before = System.currentTimeMillis();
+// log.trace("waiting to consumer requests ...");
+// wait(); //TIMEOUT_MS);
+// if (System.currentTimeMillis() - before >= TIMEOUT_MS) {
+// log.error("Timeout while waiting to consume requests.");
+// throw new TimeoutException();
+// }
+// }
+// log.trace("consuming requests");
+// retVal = requests;
+// requests = null;
+//// }
+// log.trace("???notify request producers???");
+// return retVal;
+// }
+//
+// /**
+// * wait until previous responses are consumed,
+// * produce responses and notify consumer
+// * @param responses
+// */
+// public synchronized void produceResponses(List responses) throws InterruptedException, TimeoutException {
+//// synchronized (responses) {
+// while (this.responses != null) {
+//// responses.wait();
+// long before = System.currentTimeMillis();
+// log.trace("waiting to produce responses ...");
+// wait(); //TIMEOUT_MS);
+// if (System.currentTimeMillis() - before >= TIMEOUT_MS) {
+// log.error("Timeout while waiting to produce responses.");
+// throw new TimeoutException();
+// }
+// }
+// log.trace("producing responses");
+// this.responses = responses;
+// //invalidate sigrefcallback (from now on handleRequest() may be called, producing new requests)
+// //make sure the provided responses are for the corresponding signrequest
+// if (this.requests == null) {//requests already consumed=>responses correspond to these
+// log.trace("resetting current hashdatainput");
+// currentHashDataInputCallback = null;
+// }
+//// responses.notify();
+// log.trace("notify response consumers (TODO only consumers?)");
+// notify();
+//// }
+// }
+//
+// /**
+// * wait until responses are available, consume them
+// * @return
+// * @throws java.lang.Exception
+// */
+// public synchronized List consumeResponses() throws InterruptedException, TimeoutException {
+// List retVal = null;
+//// synchronized (responses) {
+// while (responses == null) {
+//// responses.wait();
+// long before = System.currentTimeMillis();
+// log.trace("waiting to consume responses ...");
+// wait(); //TIMEOUT_MS);
+// if (System.currentTimeMillis() - before >= TIMEOUT_MS) {
+// log.error("Timeout while waiting to consume responses.");
+// throw new TimeoutException();
+// }
+// }
+// log.trace("consuming responses");
+// retVal = responses;
+// responses = null;
+//// }
+// log.trace("???notify response producers???");
+// return retVal;
+// }
+//
+// /**
+// * get the signrefcallback until handleRequest() is called the next time.
+// * @return null if last request was not a signRequest
+// */
+// public synchronized HashDataInputCallback getCurrentHashDataInputCallback() {
+// log.trace("obtain current hashdatainput");
+// return currentHashDataInputCallback;
+// }
+// /**
+// * add the error to responses and notify (response-) consumers
+// * @param error
+// */
+//// public synchronized void interrupt(ErrorResponse error) {
+////// synchronized (responses) {
+//// if (responses == null) {
+//// responses = Collections.singletonList((STALResponse) error);
+//// } else {
+//// responses.add(error);
+//// }
+////// responses.notify();
+//// notify();
+////// }
+//// }
+// }
+ @Override
+ public void setLocale(Locale locale) {
+ // TODO Auto-generated method stub
+ }
+}
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
new file mode 100644
index 00000000..3e8ad6f3
--- /dev/null
+++ b/BKUOnline/src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java
@@ -0,0 +1,220 @@
+/*
+* 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.
+*/
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+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.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.HashDataInputCallback;
+import at.gv.egiz.stal.InfoboxReadRequest;
+import at.gv.egiz.stal.QuitRequest;
+import at.gv.egiz.stal.SignRequest;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import javax.annotation.Resource;
+import javax.jws.WebService;
+import javax.servlet.ServletContext;
+import javax.xml.ws.WebServiceContext;
+import javax.xml.ws.handler.MessageContext;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+/**
+ *
+ * @author clemens
+ */
+@WebService(endpointInterface = "at.gv.egiz.stal.service.STALPortType")
+public class STALServiceImpl implements STALPortType {
+
+ public static final String BINDING_PROCESSOR_MANAGER = "bindingProcessorManager";
+ public static final String TEST_SESSION_ID = "TestSession";
+ protected static final Log log = LogFactory.getLog(STALServiceImpl.class);
+ @Resource
+ WebServiceContext wsContext;
+ protected IdFactory idF = IdFactory.getInstance();
+
+ @Override
+ public GetNextRequestResponseType getNextRequest(GetNextRequestType request) {
+
+ // HttpSession session = ((HttpServletRequest)
+ // mCtx.get(MessageContext.SERVLET_REQUEST)).getSession();
+ String sessId = request.getSessionId();
+ List responses = request.getResponse();
+ if (log.isDebugEnabled()) {
+ log.debug("Received GetNextRequest for session " + sessId
+ + " containing " + responses.size() + " responses");
+ }
+
+ GetNextRequestResponseType response = new GetNextRequestResponseType();
+ response.setSessionId(sessId);
+
+ if (TEST_SESSION_ID.equals(sessId)) {
+ if (responses.size() > 0 && responses.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;
+ }
+
+ // get Session Id
+ Id sessionId = idF.createId(sessId);
+ STALRequestBroker stal = getStal(sessionId);
+
+ if (stal == null) {
+ log.error("Failed to get STAL for session " + sessId
+ + ", returning QuitRequest");
+ response.getRequest().add(new QuitRequest());
+ } else {
+ List responsesIn = request.getResponse();
+ for (STALResponse resp : responsesIn) {
+ log.debug(resp);
+ }
+ List requestsOut = ((STALRequestBroker) stal)
+ .nextRequest(responsesIn);
+ response.getRequest().addAll(requestsOut);
+ if (log.isDebugEnabled()) {
+ log.debug("Returning GetNextRequestResponse for session " + sessId
+ + " containing " + requestsOut.size() + " requests");
+ }
+ }
+ return response;
+ }
+
+ @Override
+ public GetHashDataInputResponseType getHashDataInput(
+ GetHashDataInputType request) throws GetHashDataInputFault {
+
+ String sessId = request.getSessionId();
+ if (log.isDebugEnabled()) {
+ log.debug("Received GetHashDataInputRequest for session " + sessId
+ + " containing " + request.getReference().size() + " referencese");
+ }
+
+ // get Session Id
+ Id sessionId = idF.createId(sessId);
+ STALRequestBroker stal = getStal(sessionId);
+
+ if (stal == null) {
+ String msg = "Failed to get STAL for session " + sessId;
+ log.error(msg);
+ GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
+ faultInfo.setErrorCode(1);
+ faultInfo.setErrorMessage(msg);
+ throw new GetHashDataInputFault(msg, faultInfo);
+ } else {
+ GetHashDataInputResponseType response = new GetHashDataInputResponseType();
+ response.setSessionId(sessId);
+
+ HashDataInputCallback hashDataInput = stal.getHashDataInput();
+ if (TEST_SESSION_ID.equals(sessId)) {
+ log
+ .debug("Received TestSession GetHashDataInput, setting dummy HashDataInputCallback");
+ hashDataInput = new HashDataInputCallback() {
+
+ @Override
+ public InputStream getHashDataInput(String referenceId) {
+ byte[] hd = ("dummyhashdatainput_" + referenceId).getBytes();
+ return new ByteArrayInputStream(hd);
+ }
+ };
+ }
+ if (hashDataInput != null) {
+ List references = request
+ .getReference();
+ for (GetHashDataInputType.Reference reference : references) {
+ String refId = reference.getID();
+ if (log.isDebugEnabled()) {
+ log.debug("Resolving HashDataInput for reference " + refId);
+ }
+ ByteArrayOutputStream baos = null;
+ try {
+ InputStream hdi = hashDataInput.getHashDataInput(refId);
+ baos = new ByteArrayOutputStream(hdi.available());
+ int c;
+ while ((c = hdi.read()) != -1) {
+ baos.write(c);
+ }
+ GetHashDataInputResponseType.Reference ref = new GetHashDataInputResponseType.Reference();
+ ref.setID(refId);
+ ref.setValue(baos.toByteArray());
+ response.getReference().add(ref);
+ } catch (IOException ex) {
+ String msg = "Failed to get HashDataInput for reference " + refId;
+ log.error(msg, ex);
+ GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
+ faultInfo.setErrorCode(1);
+ faultInfo.setErrorMessage(msg);
+ throw new GetHashDataInputFault(msg, faultInfo, ex);
+ } finally {
+ try {
+ baos.close();
+ } catch (IOException ex) {
+ }
+ }
+ }
+ } else {
+ log.warn("Could not resolve any HashDataInputs for session " + sessId
+ + ", no callback provided.");
+ }
+ return response;
+ }
+ }
+
+ private STALRequestBroker getStal(Id sessionId) {
+ // log.warn("RETURNING DUMMY STAL REQUEST BROKER");
+ // return new STALRequestBrokerImpl();
+
+ 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 : (STALRequestBroker) bp.getSTAL();
+ }
+}
diff --git a/BKUOnline/src/main/resources/commons-logging.properties b/BKUOnline/src/main/resources/commons-logging.properties
new file mode 100644
index 00000000..0d497b1b
--- /dev/null
+++ b/BKUOnline/src/main/resources/commons-logging.properties
@@ -0,0 +1,16 @@
+# 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.
+
+org.apache.commons.logging.Log=org.apache.commons.logging.impl.Log4JLogger
diff --git a/BKUOnline/src/main/resources/log4j.properties b/BKUOnline/src/main/resources/log4j.properties
new file mode 100644
index 00000000..ed14b424
--- /dev/null
+++ b/BKUOnline/src/main/resources/log4j.properties
@@ -0,0 +1,34 @@
+# 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.
+
+# loglever DEBUG, appender STDOUT
+log4j.rootLogger=TRACE, STDOUT
+#log4j.logger.at.gv.egiz.slbinding.RedirectEventFilter=DEBUG, STDOUT
+
+# STDOUT appender
+log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
+log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
+#log4j.appender.STDOUT.layout.ConversionPattern=%5p | %d{dd HH:mm:ss,SSS} | %20c | %10t | %m%n
+#log4j.appender.STDOUT.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
+log4j.appender.STDOUT.layout.ConversionPattern=%-5p | %t | %c %x - %m%n
+
+### FILE appender
+#log4j.appender.file=org.apache.log4j.RollingFileAppender
+#log4j.appender.file.maxFileSize=100KB
+#log4j.appender.file.maxBackupIndex=9
+#log4j.appender.file.File=egovbus_ca.log
+#log4j.appender.file.threshold=info
+#log4j.appender.file.layout=org.apache.log4j.PatternLayout
+#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
\ No newline at end of file
diff --git a/BKUOnline/src/main/webapp/HTTP-ohne.html b/BKUOnline/src/main/webapp/HTTP-ohne.html
new file mode 100644
index 00000000..9cdd67ab
--- /dev/null
+++ b/BKUOnline/src/main/webapp/HTTP-ohne.html
@@ -0,0 +1,85 @@
+
+
+
+
+Infobox Requests
+
+
+
+Securitykapsel - HTTP-Bindung
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/META-INF/MANIFEST.MF b/BKUOnline/src/main/webapp/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..5e949512
--- /dev/null
+++ b/BKUOnline/src/main/webapp/META-INF/MANIFEST.MF
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path:
+
diff --git a/BKUOnline/src/main/webapp/META-INF/context.xml b/BKUOnline/src/main/webapp/META-INF/context.xml
new file mode 100644
index 00000000..3568c9ec
--- /dev/null
+++ b/BKUOnline/src/main/webapp/META-INF/context.xml
@@ -0,0 +1,18 @@
+
+
+
diff --git a/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml b/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
new file mode 100644
index 00000000..7a2f12b8
--- /dev/null
+++ b/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
@@ -0,0 +1,43 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/BKUOnline/src/main/webapp/WEB-INF/sun-jaxws.xml b/BKUOnline/src/main/webapp/WEB-INF/sun-jaxws.xml
new file mode 100644
index 00000000..6e8f8b69
--- /dev/null
+++ b/BKUOnline/src/main/webapp/WEB-INF/sun-jaxws.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/WEB-INF/web.xml b/BKUOnline/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 00000000..417dabb8
--- /dev/null
+++ b/BKUOnline/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,97 @@
+
+
+
+ http-security-layer-request
+
+
+
+ contextConfigLocation
+ /WEB-INF/applicationContext.xml
+
+
+
+ org.springframework.web.context.ContextLoaderListener
+
+
+
+
+
+
+ at.gv.egiz.bku.online.webapp.SessionTimeout
+
+
+ BKUServlet
+ at.gv.egiz.bku.online.webapp.BKURequestHandler
+
+
+ ResultServlet
+ at.gv.egiz.bku.online.webapp.ResultServlet
+
+ responseEncoding
+ UTF-8
+
+
+ expiredPage
+
+ expired.html
+
+
+
+ BKUServlet
+ /http-security-layer-request
+
+
+ BKUServlet
+ /https-security-layer-request
+
+
+ ResultServlet
+ /bkuResult
+
+
+
+
+
+
+
+ com.sun.xml.ws.transport.http.servlet.WSServletContextListener
+
+
+ STALPort
+ com.sun.xml.ws.transport.http.servlet.WSServlet
+ 1
+
+
+ STALPort
+ /stal
+
+
+
+ index.html
+ index.htm
+ index.jsp
+ default.html
+ default.htm
+ default.jsp
+
+
+ 3
+
+
\ No newline at end of file
diff --git a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.wsdl b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.wsdl
new file mode 100644
index 00000000..a9f16a12
--- /dev/null
+++ b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.wsdl
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd
new file mode 100644
index 00000000..6627db00
--- /dev/null
+++ b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd
@@ -0,0 +1,135 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/appletPage.jsp b/BKUOnline/src/main/webapp/appletPage.jsp
new file mode 100644
index 00000000..684a8dca
--- /dev/null
+++ b/BKUOnline/src/main/webapp/appletPage.jsp
@@ -0,0 +1,65 @@
+
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+ pageEncoding="UTF-8"%>
+
+
+
+
+Applet BKU Test
+
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/expired.html b/BKUOnline/src/main/webapp/expired.html
new file mode 100644
index 00000000..67ca94bc
--- /dev/null
+++ b/BKUOnline/src/main/webapp/expired.html
@@ -0,0 +1,28 @@
+
+
+
+
+
+Session Expired
+
+
+
+ Ihre Sitzung ist abgelaufen. Ein neuer BKU request kann im Requestformular erstellt werden.
+
+
+
\ No newline at end of file
diff --git a/BKUOnline/src/main/webapp/index.html b/BKUOnline/src/main/webapp/index.html
new file mode 100644
index 00000000..8f1a338e
--- /dev/null
+++ b/BKUOnline/src/main/webapp/index.html
@@ -0,0 +1,59 @@
+
+
+
+
+BKU Online
+
+
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/js/deployJava.js b/BKUOnline/src/main/webapp/js/deployJava.js
new file mode 100644
index 00000000..4d8a0ca3
--- /dev/null
+++ b/BKUOnline/src/main/webapp/js/deployJava.js
@@ -0,0 +1,886 @@
+/*
+ * Copyright (c) 2008 Sun Microsystems, Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * - Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * - Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * - Neither the name of Sun Microsystems nor the names of its
+ * contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+ * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+/*
+ * deployJava.js
+ *
+ * This file is part of the Deployment Toolkit. It provides functions for web
+ * pages to detect the presence of a JRE, install the latest JRE, and easily run
+ * applets or Web Start programs. Usage guide may be found at http:///.
+ *
+ * The "live" copy of this file may be found at
+ * http://java.com/js/deployJava.js.
+ * You are encouraged to link directly to the live copy of the file.
+ *
+ * @version @(#)deployJava.js 1.11 08/07/11
+ */
+
+var deployJava = {
+ debug: null,
+
+ myInterval: null,
+ preInstallJREList: null,
+ returnPage: null,
+ brand: null,
+ locale: null,
+ installType: null,
+
+ EAInstallEnabled: false,
+ EarlyAccessURL: null,
+
+ // GetJava page
+ getJavaURL: 'http://java.sun.com/webapps/getjava/BrowserRedirect?host=java.com',
+
+ // Apple redirect page
+ appleRedirectPage: 'http://www.apple.com/support/downloads/',
+
+ // mime-type of the DeployToolkit plugin object
+ mimeType: 'application/npruntime-scriptable-plugin;DeploymentToolkit',
+
+ // location of the Java Web Start launch button graphic
+ launchButtonPNG: 'http://java.sun.com/products/jfc/tsc/articles/swing2d/webstart.png',
+
+
+ /**
+ * Returns an array of currently-installed JRE version strings.
+ * Version strings are of the form #.#[.#[_#]], with the function returning
+ * as much version information as it can determine, from just family
+ * versions ("1.4.2", "1.5") through the full version ("1.5.0_06").
+ *
+ * Detection is done on a best-effort basis. Under some circumstances
+ * only the highest installed JRE version will be detected, and
+ * JREs older than 1.4.2 will not always be detected.
+ */
+ getJREs: function() {
+ var list = new Array();
+ if (deployJava.isPluginInstalled()) {
+ var plugin = deployJava.getPlugin();
+ for (var i = 0; i < plugin.jvms.getLength(); i++) {
+ list[i] = plugin.jvms.get(i).version;
+ }
+ } else {
+ var browser = deployJava.getBrowser();
+
+ if (browser == 'MSIE') {
+ if (deployJava.testUsingActiveX('1.8.0')) {
+ list[0] = '1.8.0';
+ } else if (deployJava.testUsingActiveX('1.7.0')) {
+ list[0] = '1.7.0';
+ } else if (deployJava.testUsingActiveX('1.6.0')) {
+ list[0] = '1.6.0';
+ } else if (deployJava.testUsingActiveX('1.5.0')) {
+ list[0] = '1.5.0';
+ } else if (deployJava.testUsingActiveX('1.4.2')) {
+ list[0] = '1.4.2';
+ } else if (deployJava.testForMSVM()) {
+ list[0] = '1.1';
+ }
+ }
+ else if (browser == 'Netscape Family') {
+ if (deployJava.testUsingMimeTypes('1.8')) {
+ list[0] = '1.8.0';
+ } else if (deployJava.testUsingMimeTypes('1.7')) {
+ list[0] = '1.7.0';
+ } else if (deployJava.testUsingMimeTypes('1.6')) {
+ list[0] = '1.6.0';
+ } else if (deployJava.testUsingMimeTypes('1.5')) {
+ list[0] = '1.5.0';
+ } else if (deployJava.testUsingMimeTypes('1.4.2')) {
+ list[0] = '1.4.2';
+ }
+ } else if (browser == 'Safari') {
+ if (deployJava.testUsingPluginsArray('1.8.0')) {
+ list[0] = '1.8.0';
+ } else if (deployJava.testUsingPluginsArray('1.7.0')) {
+ list[0] = '1.7.0';
+ } else if (deployJava.testUsingPluginsArray('1.6.0')) {
+ list[0] = '1.6.0';
+ } else if (deployJava.testUsingPluginsArray('1.5.0')) {
+ list[0] = '1.5.0';
+ } else if (deployJava.testUsingPluginsArray('1.4.2')) {
+ list[0] = '1.4.2';
+ }
+ }
+ }
+
+ if (deployJava.debug) {
+ for (var i = 0; i < list.length; ++i) {
+ alert('We claim to have detected Java SE ' + list[i]);
+ }
+ }
+
+ return list;
+ },
+
+ /**
+ * Triggers a JRE installation. The exact effect of triggering an
+ * installation varies based on platform, browser, and if the
+ * Deployment Toolkit plugin is installed.
+ *
+ * The requestVersion string is of the form #[.#[.#[_#]]][+|*],
+ * which includes strings such as "1.4", "1.5.0*", and "1.6.0_02+".
+ * A star (*) means "any version starting within this family" and
+ * a plus (+) means "any version greater or equal to this".
+ * "1.5.0*" * matches 1.5.0_06 but not 1.6.0_01, whereas
+ * "1.5.0+" matches both.
+ *
+ * If the Deployment Toolkit plugin is not present, this will just call
+ * deployJava.installLatestJRE().
+ */
+ installJRE: function(requestVersion) {
+ var ret = false;
+ if (deployJava.isPluginInstalled()) {
+ if (deployJava.getPlugin().installJRE(requestVersion)) {
+ deployJava.refresh();
+ if (deployJava.returnPage != null) {
+ document.location = deployJava.returnPage;
+ }
+ return true;
+ } else {
+ return false;
+ }
+ } else {
+ return deployJava.installLatestJRE();
+ }
+ },
+
+
+ /**
+ * Triggers a JRE installation. The exact effect of triggering an
+ * installation varies based on platform, browser, and if the
+ * Deployment Toolkit plugin is installed.
+ *
+ * In the simplest case, the browser window will be redirected to the
+ * java.com JRE installation page, and (if possible) a redirect back to
+ * the current URL upon successful installation. The return redirect is
+ * not always possible, as the JRE installation may require the browser to
+ * be restarted.
+ *
+ * In the best case (when the Deployment Toolkit plugin is present), this
+ * function will immediately cause a progress dialog to be displayed
+ * as the JRE is downloaded and installed.
+ */
+ installLatestJRE: function() {
+ if (deployJava.isPluginInstalled()) {
+ if (deployJava.getPlugin().installLatestJRE()) {
+ deployJava.refresh();
+ if (deployJava.returnPage != null) {
+ document.location = deployJava.returnPage;
+ }
+ return true;
+ } else {
+ return false;
+ }
+ } else {
+ var browser = deployJava.getBrowser();
+ var platform = navigator.platform.toLowerCase();
+ if ((deployJava.EAInstallEnabled == 'true') &&
+ (platform.indexOf('win') != -1) &&
+ (deployJava.EarlyAccessURL != null)) {
+
+ deployJava.preInstallJREList = deployJava.getJREs();
+ if (deployJava.returnPage != null) {
+ deployJava.myInterval =
+ setInterval("deployJava.poll()", 3000);
+ }
+
+ location.href = deployJava.EarlyAccessURL;
+
+ // we have to return false although there may be an install
+ // in progress now, when complete it may go to return page
+ return false;
+ } else {
+ if (browser == 'MSIE') {
+ return deployJava.IEInstall();
+ } else if ((browser == 'Netscape Family') &&
+ (platform.indexOf('win32') != -1)) {
+ return deployJava.FFInstall();
+ } else {
+ location.href = deployJava.getJavaURL +
+ ((deployJava.returnPage != null) ?
+ ('&returnPage=' + deployJava.returnPage) : '') +
+ ((deployJava.locale != null) ?
+ ('&locale=' + deployJava.locale) : '') +
+ ((deployJava.brand != null) ?
+ ('&brand=' + deployJava.brand) : '');
+ }
+ // we have to return false although there may be an install
+ // in progress now, when complete it may go to return page
+ return false;
+ }
+ }
+ },
+
+
+ /**
+ * Ensures that an appropriate JRE is installed and then runs an applet.
+ * minimumVersion is of the form #[.#[.#[_#]]], and is the minimum
+ * JRE version necessary to run this applet. minimumVersion is optional,
+ * defaulting to the value "1.1" (which matches any JRE).
+ * If an equal or greater JRE is detected, runApplet() will call
+ * writeAppletTag(attributes, parameters) to output the applet tag,
+ * otherwise it will call installJRE(minimumVersion + '+').
+ *
+ * After installJRE() is called, the script will attempt to detect that the
+ * JRE installation has completed and begin running the applet, but there
+ * are circumstances (such as when the JRE installation requires a browser
+ * restart) when this cannot be fulfilled.
+ *
+ * As with writeAppletTag(), this function should only be called prior to
+ * the web page being completely rendered. Note that version wildcards
+ * (star (*) and plus (+)) are not supported, and including them in the
+ * minimumVersion will result in an error message.
+ */
+ runApplet: function(attributes, parameters, minimumVersion) {
+ if (minimumVersion == 'undefined' || minimumVersion == null) {
+ minimumVersion = '1.1';
+ }
+
+ var regex = "^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$";
+
+ var matchData = minimumVersion.match(regex);
+
+ if (deployJava.returnPage == null) {
+ // if there is an install, come back here and run the applet
+ deployJava.returnPage = document.location;
+ }
+
+ if (matchData != null) {
+ var browser = deployJava.getBrowser();
+ if ((browser != '?') && (browser != 'Safari')) {
+ if (deployJava.versionCheck(minimumVersion + '+')) {
+ deployJava.writeAppletTag(attributes, parameters);
+ } else if (deployJava.installJRE(minimumVersion + '+')) {
+ // after successfull install we need to refresh page to pick
+ // pick up new plugin
+ deployJava.refresh();
+ location.href = document.location;
+ deployJava.writeAppletTag(attributes, parameters);
+ }
+ } else {
+ // for unknown or Safari - just try to show applet
+ deployJava.writeAppletTag(attributes, parameters);
+ }
+ } else {
+ if (deployJava.debug) {
+ alert('Invalid minimumVersion argument to runApplet():' +
+ minimumVersion);
+ }
+ }
+ },
+
+
+ /**
+ * Outputs an applet tag with the specified attributes and parameters, where
+ * both attributes and parameters are associative arrays. Each key/value
+ * pair in attributes becomes an attribute of the applet tag itself, while
+ * key/value pairs in parameters become tags. No version checking
+ * or other special behaviors are performed; the tag is simply written to
+ * the page using document.writeln().
+ *
+ * As document.writeln() is generally only safe to use while the page is
+ * being rendered, you should never call this function after the page
+ * has been completed.
+ */
+ writeAppletTag: function(attributes, parameters) {
+ var s = '<' + 'applet ';
+ for (var attribute in attributes) {
+ s += (' ' + attribute + '="' + attributes[attribute] + '"');
+ }
+ s += '>';
+ document.write(s);
+
+ if (parameters != 'undefined' && parameters != null) {
+ for (var parameter in parameters) {
+ s = ' ';
+ document.write(s);
+ }
+ }
+ document.write('<' + '/' + 'applet' + '>');
+ },
+
+
+ /**
+ * Returns true if there is a matching JRE version currently installed
+ * (among those detected by getJREs()). The versionPattern string is
+ * of the form #[.#[.#[_#]]][+|*], which includes strings such as "1.4",
+ * "1.5.0*", and "1.6.0_02+".
+ * A star (*) means "any version within this family" and a plus (+) means
+ * "any version greater or equal to the specified version". "1.5.0*"
+ * matches 1.5.0_06 but not 1.6.0_01, whereas "1.5.0+" matches both.
+ *
+ * If the versionPattern does not include all four version components
+ * but does not end with a star or plus, it will be treated as if it
+ * ended with a star. "1.5" is exactly equivalent to "1.5*", and will
+ * match any version number beginning with "1.5".
+ *
+ * If getJREs() is unable to detect the precise version number, a match
+ * could be ambiguous. For example if getJREs() detects "1.5", there is
+ * no way to know whether the JRE matches "1.5.0_06+". versionCheck()
+ * compares only as much of the version information as could be detected,
+ * so versionCheck("1.5.0_06+") would return true in in this case.
+ *
+ * Invalid versionPattern will result in a JavaScript error alert.
+ * versionPatterns which are valid but do not match any existing JRE
+ * release (e.g. "32.65+") will always return false.
+ */
+ versionCheck: function(versionPattern)
+ {
+ var index = 0;
+ var regex = "^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?(\\*|\\+)?$";
+
+ var matchData = versionPattern.match(regex);
+
+ if (matchData != null) {
+ var familyMatch = true;
+
+ var patternArray = new Array();
+
+ for (var i = 1; i < matchData.length; ++i) {
+ // browser dependency here.
+ // Fx sets 'undefined', IE sets '' string for unmatched groups
+ if ((typeof matchData[i] == 'string') && (matchData[i] != '')) {
+ patternArray[index] = matchData[i];
+ index++;
+ }
+ }
+
+ if (patternArray[patternArray.length-1] == '+') {
+ familyMatch = false;
+ patternArray.length--;
+ } else {
+ if (patternArray[patternArray.length-1] == '*') {
+ patternArray.length--;
+ }
+ }
+
+ var list = deployJava.getJREs();
+ for (var i = 0; i < list.length; ++i) {
+ if (deployJava.compareVersionToPattern(list[i], patternArray,
+ familyMatch)) {
+ return true;
+ }
+ }
+
+ return false;
+ } else {
+ alert('Invalid versionPattern passed to versionCheck: ' +
+ versionPattern);
+ return false;
+ }
+ },
+
+
+ /**
+ * Returns true if an installation of Java Web Start of the specified
+ * minimumVersion can be detected. minimumVersion is optional, and
+ * if not specified, '1.4.2' will be used.
+ * (Versions earlier than 1.4.2 may not be detected.)
+ */
+ isWebStartInstalled: function(minimumVersion) {
+
+ var browser = deployJava.getBrowser();
+ if ((browser == '?') || (browser == 'Safari')) {
+ // we really don't know - better to try to use it than reinstall
+ return true;
+ }
+
+ if (minimumVersion == 'undefined' || minimumVersion == null) {
+ minimumVersion = '1.4.2';
+ }
+
+ var retval = false;
+ var regex = "^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$";
+ var matchData = minimumVersion.match(regex);
+
+ if (matchData != null) {
+ retval = deployJava.versionCheck(minimumVersion + '+');
+ } else {
+ if (deployJava.debug) {
+ alert('Invalid minimumVersion argument to isWebStartInstalled(): ' + minimumVersion);
+ }
+ retval = deployJava.versionCheck('1.4.2+');
+ }
+ return retval;
+ },
+
+
+ /**
+ * Outputs a launch button for the specified JNLP URL. When clicked, the
+ * button will ensure that an appropriate JRE is installed and then launch
+ * the JNLP application. minimumVersion is of the form #[.#[.#[_#]]], and
+ * is the minimum JRE version necessary to run this JNLP application.
+ * minimumVersion is optional, and if it is not specified, '1.4.2'
+ * will be used.
+ * If an appropriate JRE or Web Start installation is detected,
+ * the JNLP application will be launched, otherwise installLatestJRE()
+ * will be called.
+ *
+ * After installLatestJRE() is called, the script will attempt to detect
+ * that the JRE installation has completed and launch the JNLP application,
+ * but there are circumstances (such as when the JRE installation
+ * requires a browser restart) when this cannot be fulfilled.
+ */
+ createWebStartLaunchButton: function(jnlp, minimumVersion) {
+
+ if (deployJava.returnPage == null) {
+ // if there is an install, come back and run the jnlp file
+ deployJava.returnPage = jnlp;
+ }
+
+ var url = 'javascript:' +
+ 'if (!deployJava.isWebStartInstalled("' +
+ minimumVersion + '")) {' +
+ 'if (deployJava.installLatestJRE()) {' +
+ 'if (deployJava.launch("' + jnlp + '")) {}' +
+ '}' +
+ '} else {' +
+ 'if (deployJava.launch("' + jnlp + '")) {}' +
+ '}';
+
+ document.write('<' + 'a href="' + url +
+ '" onMouseOver="window.status=\'\'; ' +
+ 'return true;"><' + 'img ' +
+ 'src="' + deployJava.launchButtonPNG + '" ' +
+ 'border="0" /><' + '/' + 'a' + '>');
+ },
+
+
+ /**
+ * Launch a JNLP application, (using the plugin if available)
+ */
+ launch: function(jnlp) {
+ if (deployJava.isPluginInstalled()) {
+ return deployJava.getPlugin().launch(jnlp);
+ } else {
+ document.location=jnlp;
+ return true;
+ }
+ },
+
+
+ /*
+ * returns true if the ActiveX or XPI plugin is installed
+ */
+ isPluginInstalled: function() {
+ var plugin = deployJava.getPlugin();
+ if (plugin && plugin.jvms) {
+ return true;
+ } else {
+ return false;
+ }
+ },
+
+ /*
+ * returns true if the plugin is installed and AutoUpdate is enabled
+ */
+ isAutoUpdateEnabled: function() {
+ if (deployJava.isPluginInstalled()) {
+ return deployJava.getPlugin().isAutoUpdateEnabled();
+ }
+ return false;
+ },
+
+ /*
+ * sets AutoUpdate on if plugin is installed
+ */
+ setAutoUpdateEnabled: function() {
+ if (deployJava.isPluginInstalled()) {
+ return deployJava.getPlugin().setAutoUpdateEnabled();
+ }
+ return false;
+ },
+
+ /*
+ * sets the preferred install type : null, online, kernel
+ */
+ setInstallerType: function(type) {
+ deployJava.installType = type;
+ if (deployJava.isPluginInstalled()) {
+ return deployJava.getPlugin().setInstallerType(type);
+ }
+ return false;
+ },
+
+ /*
+ * sets additional package list - to be used by kernel installer
+ */
+ setAdditionalPackages: function(packageList) {
+ if (deployJava.isPluginInstalled()) {
+ return deployJava.getPlugin().setAdditionalPackages(
+ packageList);
+ }
+ return false;
+ },
+
+ /*
+ * sets preference to install Early Access versions if available
+ */
+ setEarlyAccess: function(enabled) {
+ deployJava.EAInstallEnabled = enabled;
+ },
+
+ /*
+ * Determines if the next generation plugin (Plugin II) is default
+ */
+ isPlugin2: function() {
+ if (deployJava.isPluginInstalled()) {
+ try {
+ return deployJava.getPlugin().isPlugin2();
+ } catch (err) {
+ // older plugin w/o isPlugin2() function - just fall through
+ }
+ }
+ return false;
+ },
+
+
+ getPlugin: function() {
+ deployJava.refresh();
+ var ret = document.getElementById('deployJavaPlugin');
+ return ret;
+ },
+
+ compareVersionToPattern: function(version, patternArray, familyMatch) {
+ var regex = "^(\\d+)(?:\\.(\\d+)(?:\\.(\\d+)(?:_(\\d+))?)?)?$";
+ var matchData = version.match(regex);
+
+ if (matchData != null) {
+ var index = 0;
+ var result = new Array();
+
+ for (var i = 1; i < matchData.length; ++i) {
+ if ((typeof matchData[i] == 'string') && (matchData[i] != ''))
+ {
+ result[index] = matchData[i];
+ index++;
+ }
+ }
+
+ var l = Math.min(result.length, patternArray.length);
+
+ if (familyMatch) {
+ for (var i = 0; i < l; ++i) {
+ if (result[i] != patternArray[i]) return false;
+ }
+
+ return true;
+ } else {
+ for (var i = 0; i < l; ++i) {
+ if (result[i] < patternArray[i]) {
+ return false;
+ } else if (result[i] > patternArray[i]) {
+ return true;
+ }
+ }
+
+ return true;
+ }
+ } else {
+ return false;
+ }
+ },
+
+
+ getBrowser: function() {
+ var browser = navigator.userAgent.toLowerCase();
+
+ if (deployJava.debug) {
+ alert('userAgent -> ' + browser);
+ }
+
+ if ((navigator.vendor) &&
+ (navigator.vendor.toLowerCase().indexOf('apple') != -1) &&
+ (browser.indexOf('safari') != -1)) {
+ if (deployJava.debug) {
+ alert('We claim to have detected "Safari".');
+ }
+ return 'Safari';
+ } else if (browser.indexOf('msie') != -1) {
+ if (deployJava.debug) {
+ alert('We claim to have detected "IE".');
+ }
+ return 'MSIE';
+ } else if ((browser.indexOf('mozilla') != -1) ||
+ (browser.indexOf('firefox') != -1)) {
+ if (deployJava.debug) {
+ alert('We claim to have detected a Netscape family browser.');
+ }
+ return 'Netscape Family';
+ } else {
+ if (deployJava.debug) {
+ alert('We claim to have failed to detect a browser.');
+ }
+ return '?';
+ }
+ },
+
+
+ testUsingActiveX: function(version) {
+ var objectName = 'JavaWebStart.isInstalled.' + version + '.0';
+
+ if (!ActiveXObject) {
+ if (deployJava.debug) {
+ alert ('Browser claims to be IE, but no ActiveXObject object?');
+ }
+ return false;
+ }
+
+ try {
+ return (new ActiveXObject(objectName) != null);
+ } catch (exception) {
+ return false;
+ }
+ },
+
+
+ testForMSVM: function() {
+ var clsid = '{08B0E5C0-4FCB-11CF-AAA5-00401C608500}';
+
+ if (typeof oClientCaps != 'undefined') {
+ var v = oClientCaps.getComponentVersion(clsid, "ComponentID");
+ if ((v == '') || (v == '5,0,5000,0')) {
+ return false;
+ } else {
+ return true;
+ }
+ } else {
+ return false;
+ }
+ },
+
+
+ testUsingMimeTypes: function(version) {
+ if (!navigator.mimeTypes) {
+ if (deployJava.debug) {
+ alert ('Browser claims to be Netscape family, but no mimeTypes[] array?');
+ }
+ return false;
+ }
+
+ for (var i = 0; i < navigator.mimeTypes.length; ++i) {
+ s = navigator.mimeTypes[i].type;
+ var m = s.match(/^application\/x-java-applet\x3Bversion=(1\.8|1\.7|1\.6|1\.5|1\.4\.2)$/);
+ if (m != null) {
+ if (deployJava.compareVersions(m[1], version)) {
+ return true;
+ }
+ }
+ }
+ return false;
+ },
+
+
+ testUsingPluginsArray: function(version) {
+ if ((!navigator.plugins) || (!navigator.plugins.length)) {
+ if (deployJava.debug) {
+ alert ('Browser claims to be Safari, but no plugins[] array?');
+ }
+ return false;
+ }
+
+ for (var i = 0; i < navigator.plugins.length; ++i) {
+ s = navigator.plugins[i].description;
+
+ if (s.search(/^Java Switchable Plug-in/) != -1) {
+ return true;
+ }
+
+ m = s.match(/^Java (1\.4\.2|1\.5|1\.6|1\.7).* Plug-in/);
+ if (m != null) {
+ if (deployJava.compareVersions(m[1], version)) return true;
+ }
+ }
+ return false;
+ },
+
+ IEInstall: function() {
+
+ location.href = deployJava.getJavaURL +
+ ((deployJava.returnPage != null) ?
+ ('&returnPage=' + deployJava.returnPage) : '') +
+ ((deployJava.locale != null) ?
+ ('&locale=' + deployJava.locale) : '') +
+ ((deployJava.brand != null) ? ('&brand=' + deployJava.brand) : '') +
+ ((deployJava.installType != null) ?
+ ('&type=' + deployJava.installType) : '');
+
+ // should not actually get here
+ return false;
+ },
+
+ done: function (name, result) {
+ },
+
+ FFInstall: function() {
+
+ location.href = deployJava.getJavaURL +
+ ((deployJava.returnPage != null) ?
+ ('&returnPage=' + deployJava.returnPage) : '') +
+ ((deployJava.locale != null) ?
+ ('&locale=' + deployJava.locale) : '') +
+ ((deployJava.brand != null) ? ('&brand=' + deployJava.brand) : '') +
+ ((deployJava.installType != null) ?
+ ('&type=' + deployJava.installType) : '');
+
+ // should not actually get here
+ return false;
+ },
+
+ // return true if 'installed' (considered as a JRE version string) is
+ // greater than or equal to 'required' (again, a JRE version string).
+ compareVersions: function(installed, required) {
+
+ var a = installed.split('.');
+ var b = required.split('.');
+
+ for (var i = 0; i < a.length; ++i) {
+ a[i] = Number(a[i]);
+ }
+ for (var i = 0; i < b.length; ++i) {
+ b[i] = Number(b[i]);
+ }
+ if (a.length == 2) {
+ a[2] = 0;
+ }
+
+ if (a[0] > b[0]) return true;
+ if (a[0] < b[0]) return false;
+
+ if (a[1] > b[1]) return true;
+ if (a[1] < b[1]) return false;
+
+ if (a[2] > b[2]) return true;
+ if (a[2] < b[2]) return false;
+
+ return true;
+ },
+
+
+ enableAlerts: function() {
+ deployJava.debug = true;
+ },
+
+ poll: function() {
+
+ deployJava.refresh();
+ var postInstallJREList = deployJava.getJREs();
+
+ if ((deployJava.preInstallJREList.length == 0) &&
+ (postInstallJREList.length != 0)) {
+ clearInterval(deployJava.myInterval);
+ if (deployJava.returnPage != null) {
+ location.href = deployJava.returnPage;
+ };
+ }
+
+ if ((deployJava.preInstallJREList.length != 0) &&
+ (postInstallJREList.length != 0) &&
+ (deployJava.preInstallJREList[0] != postInstallJREList[0])) {
+ clearInterval(deployJava.myInterval);
+ if (deployJava.returnPage != null) {
+ location.href = deployJava.returnPage;
+ }
+ }
+
+ },
+
+ writePluginTag: function() {
+ var browser = deployJava.getBrowser();
+ if (browser == 'MSIE') {
+ document.write('<' +
+ 'object classid="clsid:CAFEEFAC-DEC7-0000-0000-ABCDEFFEDCBA" ' +
+ 'id="deployJavaPlugin" width="0" height="0">' +
+ '<' + '/' + 'object' + '>');
+ } else if (browser == 'Netscape Family') {
+ if (navigator.mimeTypes != null) for (var i=0;
+ i < navigator.mimeTypes.length; i++) {
+ if (navigator.mimeTypes[i].type == deployJava.mimeType) {
+ if (navigator.mimeTypes[i].enabledPlugin) {
+ document.write('<' +
+ 'embed id="deployJavaPlugin" type="' +
+ deployJava.mimeType + '" hidden="true" />');
+ }
+ }
+ }
+ }
+ },
+
+ refresh: function() {
+ navigator.plugins.refresh(false);
+
+ var browser = deployJava.getBrowser();
+ if (browser == 'Netscape Family') {
+ var plugin = document.getElementById('deployJavaPlugin');
+ // only do this again if no plugin
+ if (plugin == null) {
+ if (navigator.mimeTypes != null) for (var i=0;
+ i < navigator.mimeTypes.length; i++) {
+ if (navigator.mimeTypes[i].type == deployJava.mimeType) {
+ if (navigator.mimeTypes[i].enabledPlugin) {
+ document.write('<' +
+ 'embed id="deployJavaPlugin" type="' +
+ deployJava.mimeType + '" hidden="true" />');
+ }
+ }
+ }
+ }
+ }
+ },
+
+ do_initialize: function() {
+ deployJava.writePluginTag();
+ if (deployJava.locale == null) {
+ var loc = null;
+
+ if (loc == null) try {
+ loc = navigator.userLanguage;
+ } catch (err) { }
+
+ if (loc == null) try {
+ loc = navigator.systemLanguage;
+ } catch (err) { }
+
+ if (loc == null) try {
+ loc = navigator.language;
+ } catch (err) { }
+
+ if (loc != null) {
+ loc.replace("-","_")
+ deployJava.locale = loc;
+ }
+ }
+ }
+
+};
+deployJava.do_initialize();
+
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
new file mode 100644
index 00000000..cd321c71
--- /dev/null
+++ b/BKUOnline/src/test/java/at/gv/egiz/stal/service/STALRequestBrokerTest.java
@@ -0,0 +1,362 @@
+/*
+* 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.
+*/
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package at.gv.egiz.stal.service;
+
+import at.gv.egiz.stal.service.impl.STALRequestBrokerImpl;
+import at.gv.egiz.stal.service.impl.RequestBrokerSTALFactory;
+import at.gv.egiz.stal.service.impl.STALRequestBroker;
+import at.gv.egiz.stal.ErrorResponse;
+import at.gv.egiz.stal.HashDataInputCallback;
+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.SignResponse;
+import at.gv.egiz.stal.SignRequest;
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+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 org.junit.BeforeClass;
+import org.junit.Ignore;
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+/**
+ *
+ * @author clemens
+ */
+public class STALRequestBrokerTest {
+
+ private static final Log log = LogFactory.getLog(STALRequestBrokerTest.class);
+ protected static STALRequestBroker stal;
+
+ @BeforeClass
+ public static void setUp() {
+ RequestBrokerSTALFactory fac = new RequestBrokerSTALFactory();
+ stal = (STALRequestBrokerImpl) fac.createSTAL();
+ log.debug("Created STAL " + stal.getClass().getName());
+ }
+
+ @Ignore
+ public void testInfoboxRead() {
+// try {
+
+ log.debug("*************** test ReadInfoboxRequest for two infoboxes");
+ List requests = new ArrayList();
+ InfoboxReadRequest r1 = new InfoboxReadRequest();
+ r1.setInfoboxIdentifier("infobox1");
+ requests.add(r1);
+ InfoboxReadRequest r2 = new InfoboxReadRequest();
+ r2.setInfoboxIdentifier("infobox2");
+ requests.add(r2);
+
+ BindingProcessorSimulator bp = new BindingProcessorSimulator();
+ bp.setRequests(Collections.singletonList(requests));
+
+ new Thread(bp, "BindingProcessor").start();
+ new Thread(new ServiceSimulator(), "STALService").start();
+
+ try {
+ Thread.sleep(1000);
+ } catch (InterruptedException ex) {
+ log.error("interrupted: " + ex.getMessage());
+ }
+ }
+
+ @Ignore
+ public void testSign() {
+ log.debug("**************** test SignRequest");
+ List requests = new ArrayList();
+ SignRequest r1 = new SignRequest();
+ r1.setKeyIdentifier("keybox1");
+ r1.setSignedInfo("1234".getBytes());
+ r1.setHashDataInput(new HashDataInputCallback() {
+
+ @Override
+ public InputStream getHashDataInput(String referenceId) {
+ return new ByteArrayInputStream("hashdatainput1234".getBytes());
+ }
+ });
+ requests.add(r1);
+
+ BindingProcessorSimulator bp = new BindingProcessorSimulator();
+ bp.setRequests(Collections.singletonList(requests));
+
+ new Thread(bp, "BindingProcessor").start();
+// new Thread(bp2, "BindingProcessor2").start();
+ new Thread(new ServiceSimulator(), "STALService").start();
+
+ try {
+ Thread.sleep(1000);
+ } catch (InterruptedException ex) {
+ log.error("interrupted: " + ex.getMessage());
+ }
+ }
+
+ @Ignore
+ public void testResponseTimeout() {
+ log.debug("**************** test SignRequest with responses timeout");
+ List requests = new ArrayList();
+ SignRequest r1 = new SignRequest();
+ r1.setKeyIdentifier("keybox1");
+ r1.setSignedInfo("1234".getBytes());
+ r1.setHashDataInput(new HashDataInputCallback() {
+
+ @Override
+ public InputStream getHashDataInput(String referenceId) {
+ return new ByteArrayInputStream("hashdatainput1234".getBytes());
+ }
+ });
+ requests.add(r1);
+
+ BindingProcessorSimulator bp = new BindingProcessorSimulator();
+ bp.setRequests(Collections.singletonList(requests));
+
+ new Thread(bp, "BindingProcessor").start();
+ new Thread(new TimeoutServiceSimulator(), "STALService").start();
+
+ try {
+ Thread.sleep(STALRequestBroker.TIMEOUT_MS + 1);
+ } catch (InterruptedException ex) {
+ log.error("interrupted: " + ex.getMessage());
+ }
+ }
+
+ @Ignore
+ public void testRequestTimeout() {
+ log.debug("**************** test requests timeout");
+ TimeoutBindingProcessorSimulator bp = new TimeoutBindingProcessorSimulator();
+
+ new Thread(bp, "BindingProcessor").start();
+ new Thread(new ServiceSimulator(), "STALService").start();
+
+ try {
+ Thread.sleep(STALRequestBroker.TIMEOUT_MS + 1);
+ } catch (InterruptedException ex) {
+ log.error("interrupted: " + ex.getMessage());
+ }
+ }
+
+ @Test
+ public void testMultipleServices() {
+ log.debug("**************** test multiple SignRequests");
+ List requests = new ArrayList();
+ SignRequest r1 = new SignRequest();
+ r1.setKeyIdentifier("keybox1");
+ r1.setSignedInfo("1234".getBytes());
+ r1.setHashDataInput(new HashDataInputCallback() {
+
+ @Override
+ public InputStream getHashDataInput(String referenceId) {
+ return new ByteArrayInputStream("hashdatainput1234".getBytes());
+ }
+ });
+ requests.add(r1);
+
+ List requests2 = new ArrayList();
+ SignRequest r2 = new SignRequest();
+ r2.setKeyIdentifier("keybox2");
+ r2.setSignedInfo("6789".getBytes());
+ r2.setHashDataInput(new HashDataInputCallback() {
+
+ @Override
+ public InputStream getHashDataInput(String referenceId) {
+ return new ByteArrayInputStream("hashdatainput6789".getBytes());
+ }
+ });
+ requests2.add(r2);
+
+ BindingProcessorSimulator bp = new BindingProcessorSimulator();
+ List> requestList = new ArrayList>();
+ requestList.add(requests);
+ requestList.add(requests2);
+ bp.setRequests(requestList);
+
+ new Thread(bp, "BindingProcessor").start();
+// new Thread(bp2, "BindingProcessor2").start();
+ new Thread(new ServiceSimulator(), "STALService1").start();
+ new Thread(new ServiceSimulator(), "STALService2").start();
+
+ try {
+ Thread.sleep(1000);
+ } catch (InterruptedException ex) {
+ log.error("interrupted: " + ex.getMessage());
+ }
+ }
+
+ class ServiceSimulator implements Runnable {
+
+ @Override
+ public void run() {
+ try {
+ // first call w/ empty response list
+ log.debug("calling stal.nextRequest");
+ 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();
+ r.setInfoboxValue("dummyInfobox".getBytes());
+ responses.add(r);
+ } else if (request instanceof SignRequest) {
+
+ log.debug("calling stal.getCurrentHashDataInputCallback");
+ HashDataInputCallback cb = stal.getHashDataInput();
+ assertNotNull(cb);
+ InputStream hd = cb.getHashDataInput("1234");
+ byte[] data = new byte[hd.available()];
+ hd.read(data);
+ log.debug("got HashDataInput " + new String(data));
+
+
+ SignResponse r = new SignResponse();
+ r.setSignatureValue("dummySignature".getBytes());
+ responses.add(r);
+ } else if (request instanceof QuitRequest) {
+ log.debug("received UNEXPECTED QUIT request");
+ return;
+ }
+ }
+
+// if (requests.size() > 0) {
+// log.debug("calling stal.setResponse with " + requests.size() + " responses");
+// stal.setResponse(responses);
+// }
+ log.debug("calling stal.nextRequest with " + responses.size() + " responses");
+ requests = stal.nextRequest(responses);
+ for (STALRequest request : requests) {
+ if (request instanceof QuitRequest) {
+ log.debug("got QUIT request");
+ } else {
+ log.debug("expected QUIT request, got " + request.getClass().getName());
+ }
+ }
+ } catch (IOException ex) {
+ log.error(ex.getMessage());
+ } catch (InterruptedException ex) {
+ log.error(ex.getMessage());
+ }
+ }
+ }
+
+ class TimeoutServiceSimulator implements Runnable {
+
+ @Override
+ public void run() {
+ try {
+ // first call w/ empty response list
+ log.debug("calling stal.nextRequest");
+ List requests = stal.nextRequest(null); //new ArrayList());
+ log.debug("got " + requests.size() + " requests. processing...");
+ Thread.sleep(1);
+ for (STALRequest request : requests) {
+// if (request instanceof InfoboxReadRequest) {
+ if (request instanceof SignRequest) {
+ log.debug("calling stal.getCurrentHashDataInputCallback");
+ HashDataInputCallback cb = stal.getHashDataInput();
+ assertNotNull(cb);
+ InputStream hd = cb.getHashDataInput("1234");
+ byte[] data = new byte[hd.available()];
+ hd.read(data);
+ log.debug("got HashDataInput " + new String(data));
+ } else if (request instanceof QuitRequest) {
+ log.debug("received UNEXPECTED QUIT requests");
+ return;
+ }
+ }
+ log.debug("simulating timeout ...");
+ } catch (IOException ex) {
+ log.error(ex.getMessage());
+ } catch (InterruptedException ex) {
+ log.error(ex.getMessage());
+ }
+ }
+ }
+
+ class BindingProcessorSimulator implements Runnable {
+
+ List> requestsLists;
+
+ public void setRequests(List> requests) {
+ this.requestsLists = requests;
+ }
+
+ @Override
+ public void run() {
+
+ //simulate SLCommand execution
+ for (List requests : requestsLists) {
+ execSLCommand(requests);
+
+ log.debug("SLCommand finished, calling stal.handleReqeusts(QUIT)");
+ stal.handleRequest(Collections.singletonList((STALRequest) new QuitRequest()));
+ log.debug("QUIT returned (waiting for applet reload)");
+ }
+
+ }
+
+ public void execSLCommand(List requests) {
+ int numReq = requests.size();
+ log.debug("SLCommand calling stal.handleRequests " + numReq + " requests");
+ List responses = stal.handleRequest(requests);
+ assertEquals(numReq, responses.size());
+ for (int i = 0; i < numReq; i++) {
+ STALRequest request = requests.get(i);
+ STALResponse response = responses.get(i);
+
+ if (response instanceof ErrorResponse) {
+ log.warn("SLCommand received unexpected error response from STAL: " + ((ErrorResponse) response).getErrorCode());
+ } else if (request instanceof InfoboxReadRequest) {
+ assertTrue(response instanceof InfoboxReadResponse);
+ String infobox = new String(((InfoboxReadResponse) response).getInfoboxValue());
+ log.debug("SLCommand received expected InfoboxReadResponse from STAL: " + infobox);
+ } else if (request instanceof SignRequest) {
+ assertTrue(response instanceof SignResponse);
+ String signVal = new String(((SignResponse) response).getSignatureValue());
+ log.debug("SLCommand received expected SignResponse from STAL: " + signVal);
+ } else {
+ log.error("***** RequestType: " + request.getClass() + " TODO");
+ }
+ //TODO
+ }
+
+ }
+ }
+
+ class TimeoutBindingProcessorSimulator implements Runnable {
+
+ @Override
+ public void run() {
+
+ //simulate SLCommand execution
+ log.debug("simulating timeout ...");
+ }
+ }
+}
--
cgit v1.2.3
From 7c99f1a84e4b0d4cedb1084c88b4c5161f215958 Mon Sep 17 00:00:00 2001
From: mcentner
Date: Fri, 29 Aug 2008 13:28:17 +0000
Subject: Added dependency to get an appropriate reactor build order for the
maven assembly.
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@5 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/pom.xml | 6 ++++++
1 file changed, 6 insertions(+)
(limited to 'BKUOnline')
diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml
index dacdbaf5..c73a9f17 100644
--- a/BKUOnline/pom.xml
+++ b/BKUOnline/pom.xml
@@ -43,6 +43,12 @@
1.0-SNAPSHOT
compile
+
+ at.gv.egiz
+ BKUApplet
+ 1.0-SNAPSHOT
+ provided
+
--
cgit v1.2.3
From ea5a30db385d2859cc45c889877954bda00ac560 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Thu, 4 Sep 2008 12:32:32 +0000
Subject: jce me4se
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@13 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/pom.xml | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml
index c73a9f17..9d8a808f 100644
--- a/BKUOnline/pom.xml
+++ b/BKUOnline/pom.xml
@@ -1,5 +1,5 @@
-
+
bku
at.gv.egiz
@@ -58,6 +58,17 @@
1.2
jaxws-rt
2.1.4
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/BKUOnline/src/main/webapp/applet/BKUApplet-1.0-SNAPSHOT.jar b/BKUOnline/src/main/webapp/applet/BKUApplet-1.0-SNAPSHOT.jar
new file mode 100644
index 00000000..986842db
Binary files /dev/null and b/BKUOnline/src/main/webapp/applet/BKUApplet-1.0-SNAPSHOT.jar differ
diff --git a/BKUOnline/src/main/webapp/applet/commons-logging-1.1.1.jar b/BKUOnline/src/main/webapp/applet/commons-logging-1.1.1.jar
new file mode 100644
index 00000000..1deef144
Binary files /dev/null and b/BKUOnline/src/main/webapp/applet/commons-logging-1.1.1.jar differ
diff --git a/BKUOnline/src/main/webapp/applet/iaik_jce_me4se-3.04.jar b/BKUOnline/src/main/webapp/applet/iaik_jce_me4se-3.04.jar
new file mode 100644
index 00000000..f2173562
Binary files /dev/null and b/BKUOnline/src/main/webapp/applet/iaik_jce_me4se-3.04.jar differ
--
cgit v1.2.3
From ead5dc6d62e7fd6325ea164625b02a6b6fbb226e Mon Sep 17 00:00:00 2001
From: wbauer
Date: Fri, 5 Sep 2008 09:50:12 +0000
Subject: Added SSL configuration to BKUOnline
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@15 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../at/gv/egiz/bku/online/conf/Configurator.java | 131 ++++++++--------
.../egiz/bku/online/conf/SpringConfigurator.java | 167 ++++++++++++++++++++-
.../online/conf/certs/CACerts/A-Trust-Qual-01a.cer | Bin 0 -> 1111 bytes
.../online/conf/certs/CACerts/A-Trust-Qual-02a.cer | Bin 0 -> 975 bytes
.../online/conf/certs/CACerts/A-Trust-Qual-03a.cer | Bin 0 -> 975 bytes
.../conf/certs/CACerts/A-Trust-nQual-01a.cer | Bin 0 -> 865 bytes
.../online/conf/certs/CACerts/A-Trust-nQual-03.cer | Bin 0 -> 979 bytes
.../online/conf/certs/certStore/a-sign-SSL-03.cer | 26 ++++
.../conf/certs/certStore/a-sign-corporate-03.cer | 27 ++++
.../certs/certStore/a-sign-corporate-light-01a.cer | 21 +++
.../certs/certStore/a-sign-corporate-light-02a.cer | 27 ++++
.../certs/certStore/a-sign-corporate-light-03.cer | 27 ++++
.../certStore/a-sign-corporate-medium-01a.cer | 21 +++
.../certStore/a-sign-corporate-medium-02a.cer | 27 ++++
.../gv/egiz/bku/online/conf/defaultConf.properties | 22 ++-
.../src/main/webapp/WEB-INF/applicationContext.xml | 2 +-
.../at/gv/egiz/bku/online/conf/SSLConfigTest.java | 37 +++++
.../src/test/resources/applicationContext.xml | 53 +++++++
18 files changed, 518 insertions(+), 70 deletions(-)
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-02a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-03a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-nQual-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-nQual-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-SSL-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-02a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-02a.cer
create mode 100644 BKUOnline/src/test/java/at/gv/egiz/bku/online/conf/SSLConfigTest.java
create mode 100644 BKUOnline/src/test/resources/applicationContext.xml
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
index f51335e1..d158b46e 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
@@ -1,21 +1,21 @@
/*
-* 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.online.conf;
-
+ * 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.online.conf;
+
import iaik.security.ecc.provider.ECCProvider;
import iaik.xml.crypto.XSecProvider;
@@ -30,53 +30,52 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import at.gv.egiz.bku.slcommands.impl.xsect.STALProvider;
-
-/**
- *
- * TODO currently only the code to get started.
- */
-public class Configurator {
- private Log log = LogFactory.getLog(Configurator.class);
-
- protected Properties properties;
-
- public Configurator() {
- }
-
- protected void configUrlConnections() {
- HttpsURLConnection.setFollowRedirects(false);
- HttpURLConnection.setFollowRedirects(false);
- }
-
- protected void configureProviders() {
- log.debug("Registering security providers");
- Security.addProvider(new STALProvider());
- XSecProvider.addAsProvider(false);
- Security.insertProviderAt(new ECCProvider(false), 1);
- StringBuffer sb = new StringBuffer();
- sb.append("Following providers are now registered: ");
- int i = 1;
- for (Provider prov : Security.getProviders()) {
- sb.append((i++) + ". : " + prov);
- }
- log.debug("Configured provider" + sb.toString());
- }
-
- public void configure() {
- configureProviders();
- configUrlConnections();
- }
- public void setConfiguration(Properties props) {
- this.properties = props;
- configure();
- }
-
- public String getProperty(String key) {
- if (properties != null) {
- return properties.getProperty(key);
- }
- return null;
- }
-
-}
+/**
+ *
+ * TODO currently only the code to get started.
+ */
+public class Configurator {
+
+ private Log log = LogFactory.getLog(Configurator.class);
+
+ protected Properties properties;
+
+ public Configurator() {
+ }
+
+ protected void configUrlConnections() {
+ HttpsURLConnection.setFollowRedirects(false);
+ HttpURLConnection.setFollowRedirects(false);
+ }
+
+ protected void configureProviders() {
+ log.debug("Registering security providers");
+ Security.addProvider(new STALProvider());
+ XSecProvider.addAsProvider(false);
+ Security.insertProviderAt(new ECCProvider(false), 1);
+ StringBuffer sb = new StringBuffer();
+ sb.append("Following providers are now registered: ");
+ int i = 1;
+ for (Provider prov : Security.getProviders()) {
+ sb.append((i++) + ". : " + prov);
+ }
+ log.debug("Configured provider" + sb.toString());
+ }
+
+ public void configure() {
+ configureProviders();
+ configUrlConnections();
+ }
+
+ public void setConfiguration(Properties props) {
+ this.properties = props;
+ }
+
+ public String getProperty(String key) {
+ if (properties != null) {
+ return properties.getProperty(key);
+ }
+ return null;
+ }
+}
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
index 96588d7d..100285ed 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
@@ -1,16 +1,52 @@
package at.gv.egiz.bku.online.conf;
+import java.io.File;
+import java.io.FileInputStream;
import java.io.IOException;
+import java.security.InvalidAlgorithmParameterException;
+import java.security.NoSuchAlgorithmException;
+import java.security.Security;
+import java.security.cert.CertPath;
+import java.security.cert.CertPathBuilder;
+import java.security.cert.CertStore;
+import java.security.cert.CertificateException;
+import java.security.cert.CertificateFactory;
+import java.security.cert.CollectionCertStoreParameters;
+import java.security.cert.PKIXBuilderParameters;
+import java.security.cert.PKIXCertPathBuilderResult;
+import java.security.cert.TrustAnchor;
+import java.security.cert.X509CertSelector;
+import java.security.cert.X509Certificate;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
import java.util.Properties;
+import java.util.Set;
+
+import javax.net.ssl.CertPathTrustManagerParameters;
+import javax.net.ssl.HttpsURLConnection;
+import javax.net.ssl.KeyManager;
+import javax.net.ssl.ManagerFactoryParameters;
+import javax.net.ssl.SSLContext;
+import javax.net.ssl.TrustManager;
+import javax.net.ssl.TrustManagerFactory;
+import javax.net.ssl.X509TrustManager;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.springframework.context.ResourceLoaderAware;
import org.springframework.core.io.Resource;
+import org.springframework.core.io.ResourceLoader;
+
+import at.gv.egiz.bku.slexceptions.SLRuntimeException;
-public class SpringConfigurator extends Configurator {
+public class SpringConfigurator extends Configurator implements
+ ResourceLoaderAware {
private final static Log log = LogFactory.getLog(SpringConfigurator.class);
+ private ResourceLoader resourceLoader;
+
public void setResource(Resource resource) {
log.debug("Loading config from: " + resource);
if (resource != null) {
@@ -24,4 +60,131 @@ public class SpringConfigurator extends Configurator {
}
}
-}
+ public void configure() {
+ super.configure();
+ configureSSL();
+ }
+
+ private Set getCACerts() throws IOException,
+ CertificateException {
+ Set caCerts = new HashSet();
+ String caDirectory = getProperty("SSL.caDirectory");
+ if (caDirectory != null) {
+ Resource caDirRes = resourceLoader.getResource(caDirectory);
+
+ File caDir = caDirRes.getFile();
+ if (!caDir.isDirectory()) {
+ log.error("Expecting directory as SSL.caDirectory parameter");
+ throw new SLRuntimeException(
+ "Expecting directory as SSL.caDirectory parameter");
+ }
+ CertificateFactory cf = CertificateFactory.getInstance("X.509");
+ for (File f : caDir.listFiles()) {
+ try {
+ FileInputStream fis = new FileInputStream(f);
+ X509Certificate cert = (X509Certificate) cf.generateCertificate(fis);
+ fis.close();
+ log.debug("Adding trusted cert " + cert.getSubjectDN());
+ caCerts.add(new TrustAnchor(cert, null));
+ } catch (Exception e) {
+ log.error("Cannot add trusted ca", e);
+ }
+ }
+ return caCerts;
+
+ } else {
+ log.warn("No CA certificates configured");
+ }
+ return null;
+ }
+
+ private CertStore getCertstore() throws IOException, CertificateException,
+ InvalidAlgorithmParameterException, NoSuchAlgorithmException {
+ String certDirectory = getProperty("SSL.certDirectory");
+ if (certDirectory != null) {
+ Resource certDirRes = resourceLoader.getResource(certDirectory);
+
+ File certDir = certDirRes.getFile();
+ if (!certDir.isDirectory()) {
+ log.error("Expecting directory as SSL.certDirectory parameter");
+ throw new SLRuntimeException(
+ "Expecting directory as SSL.certDirectory parameter");
+ }
+ List certCollection = new LinkedList();
+ CertificateFactory cf = CertificateFactory.getInstance("X.509");
+ for (File f : certDir.listFiles()) {
+ try {
+ FileInputStream fis = new FileInputStream(f);
+ X509Certificate cert =(X509Certificate) cf.generateCertificate(fis);
+ certCollection.add(cert);
+ fis.close();
+ log.trace("Added following cert to certstore: "+cert.getSubjectDN());
+ } catch (Exception ex) {
+ log.error("Cannot add certificate", ex);
+ }
+ }
+ CollectionCertStoreParameters csp = new CollectionCertStoreParameters(
+ certCollection);
+ return CertStore.getInstance("Collection", csp);
+
+ } else {
+ log.warn("No certstore configured");
+ }
+ return null;
+ }
+
+ public void configureSSL() {
+ Set caCerts = null;
+ try {
+ caCerts = getCACerts();
+ } catch (Exception e1) {
+ log.error("Cannot load CA certificates", e1);
+ }
+ CertStore certStore = null;
+ try {
+ certStore = getCertstore();
+ } catch (Exception e1) {
+ log.error("Cannot load certstore certificates", e1);
+ }
+ System.setProperty("com.sun.security.enableAIAcaIssuers", "true");
+ try {
+ X509CertSelector selector = new X509CertSelector();
+ PKIXBuilderParameters pkixParams;
+ pkixParams = new PKIXBuilderParameters(caCerts, selector);
+ if ((getProperty("SSL.doRevocationChecking") != null)
+ && (Boolean.valueOf(getProperty("SSL.doRevocationChecking")))) {
+ log.info("Enable revocation checking");
+ pkixParams.setRevocationEnabled(true);
+ System.setProperty("com.sun.security.enableCRLDP", "true");
+ Security.setProperty("ocsp.enable", "true");
+ } else {
+ log.warn("Revocation checking disabled");
+ pkixParams.setRevocationEnabled(false);
+ }
+ pkixParams.addCertStore(certStore);
+ ManagerFactoryParameters trustParams = new CertPathTrustManagerParameters(
+ pkixParams);
+ TrustManagerFactory trustFab;
+ try {
+ trustFab = TrustManagerFactory.getInstance("PKIX");
+ trustFab.init(trustParams);
+ KeyManager[] km = null;
+ SSLContext sslCtx = SSLContext
+ .getInstance(getProperty("SSL.sslProtocol"));
+ sslCtx.init(km, trustFab.getTrustManagers(), null);
+ HttpsURLConnection
+ .setDefaultSSLSocketFactory(sslCtx.getSocketFactory());
+ } catch (Exception e) {
+ log.error("Cannot configure SSL", e);
+ }
+
+ } catch (InvalidAlgorithmParameterException e) {
+ log.error("Cannot configure SSL", e);
+ }
+ }
+
+ @Override
+ public void setResourceLoader(ResourceLoader loader) {
+ this.resourceLoader = loader;
+ }
+}
\ No newline at end of file
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-01a.cer
new file mode 100644
index 00000000..f9fef65f
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-01a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-02a.cer
new file mode 100644
index 00000000..36a442b8
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-02a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-03a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-03a.cer
new file mode 100644
index 00000000..ab9e0cd7
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-Qual-03a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-nQual-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-nQual-01a.cer
new file mode 100644
index 00000000..efa28178
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-nQual-01a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-nQual-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-nQual-03.cer
new file mode 100644
index 00000000..33e77636
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/CACerts/A-Trust-nQual-03.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-SSL-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-SSL-03.cer
new file mode 100644
index 00000000..ee859434
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-SSL-03.cer
@@ -0,0 +1,26 @@
+-----BEGIN CERTIFICATE-----
+MIIEdzCCA1+gAwIBAgIDAmU4MA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
+dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA2MDgxNjIyMDAw
+MFoXDTE2MDgxNjIyMDAwMFowgYcxCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
+dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
+ZXJrZWhyIEdtYkgxFjAUBgNVBAsMDWEtc2lnbi1TU0wtMDMxFjAUBgNVBAMMDWEt
+c2lnbi1TU0wtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDMjPM6
+PqgdPBPV4Efudpytt2Y4GZJfjeRdZo5SCuULDvvL+23xxBWnR3scFvfE1ekHN/YK
+k+2/qhU2B2ntoSNJSyDchNM8YPc9Lx67zZyhQTZgbBzh3IZAVb/hwuRRRV68JCBj
+r3r6v7IbwjH5XcVISdB4szx0z93aAQyKW9QkV+tD5a1vWFETvdHsZeVmDzfqcdsG
+AznPJw+9HrImCsswCWYUgPcFRkPNjj2r2NoyckVN781aWmNTAqJPf/Ckj9l9pUIt
+Vjhy8XNJW4iVDBkkykBXcGSkIau0ypJrRjsD1jKqUTIRZ/y2HlyltmwWi8OuyBLd
+LaHDbjc0b6JmqoivAgMBAAGjgeMwgeAwDwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4E
+CgQIQD6h02K0A90wEwYDVR0jBAwwCoAIRGqVZ1V5EU8wDgYDVR0PAQH/BAQDAgEG
+MIGUBgNVHR8EgYwwgYkwgYaggYOggYCGfmxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQv
+b3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEtVHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJl
+dm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0Y2xhc3M9ZWlkQ2VydGlmaWNhdGlvbkF1
+dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAQEAHKlnV3R9sbXojtONugyazkZCEzmC
+nZF1Dz4cOL0vPzzvS8MVWtG43zAgVI1NT/0ETSWsXD3YfzRi+f+/CxrGn0gwZX2t
+VGx+Z9w5ufiy1vuhxDUPmpos1TbJ4Wv3Une0E7iuHmNLg5qVlKeHWpcU8t1Y0nCt
+eRz34Qm87AVAykta33XST1fYvGoPKsDtn3qx9ye/pcbDvWjPwmqF2UUoql+d5hmJ
+Umgzwezqk4I+FS98BrnaPgC5UVFHg+yUjiUDLjYy7UvDZ5Led6kkLXuzVhQolLvr
+KTrGp5k42PG2MMkw8f6GMF/6yePXgzFMCRN8ReR7J5Htv33SytLRmFRd8g==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-03.cer
new file mode 100644
index 00000000..7e67be95
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-03.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEgzCCA2ugAwIBAgIDAarsMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
+dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MTExMzIzMDAw
+MFoXDTE1MTExMzIzMDAwMFowgZMxCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
+dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
+ZXJrZWhyIEdtYkgxHDAaBgNVBAsME2Etc2lnbi1jb3Jwb3JhdGUtMDMxHDAaBgNV
+BAMME2Etc2lnbi1jb3Jwb3JhdGUtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQCp44qY+AiVXlcnHoKvch9s3ujoWFNktvcteIPwK7s0mb/uxTUW9UIF
+Die9n3AbyTsJE6R3nZYSJVHHi+1DKD72/WEo/B5NOOtd6KUMfJgca1tDmcsIwhFn
+82qkZrbNQwdIIdLe6+nDmjd9UBIaKv7yy1kq20jh09HOK3/bWhafVQE7EAgDfNrn
+8f0JfnnF0EA/La5kkg878L22fh9lRzt8H21THqJPtK4/e9SttjrJnPhFk2/MjAGS
+uaDufG6BV5Hnn7klR5qm5q32ypleLA6Zi4m9jRCVtPd4jRPYM40XpRkrJuFw+lxp
+rejfEZt/SRh1eQXiXDUgtgX8OaIylH9pAgMBAAGjgeMwgeAwDwYDVR0TAQH/BAUw
+AwEB/zARBgNVHQ4ECgQIQj75YZ1a5XIwEwYDVR0jBAwwCoAIRGqVZ1V5EU8wDgYD
+VR0PAQH/BAQDAgEGMIGUBgNVHR8EgYwwgYkwgYaggYOggYCGfmxkYXA6Ly9sZGFw
+LmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEtVHJ1c3QsYz1BVD9j
+ZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0Y2xhc3M9ZWlkQ2Vy
+dGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAQEARu7e1SyBRjlA
+g/thtFwtKQRvopTZKWj2LWpEdvPvwThOvf8Depnas+ly5af8r8YzsqJzfX3XWvhN
+qOOI24g5FmXfCUTq/kbtaeTq/AqV94793IJfcilPnpMOEHMqXNDiRUoAgR/9EVj8
+mDVvL2lLlJzeAltqOD5Bi9QwguaD2/3/E5ymFnqkf1dnlXbo8AhcwPEzReNKn1eM
+Ilg4FwP1bP0HUK3Fyz1UQ/Hncg+MS7c+SkjpNEd4sH7/GdxuQs5Sk7IRwot1+sbX
+3CkkPhSqiUzig9raxJYrtbb2kyiUO8+d5HzRyoP4BNzsdZdPc0gDYweXg5qarHOQ
+16IEOtBmKg==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-01a.cer
new file mode 100644
index 00000000..0c68e593
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-01a.cer
@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIEJjCCAw6gAwIBAgIDAOJEMA0GCSqGSIb3DQEBBQUAMFUxCzAJBgNVBAYTAkFUMRAwDgYDVQQK
+EwdBLVRydXN0MRkwFwYDVQQLExBBLVRydXN0LW5RdWFsLTAxMRkwFwYDVQQDExBBLVRydXN0LW5R
+dWFsLTAxMB4XDTA0MTEzMDIzMDAwMFoXDTA4MTEzMDIzMDAwMFowgZ8xCzAJBgNVBAYTAkFUMUgw
+RgYDVQQKEz9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0
+ZW52ZXJrZWhyIEdtYkgxIjAgBgNVBAsTGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDExIjAgBgNV
+BAMTGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
+AoIBAQDGC65v8rni63DojEBriynPwRqNCp14/SkN5ROkTUGNvLSabfSJV4PKGLTzasPAaChwX0g/
+kebahFM3R7nIyeVx2YB8VRvC4I/spP/mCs5+6pf1N+6Kiq4NcswgNBBfqAteaQIylBMy6HDkjoXY
+X/c+SxjyrqAkeZCK+SHMOraXCO1PZHWbYwleKXf4R2Z6ayEfJ2XWeVuqqon76WHp/POI0RADBchA
+6Vm1ROzSAHz39bay1TZunQXSs3VQ9cE3uQPjN+80efmf0ZgNF0sXsDTssoZg2feTANSOkTGM1bMC
+5xe1hWFL8MZNe4yZ+NSgFN2fofb8BPvyQAW0no2PNA6PAgMBAAGjgbMwgbAwDwYDVR0TAQH/BAUw
+AwEB/zARBgNVHQ4ECgQITp5/1C/JHx8wEwYDVR0jBAwwCoAITlnOxwIyhzAwDgYDVR0PAQH/BAQD
+AgEGMGUGA1UdHwReMFwwWqBYoFaGVGxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1u
+UXVhbC0wMSxvPUEtVHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0PzANBgkqhkiG
+9w0BAQUFAAOCAQEAOtuz2GqnTibk/poCLrdYKpZSrLyfWFsJJpfBYA9HMasnfpJBCHgRHJud6DAO
+xD900Vhmwy66D8dqsN3+fR8Bx8ZMKspnFN1B2Wz7LWOxMaKqP3JolJ/oVwzJRm0afcUMAfAumkc5
+Yqu0nC5qCF9zYY9YbJklh84uEzEg9j85kuRBHOCUc+5MVrnv7WPbirx6c95YFqXBQ0arA5QE9zYq
+MDO8aUYPOWEHgtrVI+kMwELYHqLDX7i9VqsXhgFPeVz1wIV7s/i3budGeHMS6hjnyIc30FqM7CTY
+fcvqVNZliErbjD1k1W1gMgvjLJowNvQC0W7K9/yoQhwTqtNMR4WZwA==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-02a.cer
new file mode 100644
index 00000000..c300891d
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-02a.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEizCCA3OgAwIBAgIDAOSoMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRgwFgYDVQQLDA9BLVRydXN0LVF1
+YWwtMDIxGDAWBgNVBAMMD0EtVHJ1c3QtUXVhbC0wMjAeFw0wNDEyMTQyMzAwMDBa
+Fw0xNDEyMTMyMzAwMDBaMIGfMQswCQYDVQQGEwJBVDFIMEYGA1UECgw/QS1UcnVz
+dCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy
+a2VociBHbWJIMSIwIAYDVQQLDBlhLXNpZ24tY29ycG9yYXRlLWxpZ2h0LTAyMSIw
+IAYDVQQDDBlhLXNpZ24tY29ycG9yYXRlLWxpZ2h0LTAyMIIBIjANBgkqhkiG9w0B
+AQEFAAOCAQ8AMIIBCgKCAQEAk6V4oEauvXgEICqgjTbGHaiDhBVo2nosX23osoKM
+LTkkO/nOCgpdCYpLKgURxwrgHgVh9XT99yxhy6lDwt2rASajj0sQ1fY5BmWVyrXS
+dQ78ISMPb73XaG4M8H7PJFcsVEo9n8veVQwnMY5mSWy0r1IO8n93Bjbmmi4Zt8oS
+p9olWo5/8ByYW8S/AKZuQx+q+bFJv7geuApVjK2iVFe8yQqHhAgDsAsDlMvxDAQ/
+vhrGwHRv8N3sLsjirnbf5S2dGLDjASOMUFvwfLQd7gHH7PV37Xa+aQqa97eE6O4O
+sIhcGRYhoLk/tWTBDapcgHJ0yTtrftuwORVteLUAy0gBNwIDAQABo4HhMIHeMA8G
+A1UdEwEB/wQFMAMBAf8wEQYDVR0OBAoECEkcWDpP6A0DMBMGA1UdIwQMMAqACEI9
+KySmwUXOMA4GA1UdDwEB/wQEAwIBBjCBkgYDVR0fBIGKMIGHMIGEoIGBoH+GfWxk
+YXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1RdWFsLTAyLG89QS1UcnVz
+dCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/YmFzZT9vYmplY3RjbGFz
+cz1laWRDZXJ0aWZpY2F0aW9uQXV0aG9yaXR5MA0GCSqGSIb3DQEBBQUAA4IBAQBH
+opWG7LKmPBvuGjZnRV4KGKzzUYVuxSRS1E0VIUPbVLf5xW2r5uUpR8ud5EpiPrcw
+k6K0dzu2Vb4ZbMIP+6J16S/0qvTp/3A/3q87+nJ+ot+IT8GZFJfSw18th2WmZdzR
+ShbM6sgViPtGsFROCdWeiHl248w2+zG+09sf8Bu3UyvwLRAiiKaxuwVdQ9kc0TL3
+gvv+K5eisWWthQOX2IF2jGSEqoAVwfHhl7bc9Vt7XnJSpQFebHnsIVuV4Mv6w4ww
+86hQPCLLvvV7wWDiBQ8l2FWneX0pNH3Wg+A1TRUoptc+pPDdpoP272MDm4fXyPKV
+7QgIaIK+gXNUj2GGt1K9
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-03.cer
new file mode 100644
index 00000000..2251ca22
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-03.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEjzCCA3egAwIBAgIDAartMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
+dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MTExMzIzMDAw
+MFoXDTE1MTExMzIzMDAwMFowgZ8xCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
+dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
+ZXJrZWhyIEdtYkgxIjAgBgNVBAsMGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDMx
+IjAgBgNVBAMMGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDMwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQC359oitbHkkEgdErRPeBdkcYRK2DLdxfcnn+SI
+umSEYzWVscRTchPKSzb7f1a6EHPbB5WZsGJaUDX9KfTqsJNMo+7bASKk3gsLVxNZ
+qY2t2G+y8HvREYYejDOIzjAkcBQrt+nvuBUlGYVJQjEuyAn18f2vG0Y3VNvZFGKn
+PK8AVycUMk0Uw21RbK3vX5tbbPgQ/kcZkN4czi5VHepMvf6hAwwLoJj+KL9zxm8j
+yPK88qCBKAjMNCpZKsEhyanw1CjYbVmHs45Q5W6FBtqDcS6Iq4mC6TtUPGtCTuoH
+7/JLuhEp075ohp87v3fSlzeLJjBpkUDP9U8Tv7l2euD0t1UVAgMBAAGjgeMwgeAw
+DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQIQZFpHL+t2JgwEwYDVR0jBAwwCoAI
+RGqVZ1V5EU8wDgYDVR0PAQH/BAQDAgEGMIGUBgNVHR8EgYwwgYkwgYaggYOggYCG
+fmxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEt
+VHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0
+Y2xhc3M9ZWlkQ2VydGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOC
+AQEADTRIaQtPwoPS6/TpyBhOw4wAHk/RM4gkLT76URPY2sUHihxqy+8qEElN+f5l
+I61myCP3IFTClflcHVR1QCoMg0ZI5/EcQTI8Dgd5iQkXuVjh3wCj87Ka2Tu7d1K+
+i9VJ4BR/ph/qmPKR7Lx/PtATw/vWo4k2rbt5o1QwixZ7CPt+BF9xCaAC4uL0bB0M
+9M3i9W2ePmqX6WIB3jMkT9FQC0KihPPfw/17KddNi4rFMMEiTyKvJTtTqDnIAwWW
+TqsL1G7oxMMtnnYaKWMQ6gQiOiRzCY7efcAi/3YwUX6ULW5zxqapNs1vqEbSGsQE
+l1eFl67HBZHYAPdoHGUnZF0KaQ==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-01a.cer
new file mode 100644
index 00000000..2d7f1a03
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-01a.cer
@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIEKDCCAxCgAwIBAgIDAOKKMA0GCSqGSIb3DQEBBQUAMFUxCzAJBgNVBAYTAkFUMRAwDgYDVQQK
+EwdBLVRydXN0MRkwFwYDVQQLExBBLVRydXN0LW5RdWFsLTAxMRkwFwYDVQQDExBBLVRydXN0LW5R
+dWFsLTAxMB4XDTA0MTIwNTIzMDAwMFoXDTA4MTEzMDIzMDAwMFowgaExCzAJBgNVBAYTAkFUMUgw
+RgYDVQQKEz9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0
+ZW52ZXJrZWhyIEdtYkgxIzAhBgNVBAsTGmEtc2lnbi1jb3Jwb3JhdGUtbWVkaXVtLTAxMSMwIQYD
+VQQDExphLXNpZ24tY29ycG9yYXRlLW1lZGl1bS0wMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
+AQoCggEBANEbZyIMIXZYBjTj/+3TrNGssRKNNdTedQlWB3vJQWLzeG89Kzmhy1WDX8IqDrMtvpXH
+5w6urK3ZT7HGu2Jldrib8rkEOdE9+uNGRtkP8Kuz//CvdXCbIDvBLqgvWn9a3Sl/rUicPqKwcEcN
+bP2Q0iU6NvvALmoqs93PymfTZlkGOwzUe+O88huXkauGWT/DkJd4JYDNJ0wlaGrJa+OorT4Izk1J
+EipqqedUjsAj4Gq3SKrZKG/H/CkoH9uWTzrzFgg8zQhCES4AClo84XVk//EIv3ABDw4hr+lqV1nF
+eXch9o4mLIe5u045471YLJLmyuCPDopb8U2VUoyldpMx+Y8CAwEAAaOBszCBsDAPBgNVHRMBAf8E
+BTADAQH/MBEGA1UdDgQKBAhOuHKxmCmfZDATBgNVHSMEDDAKgAhOWc7HAjKHMDAOBgNVHQ8BAf8E
+BAMCAQYwZQYDVR0fBF4wXDBaoFigVoZUbGRhcDovL2xkYXAuYS10cnVzdC5hdC9vdT1BLVRydXN0
+LW5RdWFsLTAxLG89QS1UcnVzdCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/MA0GCSqG
+SIb3DQEBBQUAA4IBAQDaukYSeJVxWAh8QShqGqA6Plp9aXCTzwl9hE2gb+/xGPASo+NVQi/sUa0+
+bx29oSJaW6lKzdHQLAx4dwW9XTpJ+0mebB4fQfYHH0lGc1O4au/4O9k+C3SrD6x4WeY9k/SpUFu1
+qjzH+tjta81UWtU7Jve1BhckNwdOFx7cR8fdW+pUQSDV9XnPJfyb+gb9KWhvX+XAbgJoXW1HjJOO
+P5sx6mFhMb3UqAfKQVoAuGbl4+uxIThBTqpICkaaD8WLdukqQjomUMDRbWIf6SblPuOEpPi1G/WM
+qkTkpqX77Wkj08QY/yj5DDrsYJ5NymnWvu7jcoxCFCKvEQ8Q4g7AYKnG
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-02a.cer
new file mode 100644
index 00000000..194d4d7c
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-02a.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEjTCCA3WgAwIBAgIDAOSpMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRgwFgYDVQQLDA9BLVRydXN0LVF1
+YWwtMDIxGDAWBgNVBAMMD0EtVHJ1c3QtUXVhbC0wMjAeFw0wNDEyMTQyMzAwMDBa
+Fw0xNDEyMTMyMzAwMDBaMIGhMQswCQYDVQQGEwJBVDFIMEYGA1UECgw/QS1UcnVz
+dCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy
+a2VociBHbWJIMSMwIQYDVQQLDBphLXNpZ24tY29ycG9yYXRlLW1lZGl1bS0wMjEj
+MCEGA1UEAwwaYS1zaWduLWNvcnBvcmF0ZS1tZWRpdW0tMDIwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQCuaTBb6rHd5JZqAdvpmGIl5ne0Hg6GbpJvBeCI
+U6l9Rs8ebMY6aIS++qJOE9rnJHdfZNzLzduuoWEzEuwm9a/azQThM+eT+xlG/Vcf
+NuOQTTjAuXHLvYQ7WxSrBIT/kmAyqJgq/DEPvdX4jmCtVkuZ1gbxYIChLOVBWkVC
+FCK49BuXECtNy5fzK/GyfouZOVoQgiQ1YfecqzibcwO0t+f68Pvp/s6HESAH5tXY
+PdENDw4c/W/qKaeR87jPq98AJ8Lr4bmjWLjK8/ITtGglnJy8osFz22oR7f6fbWl6
+5LdhJ3giM68WEabQcZkw8cx3RDOzbnL2Kn+PVNHHyp3Wh849AgMBAAGjgeEwgd4w
+DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISoLnpz/+q98wEwYDVR0jBAwwCoAI
+Qj0rJKbBRc4wDgYDVR0PAQH/BAQDAgEGMIGSBgNVHR8EgYowgYcwgYSggYGgf4Z9
+bGRhcDovL2xkYXAuYS10cnVzdC5hdC9vdT1BLVRydXN0LVF1YWwtMDIsbz1BLVRy
+dXN0LGM9QVQ/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdD9iYXNlP29iamVjdGNs
+YXNzPWVpZENlcnRpZmljYXRpb25BdXRob3JpdHkwDQYJKoZIhvcNAQEFBQADggEB
+ABqg1oRs/TZ0hJLJRV/xJglFzgn2fDAXeoVvWnAE09F1d0n+ZorKAKbMfiZ2CuKs
+M0AhU23/5zM90DdrtYWXpa+P8ONALZtHJIqGfVuRKYJq7jY5TpE3yRkTcrp47smp
+WqTwUgG+0aBeU9m+ZtGUFOsBkq+MudD8IZGc7VcLd1n4ltND9ITjX20hu01ju56c
+YC69vFa5hmIccXg/Q3dGEV5Amx8MTQJluG3QvqBOY74yrAFICvK1zsvu+vOGvJQj
+i+PxKlbQdehrV82VDxyfSjpEUADWMGRfE5vg4YBGgfRosh4w7a6ThD2LMLFPmIhy
+P6+VGUBCm2tMDDOo9DVkXFs=
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
index 12deac35..a6bf9de6 100644
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
@@ -1,3 +1,23 @@
# Configuration for online CCE
+
+# security manager configuration
AccessController.acceptUnmatched=false
-AccessController.policyResource=classpath:at/gv/egiz/bku/online/conf/accessControlConfig.xml
\ No newline at end of file
+AccessController.policyResource=classpath:at/gv/egiz/bku/online/conf/accessControlConfig.xml
+
+# ------------BEGIN SSL Config --------------------
+# SSL configuration for connections to external
+# resources (e.g. data urls)
+
+# directory where certificates for
+# chain constructions can be placed
+SSL.certDirectory=classpath:at/gv/egiz/bku/online/conf/certs/certStore
+
+# Directory where trusted CA
+# certificates are placed
+SSL.caDirectory=classpath:at/gv/egiz/bku/online/conf/certs/CACerts
+
+SSL.doRevocationChecking=true
+SSL.sslProtocol=TLS
+
+# ------------ END SSL Config --------------------
+
diff --git a/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml b/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
index c5da25c0..4bb5e8e2 100644
--- a/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
+++ b/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
@@ -46,7 +46,7 @@
+ scope="singleton" init-method="configure">
diff --git a/BKUOnline/src/test/java/at/gv/egiz/bku/online/conf/SSLConfigTest.java b/BKUOnline/src/test/java/at/gv/egiz/bku/online/conf/SSLConfigTest.java
new file mode 100644
index 00000000..59ff693a
--- /dev/null
+++ b/BKUOnline/src/test/java/at/gv/egiz/bku/online/conf/SSLConfigTest.java
@@ -0,0 +1,37 @@
+package at.gv.egiz.bku.online.conf;
+
+import java.net.URL;
+
+import javax.net.ssl.HttpsURLConnection;
+
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.support.ClassPathXmlApplicationContext;
+
+public class SSLConfigTest {
+
+ private SpringConfigurator cfg;
+ private ApplicationContext ctx;
+
+ @Before
+ public void setUp() throws Exception {
+ ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
+
+ }
+
+ @Test
+ public void testConnect() throws Exception {
+ String url = "https://apps.egiz.gv.at/exchange-moa-id-auth/VerifyIdentityLink?MOASessionID=8151862969943601574";
+ URL u = new URL(url);
+ HttpsURLConnection uc = (HttpsURLConnection) u.openConnection();
+ uc.connect();
+ System.out.println(uc.getCipherSuite());
+ }
+
+ @After
+ public void shutDown() {
+
+ }
+}
diff --git a/BKUOnline/src/test/resources/applicationContext.xml b/BKUOnline/src/test/resources/applicationContext.xml
new file mode 100644
index 00000000..4bb5e8e2
--- /dev/null
+++ b/BKUOnline/src/test/resources/applicationContext.xml
@@ -0,0 +1,53 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
--
cgit v1.2.3
From 68b3d73c291753f19d04682306ae67125dbbd431 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Fri, 5 Sep 2008 11:40:49 +0000
Subject: Adjusted default security settings for BKUOnline
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@16 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../egiz/bku/online/conf/SpringConfigurator.java | 6 --
.../egiz/bku/online/conf/accessControlConfig.xml | 75 ++++++++--------------
2 files changed, 25 insertions(+), 56 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
index 100285ed..768bedea 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
@@ -6,14 +6,11 @@ import java.io.IOException;
import java.security.InvalidAlgorithmParameterException;
import java.security.NoSuchAlgorithmException;
import java.security.Security;
-import java.security.cert.CertPath;
-import java.security.cert.CertPathBuilder;
import java.security.cert.CertStore;
import java.security.cert.CertificateException;
import java.security.cert.CertificateFactory;
import java.security.cert.CollectionCertStoreParameters;
import java.security.cert.PKIXBuilderParameters;
-import java.security.cert.PKIXCertPathBuilderResult;
import java.security.cert.TrustAnchor;
import java.security.cert.X509CertSelector;
import java.security.cert.X509Certificate;
@@ -28,9 +25,7 @@ import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.KeyManager;
import javax.net.ssl.ManagerFactoryParameters;
import javax.net.ssl.SSLContext;
-import javax.net.ssl.TrustManager;
import javax.net.ssl.TrustManagerFactory;
-import javax.net.ssl.X509TrustManager;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -71,7 +66,6 @@ public class SpringConfigurator extends Configurator implements
String caDirectory = getProperty("SSL.caDirectory");
if (caDirectory != null) {
Resource caDirRes = resourceLoader.getResource(caDirectory);
-
File caDir = caDirRes.getFile();
if (!caDir.isDirectory()) {
log.error("Expecting directory as SSL.caDirectory parameter");
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/accessControlConfig.xml b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/accessControlConfig.xml
index 15d62155..e12d1abe 100644
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/accessControlConfig.xml
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/accessControlConfig.xml
@@ -1,39 +1,40 @@
+
-
- certifiedGovAgency
-
+
+
allow
confirm
-
- pseudoanonymous
-
+
+
+
+
+
+
+
+ certifiedGovAgency
- Command
+ allow
- none
+ confirm
-
+
anonymous
- 127.0.0.1
Command
- none
-
-
- anonymous
- $.gv.at
-
- allow
-
- confirm
@@ -44,7 +45,7 @@
IdentityLink
- .*
+ derived
allow
@@ -52,42 +53,16 @@
confirm
- certified
- https://finanzonline.bmf.gv.at/*
-
-
- Mandates
- .*
+ anonymous
+
+ IdentityLink
- allow
+ deny
info
- certified
-
-
-
- allow
-
- none
-
-
- anonymous
-
-
- 127.0.0.1
-
- allow
-
- none
-
-
-
-
-
-
allow
--
cgit v1.2.3
From 14d74dd27c32a02b5301a0755f3fe174d7e3c9f6 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Fri, 5 Sep 2008 12:05:55 +0000
Subject: added file headers
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@17 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../online/accesscontroller/SpringSecurityManager.java | 16 ++++++++++++++++
.../at/gv/egiz/bku/online/conf/SpringConfigurator.java | 16 ++++++++++++++++
.../at/gv/egiz/bku/online/conf/accessControlConfig.xml | 12 ++++++++++++
.../at/gv/egiz/bku/online/conf/defaultConf.properties | 18 ++++++++++++++++++
4 files changed, 62 insertions(+)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/accesscontroller/SpringSecurityManager.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/accesscontroller/SpringSecurityManager.java
index 404e254e..3d0df8c4 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/accesscontroller/SpringSecurityManager.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/accesscontroller/SpringSecurityManager.java
@@ -1,3 +1,19 @@
+/*
+* 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.online.accesscontroller;
import java.io.IOException;
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
index 768bedea..545a69c9 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
@@ -1,3 +1,19 @@
+/*
+* 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.online.conf;
import java.io.File;
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/accessControlConfig.xml b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/accessControlConfig.xml
index e12d1abe..69b45d1b 100644
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/accessControlConfig.xml
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/accessControlConfig.xml
@@ -1,4 +1,16 @@
+
+
+
+
+
\ No newline at end of file
--
cgit v1.2.3
From 73cb4535d1bc2386a6314380f50ff64425e71bf8 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Wed, 10 Sep 2008 10:15:30 +0000
Subject: removed applet jars
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@28 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../src/main/webapp/applet/BKUApplet-1.0-SNAPSHOT.jar | Bin 132767 -> 0 bytes
.../src/main/webapp/applet/commons-logging-1.1.1.jar | Bin 60686 -> 0 bytes
.../src/main/webapp/applet/iaik_jce_me4se-3.04.jar | Bin 99061 -> 0 bytes
3 files changed, 0 insertions(+), 0 deletions(-)
delete mode 100644 BKUOnline/src/main/webapp/applet/BKUApplet-1.0-SNAPSHOT.jar
delete mode 100644 BKUOnline/src/main/webapp/applet/commons-logging-1.1.1.jar
delete mode 100644 BKUOnline/src/main/webapp/applet/iaik_jce_me4se-3.04.jar
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/applet/BKUApplet-1.0-SNAPSHOT.jar b/BKUOnline/src/main/webapp/applet/BKUApplet-1.0-SNAPSHOT.jar
deleted file mode 100644
index 986842db..00000000
Binary files a/BKUOnline/src/main/webapp/applet/BKUApplet-1.0-SNAPSHOT.jar and /dev/null differ
diff --git a/BKUOnline/src/main/webapp/applet/commons-logging-1.1.1.jar b/BKUOnline/src/main/webapp/applet/commons-logging-1.1.1.jar
deleted file mode 100644
index 1deef144..00000000
Binary files a/BKUOnline/src/main/webapp/applet/commons-logging-1.1.1.jar and /dev/null differ
diff --git a/BKUOnline/src/main/webapp/applet/iaik_jce_me4se-3.04.jar b/BKUOnline/src/main/webapp/applet/iaik_jce_me4se-3.04.jar
deleted file mode 100644
index f2173562..00000000
Binary files a/BKUOnline/src/main/webapp/applet/iaik_jce_me4se-3.04.jar and /dev/null differ
--
cgit v1.2.3
From 2f566efcd4e861ceac5be5cf1b197e04639627a0 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Wed, 10 Sep 2008 16:56:47 +0000
Subject: applet dep removed
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@31 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/pom.xml | 4 ++--
BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd | 1 +
2 files changed, 3 insertions(+), 2 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml
index 9d8a808f..a0e45cf6 100644
--- a/BKUOnline/pom.xml
+++ b/BKUOnline/pom.xml
@@ -43,12 +43,12 @@
1.0-SNAPSHOT
compile
-
+
diff --git a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd
index 74d5fe6e..c4e48e2c 100644
--- a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd
+++ b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd
@@ -81,6 +81,7 @@
+
--
cgit v1.2.3
From 76bb812a3254be530e403f8db8c01323a31b30c1 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Thu, 11 Sep 2008 13:03:44 +0000
Subject: git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@33
8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/pom.xml | 317 ++++++++++++---------
.../at/gv/egiz/bku/online/conf/Configurator.java | 21 +-
.../egiz/bku/online/conf/SpringConfigurator.java | 17 ++
.../gv/egiz/bku/online/webapp/ResultServlet.java | 246 ++++++++--------
.../egiz/bku/online/webapp/SpringBKUServlet.java | 6 +-
.../gv/egiz/bku/online/conf/defaultConf.properties | 2 +
BKUOnline/src/main/resources/log4j.properties | 21 +-
.../src/main/webapp/WEB-INF/applicationContext.xml | 4 +-
BKUOnline/src/main/webapp/appletPage.jsp | 8 +-
9 files changed, 361 insertions(+), 281 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml
index a0e45cf6..d31367a8 100644
--- a/BKUOnline/pom.xml
+++ b/BKUOnline/pom.xml
@@ -1,141 +1,180 @@
-
-
- bku
- at.gv.egiz
- 1.0-SNAPSHOT
-
- 4.0.0
- at.gv.egiz
- BKUOnline
- war
- BKU Online
- 1.0-SNAPSHOT
-
-
- at.gv.egiz
- bkucommon
- 1.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-SNAPSHOT
- compile
-
-
-
-
- com.sun.xml.ws
-
- jaxws-rt
- 2.1.4
-
-
-
-
-
- Tomcat60
-
-
-
-
- maven-dependency-plugin
-
-
- copyapplet
-
- copy
-
-
-
-
- at.gv.egiz
- BKUApplet
- 1.0-SNAPSHOT
-
-
- commons-logging
- commons-logging
-
-
- iaik
- iaik_jce_me4se
-
-
- ${project.build.directory}/${project.build.finalName}/applet
-
-
-
-
-
-
-
+
+
+ bku
+ at.gv.egiz
+ 1.0-SNAPSHOT
+
+ 4.0.0
+ at.gv.egiz
+ BKUOnline
+ war
+ BKU Online
+ 1.0-SNAPSHOT
+
+
+
+ tlc
+ TLC Repository
+ http://commons.ucalgary.ca/pub/m2
+
+
+
+
+
+ at.gv.egiz
+ bkucommon
+ 1.0-SNAPSHOT
+
+
+ at.gv.egiz
+ BKUViewer
+ 1.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-SNAPSHOT
+ compile
+
+
+
+
+ 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
+
+ copy
+
+
+
+
+ at.gv.egiz
+ BKUApplet
+ 1.0-SNAPSHOT
+
+
+ commons-logging
+ commons-logging
+
+
+ iaik
+ iaik_jce_me4se
+
+
+ ${project.build.directory}/${project.build.finalName}/applet
+
+
+
+
+
+
+ maven-war-plugin
+ 2.0.2
+
+
+
+ true
+
+
+
+
+
+ ${project.version}-r${buildNumber}
+
+
+
+
+
+
+ org.codehaus.mojo
+ maven-buildnumber-plugin
+ 0.9.6
+
+
+ validate
+
+ create
+
+
+
+
+ false
+ false
+
+
+
+
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
index de577139..c09abcc1 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
@@ -17,8 +17,10 @@
package at.gv.egiz.bku.online.conf;
import iaik.security.ecc.provider.ECCProvider;
+import iaik.security.provider.IAIK;
import iaik.xml.crypto.XSecProvider;
+import java.io.IOException;
import java.net.HttpURLConnection;
import java.security.Provider;
import java.security.Security;
@@ -29,22 +31,30 @@ import javax.net.ssl.HttpsURLConnection;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import at.gv.egiz.bku.binding.DataUrl;
+import at.gv.egiz.bku.binding.DataUrlConnection;
+import at.gv.egiz.bku.slcommands.impl.xsect.DataObject;
import at.gv.egiz.bku.slcommands.impl.xsect.STALProvider;
-import iaik.security.provider.IAIK;
/**
*
* TODO currently only the code to get started.
*/
-public class Configurator {
+public abstract class Configurator {
private Log log = LogFactory.getLog(Configurator.class);
+
+ private static Configurator instance = new SpringConfigurator();
protected Properties properties;
- public Configurator() {
+ protected Configurator() {
}
+ public static Configurator getInstance() {
+ return instance;
+ }
+
protected void configUrlConnections() {
HttpsURLConnection.setFollowRedirects(false);
HttpURLConnection.setFollowRedirects(false);
@@ -65,9 +75,14 @@ public class Configurator {
log.debug(sb.toString());
}
+ protected void configViewer() {
+ DataObject.enableHashDataInputValidation(Boolean.parseBoolean(properties.getProperty("ValidateHashDataInputs")));
+ }
+
public void configure() {
configureProviders();
configUrlConnections();
+ configViewer();
}
public void setConfiguration(Properties props) {
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
index 545a69c9..9fe91708 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
@@ -49,6 +49,8 @@ import org.springframework.context.ResourceLoaderAware;
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
+import at.gv.egiz.bku.binding.DataUrl;
+import at.gv.egiz.bku.binding.DataUrlConnection;
import at.gv.egiz.bku.slexceptions.SLRuntimeException;
public class SpringConfigurator extends Configurator implements
@@ -71,9 +73,24 @@ public class SpringConfigurator extends Configurator implements
}
}
+ public void configureVersion() {
+ Properties p = new Properties();
+ try {
+ p.load(resourceLoader.getResource("META-INF/MANIFEST.MF").getInputStream());
+ String version = p.getProperty("Implementation-Build");
+ properties.setProperty(DataUrlConnection.USER_AGENT_PROPERTY_KEY, "citizen-card-environment/1.2 MOCCA "+version);
+ DataUrl.setConfiguration(properties);
+ log.debug("Setting user agent to: "+properties.getProperty(DataUrlConnection.USER_AGENT_PROPERTY_KEY));
+ } catch (IOException e) {
+ log.error(e);
+ }
+ }
+
+
public void configure() {
super.configure();
configureSSL();
+ configureVersion();
}
private Set getCACerts() throws IOException,
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 bc3edf18..28c714c1 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
@@ -1,121 +1,129 @@
/*
-* 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.online.webapp;
-
-import java.io.IOException;
-import java.util.Iterator;
-
-import javax.servlet.ServletConfig;
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import at.gv.egiz.bku.binding.HTTPBindingProcessor;
-import at.gv.egiz.bku.binding.IdFactory;
-
-/**
- * Delivers the result to the browser
- *
- */
-public class ResultServlet extends SpringBKUServlet {
-
- private final static Log log = LogFactory.getLog(ResultServlet.class);
-
- private String encoding = "UTF-8";
- private String expiredPage = "./expiredError.jsp";
-
- public ResultServlet() {
- }
-
- private void myInit() {
- String enc = getServletContext().getInitParameter("responseEncoding");
- if (enc != null) {
- log.debug("Init default encoding to: "+enc);
- encoding = enc;
- }
- String expP = getServletConfig().getInitParameter("expiredPage");
- if (expP != null) {
- log.debug("Init expired page to: "+expP);
- expiredPage = expP;
- }
- }
-
- @Override
- public void init() throws ServletException {
- super.init();
- myInit();
- }
-
- @Override
- public void init(ServletConfig config) throws ServletException {
- super.init(config);
- myInit();
- }
-
-
-
- protected void doPost(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, IOException {
- doGet(req, resp);
- }
-
- protected void doGet(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, java.io.IOException {
-
- HttpSession session = req.getSession(false);
- if (session == null) {
- resp.sendRedirect(expiredPage);
- return;
- }
- String sessionId = session.getId();
- if (sessionId == null) {
- resp.sendRedirect(expiredPage);
- return;
- }
- log.debug("Got a result request for session: " + sessionId);
- HTTPBindingProcessor bp = (HTTPBindingProcessor) getBindingProcessorManager().getBindingProcessor(
- IdFactory.getInstance().createId(sessionId));
- if (bp == null) {
- session.invalidate();
- resp.sendRedirect(expiredPage);
- return;
- }
-
- if (bp.getRedirectURL() != null) {
- resp.sendRedirect(bp.getRedirectURL());
- return;
- }
- resp.setStatus(bp.getResponseCode());
- resp.setHeader("Cache-Control","no-store"); //HTTP 1.1
- resp.setHeader("Pragma","no-cache"); //HTTP 1.0
- resp.setDateHeader ("Expires", 0);
- for (Iterator it = bp.getResponseHeaders().keySet()
- .iterator(); it.hasNext();) {
- String header = it.next();
- resp.setHeader(header, bp.getResponseHeaders().get(header));
- }
- resp.setContentType(bp.getResultContentType());
- resp.setCharacterEncoding(encoding);
- bp.writeResultTo(resp.getOutputStream(), encoding);
+ * 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.online.webapp;
+
+import java.io.IOException;
+import java.util.Iterator;
+
+import javax.servlet.ServletConfig;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import at.gv.egiz.bku.binding.HTTPBindingProcessor;
+import at.gv.egiz.bku.binding.HttpUtil;
+import at.gv.egiz.bku.binding.IdFactory;
+import at.gv.egiz.bku.online.conf.Configurator;
+
+/**
+ * Delivers the result to the browser
+ *
+ */
+public class ResultServlet extends SpringBKUServlet {
+
+ private final static Log log = LogFactory.getLog(ResultServlet.class);
+ public final static String USER_AGENT_PROPERTY_KEY = "UserAgent";
+
+ private String encoding = "UTF-8";
+ private String expiredPage = "./expiredError.jsp";
+
+ public ResultServlet() {
+ }
+
+ private void myInit() {
+ String enc = getServletContext().getInitParameter("responseEncoding");
+ if (enc != null) {
+ log.debug("Init default encoding to: " + enc);
+ encoding = enc;
+ }
+ String expP = getServletConfig().getInitParameter("expiredPage");
+ if (expP != null) {
+ log.debug("Init expired page to: " + expP);
+ expiredPage = expP;
+ }
+ }
+
+ @Override
+ public void init() throws ServletException {
+ super.init();
+ myInit();
+ }
+
+ @Override
+ public void init(ServletConfig config) throws ServletException {
+ super.init(config);
+ myInit();
+ }
+
+ protected void doPost(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, IOException {
+ doGet(req, resp);
+ }
+
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, java.io.IOException {
+
+ HttpSession session = req.getSession(false);
+ if (session == null) {
+ resp.sendRedirect(expiredPage);
+ return;
+ }
+ String sessionId = session.getId();
+ if (sessionId == null) {
+ resp.sendRedirect(expiredPage);
+ return;
+ }
+ log.debug("Got a result request for session: " + sessionId);
+ HTTPBindingProcessor bp = (HTTPBindingProcessor) getBindingProcessorManager()
+ .getBindingProcessor(IdFactory.getInstance().createId(sessionId));
+ if (bp == null) {
+ session.invalidate();
+ resp.sendRedirect(expiredPage);
+ return;
+ }
+
+ if (bp.getRedirectURL() != null) {
+ resp.sendRedirect(bp.getRedirectURL());
+ return;
+ }
+ resp.setStatus(bp.getResponseCode());
+ resp.setHeader("Cache-Control", "no-store"); // HTTP 1.1
+ resp.setHeader("Pragma", "no-cache"); // HTTP 1.0
+ resp.setDateHeader("Expires", 0);
+ if (Configurator.getInstance().getProperty(USER_AGENT_PROPERTY_KEY) != null) {
+ resp.setHeader(HttpUtil.HTTP_HEADER_USER_AGENT, Configurator.getInstance().getProperty(
+ USER_AGENT_PROPERTY_KEY));
+ } else {
+ resp.setHeader(HttpUtil.HTTP_HEADER_USER_AGENT,
+ "citizen-card-environment/1.2 MOCCA Unknown");
+ }
+ for (Iterator it = bp.getResponseHeaders().keySet().iterator(); it
+ .hasNext();) {
+ String header = it.next();
+ resp.setHeader(header, bp.getResponseHeaders().get(header));
+ }
+ resp.setContentType(bp.getResultContentType());
+ resp.setCharacterEncoding(encoding);
+ bp.writeResultTo(resp.getOutputStream(), encoding);
session.invalidate();
- getBindingProcessorManager().removeBindingProcessor(bp.getId());
- }
-}
+ getBindingProcessorManager().removeBindingProcessor(bp.getId());
+ }
+}
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java
index 6ee537b1..ec062e42 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java
@@ -19,13 +19,13 @@ package at.gv.egiz.bku.online.webapp;
import javax.servlet.http.HttpServlet;
import at.gv.egiz.bku.binding.BindingProcessorManager;
+import at.gv.egiz.bku.online.conf.Configurator;
public abstract class SpringBKUServlet extends HttpServlet {
- public final static String BEAN_NAME="bindingProcessorManager";
-
+ public final static String BEAN_NAME="bindingProcessorManager";
+
protected BindingProcessorManager getBindingProcessorManager() {
return (BindingProcessorManager) getServletContext().getAttribute(BEAN_NAME);
}
-
}
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
index 108f8624..cdc2bfad 100644
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
@@ -39,3 +39,5 @@ SSL.sslProtocol=TLS
# ------------ END SSL Config --------------------
+ValidateHashDataInputs=true
+
diff --git a/BKUOnline/src/main/resources/log4j.properties b/BKUOnline/src/main/resources/log4j.properties
index ed14b424..58f09511 100644
--- a/BKUOnline/src/main/resources/log4j.properties
+++ b/BKUOnline/src/main/resources/log4j.properties
@@ -13,9 +13,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-# loglever DEBUG, appender STDOUT
-log4j.rootLogger=TRACE, STDOUT
-#log4j.logger.at.gv.egiz.slbinding.RedirectEventFilter=DEBUG, STDOUT
+
+log4j.rootLogger=TRACE, STDOUT, file
# STDOUT appender
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
@@ -24,11 +23,11 @@ log4j.appender.STDOUT.layout=org.apache.log4j.PatternLayout
#log4j.appender.STDOUT.layout.ConversionPattern=%-4r [%t] %-5p %c %x - %m%n
log4j.appender.STDOUT.layout.ConversionPattern=%-5p | %t | %c %x - %m%n
-### FILE appender
-#log4j.appender.file=org.apache.log4j.RollingFileAppender
-#log4j.appender.file.maxFileSize=100KB
-#log4j.appender.file.maxBackupIndex=9
-#log4j.appender.file.File=egovbus_ca.log
-#log4j.appender.file.threshold=info
-#log4j.appender.file.layout=org.apache.log4j.PatternLayout
-#log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
\ No newline at end of file
+# FILE appender
+log4j.appender.file=org.apache.log4j.RollingFileAppender
+log4j.appender.file.maxFileSize=500KB
+log4j.appender.file.maxBackupIndex=9
+log4j.appender.file.File=${catalina.home}/logs/bkuonline.log
+log4j.appender.file.threshold=trace
+log4j.appender.file.layout=org.apache.log4j.PatternLayout
+log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p | %t | %c{1}:%L - %m%n
\ No newline at end of file
diff --git a/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml b/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
index f87d09f5..04b07ba4 100644
--- a/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
+++ b/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
@@ -45,8 +45,8 @@
-
+
diff --git a/BKUOnline/src/main/webapp/appletPage.jsp b/BKUOnline/src/main/webapp/appletPage.jsp
index 684a8dca..fdd7072f 100644
--- a/BKUOnline/src/main/webapp/appletPage.jsp
+++ b/BKUOnline/src/main/webapp/appletPage.jsp
@@ -25,15 +25,15 @@
--
cgit v1.2.3
From 3794536434fdbb06067eddcfd248898ce85f85a1 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Fri, 12 Sep 2008 13:06:34 +0000
Subject: gui 0.2
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@34 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/pom.xml | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml
index d31367a8..a50954cd 100644
--- a/BKUOnline/pom.xml
+++ b/BKUOnline/pom.xml
@@ -58,11 +58,13 @@
1.0-SNAPSHOT
compile
-
+
+
+ at.gv.egiz
+ BKUApplet
+ 1.0-SNAPSHOT
+ provided
+
@@ -177,4 +179,5 @@
+>>>>>>> .r33
--
cgit v1.2.3
From 14a2bb1d4015aa2facc7faf59ad8ad7441a7119e Mon Sep 17 00:00:00 2001
From: clemenso
Date: Fri, 12 Sep 2008 14:20:43 +0000
Subject: conflict resolved
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@36 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/pom.xml | 1 -
1 file changed, 1 deletion(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml
index a50954cd..bcaf0a70 100644
--- a/BKUOnline/pom.xml
+++ b/BKUOnline/pom.xml
@@ -179,5 +179,4 @@
->>>>>>> .r33
--
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
---
.../src/main/java/at/gv/egiz/bku/online/webapp/ResultServlet.java | 1 +
.../java/at/gv/egiz/stal/service/impl/RequestBrokerSTALFactory.java | 5 +++++
2 files changed, 6 insertions(+)
(limited to 'BKUOnline')
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) {
+ }
}
--
cgit v1.2.3
From 43812f2c0d81eaba7e07ece82acf396ac35e2b5d Mon Sep 17 00:00:00 2001
From: clemenso
Date: Mon, 15 Sep 2008 18:03:25 +0000
Subject: encoding
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@41 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/pom.xml | 36 +-
.../stal/service/impl/STALRequestBrokerImpl.java | 9 +
.../gv/egiz/stal/service/impl/STALServiceImpl.java | 370 ++++++++++-----------
BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd | 3 +-
.../egiz/stal/service/STALRequestBrokerTest.java | 16 +
BKUOnline/src/test/resources/appletTest.html | 29 ++
6 files changed, 251 insertions(+), 212 deletions(-)
create mode 100644 BKUOnline/src/test/resources/appletTest.html
(limited to 'BKUOnline')
diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml
index bcaf0a70..d6d26a82 100644
--- a/BKUOnline/pom.xml
+++ b/BKUOnline/pom.xml
@@ -70,9 +70,6 @@
-->
com.sun.xml.ws
-
jaxws-rt
2.1.4
-
Tomcat60
@@ -128,20 +120,20 @@
-
+
maven-war-plugin
2.0.2
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 ef0bcdd6..727e8cf4 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
@@ -53,6 +53,7 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
protected List currentHashDataInput;
private boolean isHandlingRequest = false;
private boolean expectingResponse = false;
+ private boolean interrupted = false;
// private Object handleRequestCondition = new Object();
// private Object gotResponsesCondition = new Object();
// public STALRequestBrokerImpl() {
@@ -75,6 +76,9 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
*/
@Override
public synchronized List handleRequest(List requests) {
+ if (interrupted) {
+ return null;
+ }
try {
long beforeWait = System.currentTimeMillis();
while (isHandlingRequest) {
@@ -161,6 +165,7 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
return resps;
} catch (InterruptedException ex) {
log.warn("interrupt in handleRequest(): " + ex.getMessage());
+ interrupted = true;
return null;
}
}
@@ -172,6 +177,9 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
*/
@Override
public synchronized List nextRequest(List responses) {
+ if (interrupted) {
+ return null;
+ }
try {
if (responses != null && responses.size() > 0) {
if (!expectingResponse) {
@@ -244,6 +252,7 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
return reqs;
} catch (InterruptedException ex) {
log.warn("interrupt in nextRequest(): " + ex.getMessage());
+ interrupted = true;
return null;
}
}
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 f4cdc7d2..385888e9 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
@@ -56,206 +56,198 @@ import org.apache.commons.logging.LogFactory;
@WebService(endpointInterface = "at.gv.egiz.stal.service.STALPortType")
public class STALServiceImpl implements STALPortType {
- public static final String BINDING_PROCESSOR_MANAGER = "bindingProcessorManager";
- public static final String TEST_SESSION_ID = "TestSession";
- protected static final Log log = LogFactory.getLog(STALServiceImpl.class);
- @Resource
- WebServiceContext wsContext;
- protected IdFactory idF = IdFactory.getInstance();
-
- @Override
- public GetNextRequestResponseType getNextRequest(GetNextRequestType request) {
-
- // HttpSession session = ((HttpServletRequest)
- // mCtx.get(MessageContext.SERVLET_REQUEST)).getSession();
- String sessId = request.getSessionId();
- List responses = request.getResponse();
- if (log.isDebugEnabled()) {
- log.debug("Received GetNextRequest for session " + sessId + " containing " + responses.size() + " responses");
- }
-
- GetNextRequestResponseType response = new GetNextRequestResponseType();
- response.setSessionId(sessId);
+ public static final String BINDING_PROCESSOR_MANAGER = "bindingProcessorManager";
+ public static final Id TEST_SESSION_ID = IdFactory.getInstance().createId("TestSession");
+ protected static final Log log = LogFactory.getLog(STALServiceImpl.class);
+ @Resource
+ 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());
+
+ 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;
+ }
- if (TEST_SESSION_ID.equals(sessId)) {
- if (responses.size() > 0 && responses.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;
+ STALRequestBroker stal = getStal(sessionId);
+
+ if (stal != null) {
+ if (log.isDebugEnabled()) {
+ StringBuilder sb = new StringBuilder("Received GetNextRequest [");
+ sb.append(sessionId.toString());
+ sb.append("] containing ");
+ sb.append(responsesIn.size());
+ sb.append(" responses: ");
+ for (STALResponse respIn : responsesIn) {
+ sb.append(respIn);
+ sb.append(' ');
}
-
- // get Session Id
- Id sessionId = idF.createId(sessId);
- STALRequestBroker stal = getStal(sessionId);
-
- if (stal == null) {
- log.error("Failed to get STAL for session " + sessId + ", returning QuitRequest");
- response.getRequest().add(new QuitRequest());
- } else {
- List responsesIn = request.getResponse();
- for (STALResponse resp : responsesIn) {
- log.debug(resp);
- }
- List requestsOut = ((STALRequestBroker) stal).nextRequest(responsesIn);
- response.getRequest().addAll(requestsOut);
- if (log.isDebugEnabled()) {
- log.debug("Returning GetNextRequestResponse for session " + sessId + " containing " + requestsOut.size() + " requests");
- }
+ }
+
+ List requestsOut = ((STALRequestBroker) stal).nextRequest(responsesIn);
+ response.getRequest().addAll(requestsOut);
+
+ if (log.isDebugEnabled()) {
+ StringBuilder sb = new StringBuilder("Returning GetNextRequestResponse [");
+ sb.append(sessionId.toString());
+ sb.append("] containing ");
+ sb.append(requestsOut.size());
+ sb.append(" requests: ");
+ for (STALRequest reqOut : requestsOut) {
+ sb.append(reqOut);
+ sb.append(' ');
}
- return response;
+ }
+ } else {
+ log.error("Failed to get STAL for session " + sessionId + ", returning QuitRequest");
+ response.getRequest().add(new QuitRequest());
}
+ return response;
+ }
- @Override
- public GetHashDataInputResponseType getHashDataInput(
- GetHashDataInputType request) throws GetHashDataInputFault {
+ @Override
+ public GetHashDataInputResponseType getHashDataInput(GetHashDataInputType request) throws GetHashDataInputFault {
- String sessId = request.getSessionId();
- if (log.isDebugEnabled()) {
- log.debug("Received GetHashDataInputRequest for session " + sessId + " containing " + request.getReference().size() + " referencese");
- }
-
- // get Session Id
- Id sessionId = idF.createId(sessId);
- STALRequestBroker stal = getStal(sessionId);
-
- if (stal == null) {
- String msg = "Failed to get STAL for session " + sessId;
- log.error(msg);
- GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
- faultInfo.setErrorCode(1);
- faultInfo.setErrorMessage(msg);
- throw new GetHashDataInputFault(msg, faultInfo);
- } else {
-
- List hashDataInputs = stal.getHashDataInput();
-
- if (TEST_SESSION_ID.equals(sessId)) {
- log.debug("Received TestSession GetHashDataInput, setting dummy HashDataInputCallback");
-
- HashDataInput testHdi = new HashDataInput() {
+ Id sessionId = idF.createId(request.getSessionId());
- @Override
- public String getReferenceId() {
- return "hashDataInputId_" + TEST_SESSION_ID;
- }
+ if (log.isDebugEnabled()) {
+ log.debug("Received GetHashDataInputRequest for session " + sessionId + " containing " + request.getReference().size() + " reference(s)");
+ }
- @Override
- public String getMimeType() {
- return "text/plain";
- }
+ GetHashDataInputResponseType response = new GetHashDataInputResponseType();
+ response.setSessionId(sessionId.toString());
+
+ if (TEST_SESSION_ID.equals(sessionId)) {
+ log.debug("Received GetHashDataInput for session " + TEST_SESSION_ID + ", return DummyHashDataInput");
+ 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());
+ response.getReference().add(ref);
+ return response;
+ } else {
+ STALRequestBroker stal = getStal(sessionId);
+
+ if (stal != null) {
+ List hashDataInputs = stal.getHashDataInput();
+
+ if (hashDataInputs != null) {
+
+ Map hashDataIdMap = new HashMap();
+ for (HashDataInput hdi : hashDataInputs) {
+ if (log.isTraceEnabled()) {
+ log.trace("Provided HashDataInput for reference " + hdi.getReferenceId());
+ }
+ hashDataIdMap.put(hdi.getReferenceId(), hdi);
+ }
+
+ List reqRefs = request.getReference();
+ for (GetHashDataInputType.Reference reqRef : reqRefs) {
+ String reqRefId = reqRef.getID();
+ HashDataInput reqHdi = hashDataIdMap.get(reqRefId);
+ if (reqHdi == null) {
+ String msg = "Failed to resolve HashDataInput for reference " + reqRefId;
+ log.error(msg);
+ GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
+ faultInfo.setErrorCode(1);
+ faultInfo.setErrorMessage(msg);
+ throw new GetHashDataInputFault(msg, faultInfo);
+ }
- @Override
- public InputStream getHashDataInput() {
- byte[] hd = ("hashDataInput_" + TEST_SESSION_ID).getBytes();
- return new ByteArrayInputStream(hd);
- }
- };
- hashDataInputs = Collections.singletonList(testHdi);
+ InputStream hashDataIS = reqHdi.getHashDataInput();
+ if (hashDataIS == null) {
+ //HashDataInput not cached?
+ String msg = "Failed to obtain HashDataInput for reference " + reqRefId + ", reference not cached";
+ log.error(msg);
+ GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
+ faultInfo.setErrorCode(1);
+ faultInfo.setErrorMessage(msg);
+ throw new GetHashDataInputFault(msg, faultInfo);
}
-
-
- if (hashDataInputs != null) {
-
- Map hashDataIdMap = new HashMap();
- for (HashDataInput hdi : hashDataInputs) {
- if (log.isTraceEnabled()) {
- log.trace("Provided HashDataInput for reference " + hdi.getReferenceId());
- }
- hashDataIdMap.put(hdi.getReferenceId(), hdi);
- }
-
- GetHashDataInputResponseType response = new GetHashDataInputResponseType();
- response.setSessionId(sessId);
-
- List reqRefs = request.getReference();
- for (GetHashDataInputType.Reference reqRef : reqRefs) {
- String reqRefId = reqRef.getID();
- HashDataInput reqHdi = hashDataIdMap.get(reqRefId);
- if (reqHdi == null) {
- String msg = "Failed to resolve HashDataInput for reference " + reqRefId;
- log.error(msg);
- GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
- faultInfo.setErrorCode(1);
- faultInfo.setErrorMessage(msg);
- throw new GetHashDataInputFault(msg, faultInfo);
- }
-
- InputStream hashDataIS = reqHdi.getHashDataInput();
- if (hashDataIS == null) {
- //HashDataInput not cached?
- String msg = "Failed to obtain HashDataInput for reference " + reqRefId + ", reference not cached";
- log.error(msg);
- GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
- faultInfo.setErrorCode(1);
- faultInfo.setErrorMessage(msg);
- throw new GetHashDataInputFault(msg, faultInfo);
- }
- ByteArrayOutputStream baos = null;
- try {
- if(log.isDebugEnabled()) {
- log.debug("Resolved HashDataInput " + reqRefId + " (" + reqHdi.getMimeType() + ")");
- }
- baos = new ByteArrayOutputStream(hashDataIS.available());
- int c;
- while ((c = hashDataIS.read()) != -1) {
- baos.write(c);
- }
- GetHashDataInputResponseType.Reference ref = new GetHashDataInputResponseType.Reference();
- ref.setID(reqRefId);
- ref.setMimeType(reqHdi.getMimeType());
- ref.setValue(baos.toByteArray());
- response.getReference().add(ref);
- } catch (IOException ex) {
- String msg = "Failed to get HashDataInput for reference " + reqRefId;
- log.error(msg, ex);
- GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
- faultInfo.setErrorCode(1);
- faultInfo.setErrorMessage(msg);
- throw new GetHashDataInputFault(msg, faultInfo, ex);
- } finally {
- try {
- baos.close();
- } catch (IOException ex) {
- }
- }
- }
- return response;
- } else {
- String msg = "Failed to resolve any HashDataInputs for session " + sessId;
- log.error(msg);
- GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
- faultInfo.setErrorCode(1);
- faultInfo.setErrorMessage(msg);
- throw new GetHashDataInputFault(msg, faultInfo);
+ ByteArrayOutputStream baos = null;
+ try {
+ if (log.isDebugEnabled()) {
+ log.debug("Resolved HashDataInput " + reqRefId + " (" + reqHdi.getMimeType() + ";charset=" + reqHdi.getEncoding() + ")");
+ }
+ baos = new ByteArrayOutputStream(hashDataIS.available());
+ int c;
+ while ((c = hashDataIS.read()) != -1) {
+ baos.write(c);
+ }
+ GetHashDataInputResponseType.Reference ref = new GetHashDataInputResponseType.Reference();
+ ref.setID(reqRefId);
+ ref.setMimeType(reqHdi.getMimeType());
+ ref.setEncoding(reqHdi.getEncoding());
+ ref.setValue(baos.toByteArray());
+ response.getReference().add(ref);
+ } catch (IOException ex) {
+ String msg = "Failed to get HashDataInput for reference " + reqRefId;
+ log.error(msg, ex);
+ GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
+ faultInfo.setErrorCode(1);
+ faultInfo.setErrorMessage(msg);
+ throw new GetHashDataInputFault(msg, faultInfo, ex);
+ } finally {
+ try {
+ baos.close();
+ } catch (IOException ex) {
+ }
}
+ }
+ return response;
+ } else {
+ String msg = "Failed to resolve any HashDataInputs for session " + sessionId;
+ log.error(msg);
+ GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
+ faultInfo.setErrorCode(1);
+ faultInfo.setErrorMessage(msg);
+ throw new GetHashDataInputFault(msg, faultInfo);
}
+ } else {
+ String msg = "Failed to get STAL for session " + sessionId;
+ log.error(msg);
+ GetHashDataInputFaultType faultInfo = new GetHashDataInputFaultType();
+ faultInfo.setErrorCode(1);
+ faultInfo.setErrorMessage(msg);
+ throw new GetHashDataInputFault(msg, faultInfo);
+ }
}
-
- private STALRequestBroker getStal(Id sessionId) {
-// log.warn("RETURNING DUMMY STAL REQUEST BROKER");
-// return new STALRequestBrokerImpl();
-
- 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 : (STALRequestBroker) bp.getSTAL();
- }
+ }
+
+ private STALRequestBroker getStal(Id 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 : (STALRequestBroker) bp.getSTAL();
+ }
}
diff --git a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd
index c4e48e2c..b3c4841a 100644
--- a/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd
+++ b/BKUOnline/src/main/webapp/WEB-INF/wsdl/stal.xsd
@@ -120,7 +120,8 @@
-
+
+
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 62d6f8a6..2bcc96ae 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
@@ -111,6 +111,10 @@ public class STALRequestBrokerTest {
public InputStream getHashDataInput() {
return new ByteArrayInputStream("hashdatainput1234".getBytes());
}
+ @Override
+ public String getEncoding() {
+ return "UTF-8";
+ }
};
r1.setHashDataInput(Collections.singletonList(hdi));
requests.add(r1);
@@ -152,6 +156,10 @@ public class STALRequestBrokerTest {
public InputStream getHashDataInput() {
return new ByteArrayInputStream("hashdatainput1234".getBytes());
}
+ @Override
+ public String getEncoding() {
+ return "UTF-8";
+ }
};
r1.setHashDataInput(Collections.singletonList(hdi));
requests.add(r1);
@@ -207,6 +215,10 @@ public class STALRequestBrokerTest {
public InputStream getHashDataInput() {
return new ByteArrayInputStream("hashdatainput1234".getBytes());
}
+ @Override
+ public String getEncoding() {
+ return "UTF-8";
+ }
};
r1.setHashDataInput(Collections.singletonList(hdi));
requests.add(r1);
@@ -231,6 +243,10 @@ public class STALRequestBrokerTest {
public InputStream getHashDataInput() {
return new ByteArrayInputStream("hashdatainput6789 ".getBytes());
}
+ @Override
+ public String getEncoding() {
+ return "UTF-8";
+ }
};
r2.setHashDataInput(Collections.singletonList(hdi2));
requests2.add(r2);
diff --git a/BKUOnline/src/test/resources/appletTest.html b/BKUOnline/src/test/resources/appletTest.html
new file mode 100644
index 00000000..7e4a17cc
--- /dev/null
+++ b/BKUOnline/src/test/resources/appletTest.html
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
--
cgit v1.2.3
From 9ca314eced8a73f58282684597468f98621ac502 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Fri, 19 Sep 2008 12:17:47 +0000
Subject: git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@53
8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../at/gv/egiz/bku/online/conf/SpringConfigurator.java | 17 +++++++++++++++++
.../at/gv/egiz/bku/online/conf/defaultConf.properties | 3 +++
2 files changed, 20 insertions(+)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
index 9fe91708..54dbfdea 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
@@ -70,6 +70,8 @@ public class SpringConfigurator extends Configurator implements
} catch (IOException e) {
log.error("Cannot load config", e);
}
+ } else {
+ log.warn("Cannot load properties, resource: "+resource);
}
}
@@ -91,8 +93,23 @@ public class SpringConfigurator extends Configurator implements
super.configure();
configureSSL();
configureVersion();
+ configureNetwork();
}
+ public void configureNetwork() {
+ String proxyHost = getProperty("HTTPProxyHost");
+ String proxyPort = getProperty("HTTPProxyPort");
+ if (proxyPort == null) {
+ proxyPort = "80";
+ }
+ if (proxyHost != null) {
+ log.debug("Setting proxy server to: "+proxyHost+":"+proxyPort);
+ System.setProperty("http.proxyHost", proxyHost);
+ System.setProperty("http.proxyPort", proxyPort);
+ }
+ log.debug("No proxy specified");
+ }
+
private Set getCACerts() throws IOException,
CertificateException {
Set caCerts = new HashSet();
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
index cdc2bfad..42b0d93e 100644
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
@@ -41,3 +41,6 @@ SSL.sslProtocol=TLS
ValidateHashDataInputs=true
+
+HTTPProxyHost=taranis.iaik.tugraz.at
+HTTPProxyPort=8888
--
cgit v1.2.3
From 1c4df47223a6d655b9fb7f46f807171ceda07ba7 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Tue, 23 Sep 2008 12:09:10 +0000
Subject: bitte warten...
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@56 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/expired.html | 23 ++++++++++++-----------
1 file changed, 12 insertions(+), 11 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/expired.html b/BKUOnline/src/main/webapp/expired.html
index 67ca94bc..2bb961f5 100644
--- a/BKUOnline/src/main/webapp/expired.html
+++ b/BKUOnline/src/main/webapp/expired.html
@@ -14,15 +14,16 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-
-
-
-
-Session Expired
-
-
-
- Ihre Sitzung ist abgelaufen. Ein neuer BKU request kann im Requestformular erstellt werden.
-
-
+
+
+
+
+Session Expired
+
+
+
+ Ihre Sitzung ist abgelaufen.
+
+
+
\ No newline at end of file
--
cgit v1.2.3
From efcb89d95c00dab464f6535040c3a741f8eff693 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Tue, 23 Sep 2008 12:25:57 +0000
Subject: added mocca logo to appletpage
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@57 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/appletPage.jsp | 20 ++++----------------
BKUOnline/src/main/webapp/img/favicon.ico | Bin 0 -> 4286 bytes
BKUOnline/src/main/webapp/img/mocca-t_s.png | Bin 0 -> 8976 bytes
3 files changed, 4 insertions(+), 16 deletions(-)
create mode 100644 BKUOnline/src/main/webapp/img/favicon.ico
create mode 100644 BKUOnline/src/main/webapp/img/mocca-t_s.png
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/appletPage.jsp b/BKUOnline/src/main/webapp/appletPage.jsp
index fdd7072f..041591f3 100644
--- a/BKUOnline/src/main/webapp/appletPage.jsp
+++ b/BKUOnline/src/main/webapp/appletPage.jsp
@@ -20,7 +20,8 @@
-Applet BKU Test
+MOCCA Appletpage
+
@@ -46,20 +47,7 @@
}
-
+
+Powered by
diff --git a/BKUOnline/src/main/webapp/img/favicon.ico b/BKUOnline/src/main/webapp/img/favicon.ico
new file mode 100644
index 00000000..ddfb65b0
Binary files /dev/null and b/BKUOnline/src/main/webapp/img/favicon.ico differ
diff --git a/BKUOnline/src/main/webapp/img/mocca-t_s.png b/BKUOnline/src/main/webapp/img/mocca-t_s.png
new file mode 100644
index 00000000..bbf27a66
Binary files /dev/null and b/BKUOnline/src/main/webapp/img/mocca-t_s.png differ
--
cgit v1.2.3
From 43e65478d6aeb05b5869b089ce1fa0566da1e224 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Tue, 23 Sep 2008 13:09:22 +0000
Subject: git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@58
8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/img/favicon.ico | Bin 4286 -> 2238 bytes
1 file changed, 0 insertions(+), 0 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/img/favicon.ico b/BKUOnline/src/main/webapp/img/favicon.ico
index ddfb65b0..e2a24bb0 100644
Binary files a/BKUOnline/src/main/webapp/img/favicon.ico and b/BKUOnline/src/main/webapp/img/favicon.ico differ
--
cgit v1.2.3
From fd64382177af6fa18d9113b09c9b5b071324efb2 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Wed, 24 Sep 2008 13:16:05 +0000
Subject: src cleanup (removed commented code)
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@64 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../stal/service/impl/STALRequestBrokerImpl.java | 378 +--------------------
1 file changed, 9 insertions(+), 369 deletions(-)
(limited to 'BKUOnline')
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 727e8cf4..6160c71e 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
@@ -47,24 +47,13 @@ import org.apache.commons.logging.LogFactory;
public class STALRequestBrokerImpl implements STALRequestBroker {
private static final Log log = LogFactory.getLog(STALRequestBrokerImpl.class);
-// protected RequestResponseBroker broker;
protected List requests = null;
protected List responses = null;
protected List currentHashDataInput;
private boolean isHandlingRequest = false;
private boolean expectingResponse = false;
private boolean interrupted = false;
-// private Object handleRequestCondition = new Object();
-// private Object gotResponsesCondition = new Object();
-// public STALRequestBrokerImpl() {
-// broker = new RequestResponseBroker();
-// new Thread(handler).start();
-// }
-// @Override
-// public HashDataInputCallback getCurrentHashDataInputCallback() {
-// return broker.getCurrentHashDataInputCallback();
-// }
/**
* Produce requests (and HashDataInputCallback) and wait for responses.
* The next thread may enter once we consumed the responses.
@@ -83,15 +72,11 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
long beforeWait = System.currentTimeMillis();
while (isHandlingRequest) {
log.trace("waiting to produce request");
-// try {
wait(TIMEOUT_MS);
if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
log.warn("timeout while waiting to produce request");
return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000));
}
-// } catch (InterruptedException ex) {
-// log.warn("interrupt while waiting to produce request: " + ex.getMessage());
-// }
}
log.trace("produce request");
isHandlingRequest = true;
@@ -104,30 +89,9 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
currentHashDataInput = ((SignRequest) request).getHashDataInput();
break;
} else if (request instanceof QuitRequest) {
- //alternative1:
- //for QUIT requests, do not wait for responses, but for request consumation
- // (i.e. set isHandlingReq to false once QUIT is consumed)
log.trace("Received QuitRequest, do not wait for responses.");
log.trace("notifying request consumers");
notify();
- //alternative2:
- //wait for QUIT to be consumed
- // (i.e. notify me once QUIT is consumed)
-// while (this.requests != null) {
-// try {
-// long beforeWait = System.currentTimeMillis();
-// wait(TIMEOUT_MS);
-// if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
-// log.warn("timeout while waiting for QUIT to be consumed");
-// this.requests = null;
-// isHandlingRequest = false;
-// return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000));
-// }
-// } catch (InterruptedException ex) {
-// log.warn("interrupt while waiting for QUIT to be consumed: " + ex.getMessage());
-// }
-// }
-// isHandlingRequest = false;
return new ArrayList();
} else if (log.isTraceEnabled()) {
log.trace("Received STAL request: " + request.getClass().getName());
@@ -139,7 +103,6 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
beforeWait = System.currentTimeMillis();
while (this.responses == null) {
log.trace("waiting to consume response");
-// try {
wait(TIMEOUT_MS);
if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
log.warn("timeout while waiting to consume response");
@@ -148,21 +111,18 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
isHandlingRequest = false;
return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000));
}
-// } catch (InterruptedException ex) {
-// log.warn("interrupt while waiting to consume response: " + ex.getMessage());
-// }
}
log.trace("consuming responses");
- List resps = responses;
- responses = null;
- log.trace("notifying response producers");
- notify();
+ List resps = responses;
+ responses = null;
+ log.trace("notifying response producers");
+ notify();
- isHandlingRequest = false;
- log.trace("notifying request producers");
- notify();
+ isHandlingRequest = false;
+ log.trace("notifying request producers");
+ notify();
- return resps;
+ return resps;
} catch (InterruptedException ex) {
log.warn("interrupt in handleRequest(): " + ex.getMessage());
interrupted = true;
@@ -189,15 +149,11 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
long beforeWait = System.currentTimeMillis();
while (this.responses != null) {
log.trace("waiting to produce response");
-// try {
wait(TIMEOUT_MS);
if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
log.warn("timeout while waiting to produce response");
return Collections.singletonList((STALRequest) new QuitRequest());
}
-// } catch (InterruptedException ex) {
-// log.warn("interrupt while waiting to produce response: " + ex.getMessage());
-// }
}
log.trace("produce response");
this.responses = responses;
@@ -211,7 +167,6 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
notify();
} else {
if (expectingResponse) {
- // while (expectingResponse) wait();
log.warn("No expected response received in nextRequest()");
return Collections.singletonList((STALRequest) new QuitRequest());
}
@@ -221,33 +176,21 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
long beforeWait = System.currentTimeMillis();
while (this.requests == null) {
log.trace("waiting to consume request");
-// try {
wait(TIMEOUT_MS);
if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
log.warn("timeout while waiting to consume request");
return Collections.singletonList((STALRequest) new QuitRequest());
}
-// } catch (InterruptedException ex) {
-// log.warn("interrupt while waiting to consume request: " + ex.getMessage());
-// }
}
log.trace("consume request");
List reqs = requests;
- //TODO check if QUIT and set isHandlingReq to false here?
- // (rename isHandlingReq -> produce)
- // handleReq(QUIT) doesn't wait() and returns immediately
- // cf. handleReq(QUIT)
requests = null;
- //no need to notify; request producer is waiting for isHandlingRequest
- //(alt2: the QUIT producer returned immediately and didn't notify)
- //(alt1: the QUIT producer is waiting for notification on QUIT consumption)
if (reqs.size() > 0 && reqs.get(0) instanceof QuitRequest) {
isHandlingRequest = false;
log.trace("consumed QUIT, notifying request producers");
notify();
log.trace("expecting no response in next nextRequest()");
expectingResponse = false;
- //notify no-response request consumers
}
return reqs;
} catch (InterruptedException ex) {
@@ -262,310 +205,7 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
log.trace("return " + currentHashDataInput.size() + " current HashDataInput(s) ");
return currentHashDataInput;
}
-// /**
-// * Causes the calling thread to sleep until response is passed via nextRequest()
-// * (except for QUIT request, which returns immediately).
-// * The requestList may contain at most one signRequest.
-// * The signRequest's signedRefCallback is stored until a response to the signRequest is provided (2nd nextRequest() call),
-// * i.e. until handleRequest() returns.
-// *
-// * @param aRequestList
-// * @return
-// * @pre requestList contains at most one signRequest
-// */
-// @Override
-// public List handleRequest(List requestList) {
-// try {
-// if (log.isTraceEnabled()) {
-// log.trace("HandleRequest (" + requestList.size() + " requests)");
-// }
-//
-// broker.produceRequests(requestList);
-//
-// // QUIT returns immediately
-// if (requestList.size() == 1 && requestList.get(0) instanceof QuitRequest) {
-// log.trace("Received QUIT request, do not wait for responses.");
-// return new ArrayList();
-// }
-// return broker.consumeResponses();
-// } catch (InterruptedException ex) {
-// log.error("Interrupted while handling STAL request list: " + ex.getMessage());
-// return Collections.singletonList((STALResponse) new ErrorResponse());
-// } catch (TimeoutException ex) {
-// log.error("Timeout during handle request: " + ex.getMessage());
-// ErrorResponse err = new ErrorResponse();
-// err.setErrorCode(ERR_6000);
-// return Collections.singletonList((STALResponse) err);
-// }
-// }
-//
-// @Override
-// public void setResponse(List responses) {
-// try {
-//// if (responses != null && responses.size() > 0) {
-//// List stalResponses = translateResponses(responses);
-// broker.produceResponses(responses);
-//// } else {
-//// log.trace("Received emtpy responses list, do not add.");
-//// }
-// } catch (InterruptedException ex) {
-// log.error("Interrupted while setting STAL response: " + ex.getMessage());
-//// broker.interrupt(new ErrorResponse());
-// } catch (TimeoutException ex) {
-// log.error("Timeout during setResponse: " + ex.getMessage());
-// }
-// }
-//
-// /**
-// * TODO split in nextRequest(void) and setResponses(responses)
-// *
-// * Translate (possibly empty) STAL-WS response list to STAL responses and
-// * wait until request(s) are available and translate to STAL-WS requests.
-// * @param prevResponse if null or zero-length, they are not passed to the handler
-// * @return
-// */
-// @Override
-// public List nextRequest() { //List responses) {
-// try {
-//// if (responses != null && responses.size() > 0) {
-//// List stalResponses = translateResponses(responses);
-//// broker.produceResponses(stalResponses);
-//// } else {
-//// log.trace("Received emtpy responses list, do not add.");
-//// }
-//
-//// List extends STALRequest> stalRequests = broker.consumeRequests();
-//// List requests = translateRequests(stalRequests);
-// return broker.consumeRequests();
-//// } catch (InterruptedException ex) {
-//// log.error("Interrupted while requesting next STAL request: " + ex.getMessage());
-//// return Collections.singletonList((STALResponse) new ErrorResponse());
-// } catch (InterruptedException ex) {
-// log.error("Interrupted while requesting next STAL request: " + ex.getMessage());
-//// broker.interrupt(new ErrorResponse());
-// return new ArrayList();
-// } catch (TimeoutException ex) {
-// log.error("Timeout during nextRequest: " + ex.getMessage());
-// return new ArrayList();
-// }
-// }
-//
-//// @Override
-//// public void interruptRequestHandling(ErrorResponseType error) {
-//// if (log.isTraceEnabled()) {
-//// log.trace("Received Error: " + error.getErrorMessage());
-//// }
-//// broker.interrupt(new ErrorResponse(error.getErrorCode()));
-//// }
-//
-// //TODO
-//// private List translateRequests(List extends STALRequest> stalRequests) {
-//// List requests = new ArrayList(stalRequests.size());
-//// for (STALRequest stalRequest : stalRequests) {
-//// if (stalRequest instanceof InfoboxReadRequest) {
-//// InfoboxReadRequestType req = new InfoboxReadRequestType();
-//// req.setInfoboxIdentifier(((InfoboxReadRequest) stalRequest).getInfoboxIdentifier());
-//// log.warn("TODO consider domain identifier for infobox " + req.getInfoboxIdentifier());
-//// req.setDomainIdentifier("TODO");
-//// requests.add(req);
-//// } else if (stalRequest instanceof SignRequest) {
-//// //TODO
-//// //remember current sign request for getSignedReferences()
-//// throw new UnsupportedOperationException("SignRequest unsupported");
-//// } else if (stalRequest instanceof QuitRequest) {
-//// requests.add(new QuitRequestType());
-//// } else {
-//// log.error("Unknown STAL request: " + stalRequest.getClass().getName());
-//// }
-//// }
-//// return requests;
-//// }
-//
-//// private List translateResponses(List responses) {
-//// List stalResponses = new ArrayList(responses.size());
-//// for (ResponseType response : responses) {
-//// if (response instanceof InfoboxReadResponseType) {
-//// byte[] infoboxValue = ((InfoboxReadResponseType) response).getInfoboxValue();
-//// stalResponses.add(new InfoboxReadResponse(infoboxValue));
-//// } else if (response instanceof SignResponseType) {
-//// byte[] signatureValue = ((SignResponseType) response).getSignatureValue();
-//// stalResponses.add(new SignResponse(signatureValue));
-//// } else if (response instanceof ErrorResponseType) {
-//// int errorCode = ((ErrorResponseType) response).getErrorCode();
-//// log.warn("TODO consider error msg: " + ((ErrorResponseType) response).getErrorMessage());
-//// stalResponses.add(new ErrorResponse(errorCode));
-//// } else {
-//// log.error("Unknown STAL service response " + response.getId() + ": " + response.getClass().getName());
-//// }
-//// }
-//// return stalResponses;
-//// }
-// /**
-// * synchronize on this, not on request/response lists since they are nulled
-// */
-// // protected since outer handler field is protected
-// protected class RequestResponseBroker { //implements Runnable {
-//
-// protected List requests = null;
-// protected List responses = null;
-// protected HashDataInputCallback currentHashDataInputCallback;
-//
-//// @Override
-//// public void run() {
-//// while (true) {
-//// ;
-//// }
-//// //TODO handler lifecycle in run()?
-//// }
-// /**
-// * wait until requests are consumed,
-// * produce requests, remember sigRefCallback and notify consumer
-// * (no need for synchronized?)
-// * @param requests
-// */
-// public synchronized void produceRequests(List requests) throws InterruptedException, TimeoutException {
-//// synchronized (requests) {
-//
-// // requests is null, since there's only one producer thread calling handleRequests()
-// // and handleRequest() returns only if nextRequest() was called
-// while (this.requests != null) {
-//// requests.wait();
-// long before = System.currentTimeMillis();
-// log.trace("waiting to produce requests ...");
-// wait(); //TIMEOUT_MS);
-// if (System.currentTimeMillis() - before >= TIMEOUT_MS) {
-// log.error("Timeout while waiting to produce requests.");
-// throw new TimeoutException();
-// }
-// }
-// log.trace("producing requests");
-// this.requests = requests;
-// // getSignedReferences does not produce responses,
-// // so the command thread will not continue (and no further signRequest can possibly be produced)
-// // once the ws-client sends nextRequest with responses to the signRequest, the callback is invalidated
-//
-// // reset callback if for some reason produceResponse() wasn't called
-// currentHashDataInputCallback = null;
-// for (STALRequest request : requests) {
-// if (request instanceof SignRequest) {
-// log.trace("keep hashdatainput callback");
-// currentHashDataInputCallback = ((SignRequest) request).getHashDataInput();
-// break;
-// }
-// }
-//
-//// requests.notify();
-// log.trace("notifying request consumers (TODO not only consumers)");
-// notify();
-//// }
-// }
-//
-// /**
-// * wait until requests are produced and consume them
-// * @return
-// */
-// public synchronized List consumeRequests() throws InterruptedException, TimeoutException {
-// List retVal = null;
-//// synchronized (requests) {
-// while (requests == null) {
-//// requests.wait();
-// long before = System.currentTimeMillis();
-// log.trace("waiting to consumer requests ...");
-// wait(); //TIMEOUT_MS);
-// if (System.currentTimeMillis() - before >= TIMEOUT_MS) {
-// log.error("Timeout while waiting to consume requests.");
-// throw new TimeoutException();
-// }
-// }
-// log.trace("consuming requests");
-// retVal = requests;
-// requests = null;
-//// }
-// log.trace("???notify request producers???");
-// return retVal;
-// }
-//
-// /**
-// * wait until previous responses are consumed,
-// * produce responses and notify consumer
-// * @param responses
-// */
-// public synchronized void produceResponses(List responses) throws InterruptedException, TimeoutException {
-//// synchronized (responses) {
-// while (this.responses != null) {
-//// responses.wait();
-// long before = System.currentTimeMillis();
-// log.trace("waiting to produce responses ...");
-// wait(); //TIMEOUT_MS);
-// if (System.currentTimeMillis() - before >= TIMEOUT_MS) {
-// log.error("Timeout while waiting to produce responses.");
-// throw new TimeoutException();
-// }
-// }
-// log.trace("producing responses");
-// this.responses = responses;
-// //invalidate sigrefcallback (from now on handleRequest() may be called, producing new requests)
-// //make sure the provided responses are for the corresponding signrequest
-// if (this.requests == null) {//requests already consumed=>responses correspond to these
-// log.trace("resetting current hashdatainput");
-// currentHashDataInputCallback = null;
-// }
-//// responses.notify();
-// log.trace("notify response consumers (TODO only consumers?)");
-// notify();
-//// }
-// }
-//
-// /**
-// * wait until responses are available, consume them
-// * @return
-// * @throws java.lang.Exception
-// */
-// public synchronized List consumeResponses() throws InterruptedException, TimeoutException {
-// List retVal = null;
-//// synchronized (responses) {
-// while (responses == null) {
-//// responses.wait();
-// long before = System.currentTimeMillis();
-// log.trace("waiting to consume responses ...");
-// wait(); //TIMEOUT_MS);
-// if (System.currentTimeMillis() - before >= TIMEOUT_MS) {
-// log.error("Timeout while waiting to consume responses.");
-// throw new TimeoutException();
-// }
-// }
-// log.trace("consuming responses");
-// retVal = responses;
-// responses = null;
-//// }
-// log.trace("???notify response producers???");
-// return retVal;
-// }
-//
-// /**
-// * get the signrefcallback until handleRequest() is called the next time.
-// * @return null if last request was not a signRequest
-// */
-// public synchronized HashDataInputCallback getCurrentHashDataInputCallback() {
-// log.trace("obtain current hashdatainput");
-// return currentHashDataInputCallback;
-// }
-// /**
-// * add the error to responses and notify (response-) consumers
-// * @param error
-// */
-//// public synchronized void interrupt(ErrorResponse error) {
-////// synchronized (responses) {
-//// if (responses == null) {
-//// responses = Collections.singletonList((STALResponse) error);
-//// } else {
-//// responses.add(error);
-//// }
-////// responses.notify();
-//// notify();
-////// }
-//// }
-// }
+
@Override
public void setLocale(Locale locale) {
// TODO Auto-generated method stub
--
cgit v1.2.3
From 6604a2b1fa4ea2f506b5a997b73efe3ef1cae9d9 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Wed, 24 Sep 2008 16:04:21 +0000
Subject: remove isHandlingRequest
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@68 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../stal/service/impl/STALRequestBrokerImpl.java | 40 +++++++++++-----------
1 file changed, 20 insertions(+), 20 deletions(-)
(limited to 'BKUOnline')
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 6160c71e..7897f984 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
@@ -50,10 +50,10 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
protected List requests = null;
protected List responses = null;
protected List currentHashDataInput;
- private boolean isHandlingRequest = false;
+// private boolean isHandlingRequest = false;
private boolean expectingResponse = false;
private boolean interrupted = false;
-
+
/**
* Produce requests (and HashDataInputCallback) and wait for responses.
* The next thread may enter once we consumed the responses.
@@ -69,17 +69,17 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
return null;
}
try {
- long beforeWait = System.currentTimeMillis();
- while (isHandlingRequest) {
- log.trace("waiting to produce request");
- wait(TIMEOUT_MS);
- if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
- log.warn("timeout while waiting to produce request");
- return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000));
- }
- }
+// long beforeWait = System.currentTimeMillis();
+// while (isHandlingRequest) {
+// log.trace("waiting to produce request");
+// wait(TIMEOUT_MS);
+// if (System.currentTimeMillis() - beforeWait >= TIMEOUT_MS) {
+// log.warn("timeout while waiting to produce request");
+// return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000));
+// }
+// }
log.trace("produce request");
- isHandlingRequest = true;
+// isHandlingRequest = true;
this.requests = requests;
currentHashDataInput = null;
@@ -100,7 +100,7 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
log.trace("notifying request consumers");
notify();
- beforeWait = System.currentTimeMillis();
+ long beforeWait = System.currentTimeMillis();
while (this.responses == null) {
log.trace("waiting to consume response");
wait(TIMEOUT_MS);
@@ -108,7 +108,7 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
log.warn("timeout while waiting to consume response");
this.requests = null;
currentHashDataInput = null;
- isHandlingRequest = false;
+// isHandlingRequest = false;
return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000));
}
}
@@ -118,9 +118,9 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
log.trace("notifying response producers");
notify();
- isHandlingRequest = false;
- log.trace("notifying request producers");
- notify();
+// isHandlingRequest = false;
+// log.trace("notifying request producers");
+// notify();
return resps;
} catch (InterruptedException ex) {
@@ -186,9 +186,9 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
List reqs = requests;
requests = null;
if (reqs.size() > 0 && reqs.get(0) instanceof QuitRequest) {
- isHandlingRequest = false;
- log.trace("consumed QUIT, notifying request producers");
- notify();
+// isHandlingRequest = false;
+// log.trace("consumed QUIT, notifying request producers");
+// notify();
log.trace("expecting no response in next nextRequest()");
expectingResponse = false;
}
--
cgit v1.2.3
From 55302f2bbe65d28a21d61822f3c316a7fafd1eff Mon Sep 17 00:00:00 2001
From: wbauer
Date: Wed, 24 Sep 2008 16:05:02 +0000
Subject: git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@69
8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
index 42b0d93e..ec7d932c 100644
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
@@ -42,5 +42,5 @@ SSL.sslProtocol=TLS
ValidateHashDataInputs=true
-HTTPProxyHost=taranis.iaik.tugraz.at
-HTTPProxyPort=8888
+#HTTPProxyHost=taranis.iaik.tugraz.at
+#HTTPProxyPort=8888
--
cgit v1.2.3
From e21dd5249d5fa19c5619847922cf8cdea95e3145 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Thu, 25 Sep 2008 07:29:47 +0000
Subject: improved robustness of http binding processor
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@70 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java | 2 +-
BKUOnline/src/main/webapp/META-INF/MANIFEST.MF | 7 +++++--
2 files changed, 6 insertions(+), 3 deletions(-)
(limited to 'BKUOnline')
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 385888e9..d3d6c8db 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
@@ -248,6 +248,6 @@ public class STALServiceImpl implements STALPortType {
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 : (STALRequestBroker) bp.getSTAL();
+ return (bp == null) ? null : (bp.isFinished() ? null : (STALRequestBroker) bp.getSTAL());
}
}
diff --git a/BKUOnline/src/main/webapp/META-INF/MANIFEST.MF b/BKUOnline/src/main/webapp/META-INF/MANIFEST.MF
index 5e949512..ca7c7604 100644
--- a/BKUOnline/src/main/webapp/META-INF/MANIFEST.MF
+++ b/BKUOnline/src/main/webapp/META-INF/MANIFEST.MF
@@ -1,3 +1,6 @@
Manifest-Version: 1.0
-Class-Path:
-
+Archiver-Version: Plexus Archiver
+Created-By: Apache Maven
+Built-By: wbauer
+Build-Jdk: 1.6.0_10-beta
+Implementation-Build: 1.0-SNAPSHOT-r31
\ No newline at end of file
--
cgit v1.2.3
From cc03466f753afb6a1feb2f203966ba0672ddae95 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Thu, 25 Sep 2008 13:59:42 +0000
Subject: webservice timeout
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@71 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../at/gv/egiz/stal/service/impl/RequestBrokerSTALFactory.java | 8 +++++++-
.../main/java/at/gv/egiz/stal/service/impl/STALRequestBroker.java | 2 +-
2 files changed, 8 insertions(+), 2 deletions(-)
(limited to 'BKUOnline')
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 8e61230c..bb552002 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
@@ -32,12 +32,18 @@ import at.gv.egiz.stal.STALFactory;
*/
public class RequestBrokerSTALFactory implements STALFactory {
+ private long timeout;
+
@Override
public STAL createSTAL() {
- return new STALRequestBrokerImpl();
+ return new STALRequestBrokerImpl(timeout);
}
@Override
public void setLocale(Locale locale) {
}
+
+ public void setTimeout(long millisec) {
+ timeout = millisec;
+ }
}
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 6aabdae4..560282ac 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
@@ -33,7 +33,7 @@ import java.util.List;
public interface STALRequestBroker extends STAL {
public static final int ERR_6000 = 6000;
- public static final long TIMEOUT_MS = 1000*60*3; //3mn
+ public static final long DEFAULT_TIMEOUT_MS = 1000*60*5; //5mn
public List nextRequest(List response);
--
cgit v1.2.3
From ef884e591c38023d980a158f29ec1d71ed256a41 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Thu, 25 Sep 2008 16:31:18 +0000
Subject: consume/produce
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@72 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/pom.xml | 7 +
.../stal/service/impl/STALRequestBrokerImpl.java | 160 +++++++++++++--------
.../egiz/stal/service/STALRequestBrokerTest.java | 78 +++++++++-
3 files changed, 179 insertions(+), 66 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/pom.xml b/BKUOnline/pom.xml
index d6d26a82..e699d16b 100644
--- a/BKUOnline/pom.xml
+++ b/BKUOnline/pom.xml
@@ -120,6 +120,13 @@
+
-
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;
}
--
cgit v1.2.3
From 7d3f6235a46f70323defa9910da240e61ca684b3 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Wed, 1 Oct 2008 07:30:55 +0000
Subject: Moved main parts of the configuration to bkucommon
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@78 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../accesscontroller/SpringSecurityManager.java | 3 +-
.../at/gv/egiz/bku/online/conf/Configurator.java | 98 ----------
.../egiz/bku/online/conf/SpringConfigurator.java | 209 +++++----------------
.../gv/egiz/bku/online/webapp/ResultServlet.java | 6 +-
.../egiz/bku/online/webapp/SpringBKUServlet.java | 14 +-
.../gv/egiz/bku/online/conf/defaultConf.properties | 5 +
.../src/main/webapp/WEB-INF/applicationContext.xml | 4 +-
7 files changed, 64 insertions(+), 275 deletions(-)
delete mode 100644 BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/accesscontroller/SpringSecurityManager.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/accesscontroller/SpringSecurityManager.java
index 3d0df8c4..5795478b 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/accesscontroller/SpringSecurityManager.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/accesscontroller/SpringSecurityManager.java
@@ -25,7 +25,7 @@ import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
import at.gv.egiz.bku.accesscontroller.SecurityManagerFacade;
-import at.gv.egiz.bku.online.conf.Configurator;
+import at.gv.egiz.bku.conf.Configurator;
public class SpringSecurityManager extends SecurityManagerFacade implements
ResourceLoaderAware {
@@ -60,5 +60,4 @@ public class SpringSecurityManager extends SecurityManagerFacade implements
public void setResourceLoader(ResourceLoader loader) {
this.resourceLoader = loader;
}
-
}
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.java
deleted file mode 100644
index c09abcc1..00000000
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/Configurator.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.bku.online.conf;
-
-import iaik.security.ecc.provider.ECCProvider;
-import iaik.security.provider.IAIK;
-import iaik.xml.crypto.XSecProvider;
-
-import java.io.IOException;
-import java.net.HttpURLConnection;
-import java.security.Provider;
-import java.security.Security;
-import java.util.Properties;
-
-import javax.net.ssl.HttpsURLConnection;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import at.gv.egiz.bku.binding.DataUrl;
-import at.gv.egiz.bku.binding.DataUrlConnection;
-import at.gv.egiz.bku.slcommands.impl.xsect.DataObject;
-import at.gv.egiz.bku.slcommands.impl.xsect.STALProvider;
-
-/**
- *
- * TODO currently only the code to get started.
- */
-public abstract class Configurator {
-
- private Log log = LogFactory.getLog(Configurator.class);
-
- private static Configurator instance = new SpringConfigurator();
-
- protected Properties properties;
-
- protected Configurator() {
- }
-
- public static Configurator getInstance() {
- return instance;
- }
-
- protected void configUrlConnections() {
- HttpsURLConnection.setFollowRedirects(false);
- HttpURLConnection.setFollowRedirects(false);
- }
-
- protected void configureProviders() {
- log.debug("Registering security providers");
- Security.insertProviderAt(new IAIK(), 1);
- Security.insertProviderAt(new ECCProvider(false), 2);
- Security.addProvider(new STALProvider());
- XSecProvider.addAsProvider(false);
- StringBuilder sb = new StringBuilder();
- sb.append("Registered providers: ");
- int i = 1;
- for (Provider prov : Security.getProviders()) {
- sb.append((i++) + ". : " + prov);
- }
- log.debug(sb.toString());
- }
-
- protected void configViewer() {
- DataObject.enableHashDataInputValidation(Boolean.parseBoolean(properties.getProperty("ValidateHashDataInputs")));
- }
-
- public void configure() {
- configureProviders();
- configUrlConnections();
- configViewer();
- }
-
- public void setConfiguration(Properties props) {
- this.properties = props;
- }
-
- public String getProperty(String key) {
- if (properties != null) {
- return properties.getProperty(key);
- }
- return null;
- }
-}
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
index d213dd36..a369d829 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
@@ -17,31 +17,9 @@
package at.gv.egiz.bku.online.conf;
import java.io.File;
-import java.io.FileInputStream;
import java.io.IOException;
-import java.security.InvalidAlgorithmParameterException;
-import java.security.NoSuchAlgorithmException;
-import java.security.Security;
-import java.security.cert.CertStore;
-import java.security.cert.CertificateException;
-import java.security.cert.CertificateFactory;
-import java.security.cert.CollectionCertStoreParameters;
-import java.security.cert.PKIXBuilderParameters;
-import java.security.cert.TrustAnchor;
-import java.security.cert.X509CertSelector;
-import java.security.cert.X509Certificate;
-import java.util.HashSet;
-import java.util.LinkedList;
-import java.util.List;
+import java.io.InputStream;
import java.util.Properties;
-import java.util.Set;
-
-import javax.net.ssl.CertPathTrustManagerParameters;
-import javax.net.ssl.HttpsURLConnection;
-import javax.net.ssl.KeyManager;
-import javax.net.ssl.ManagerFactoryParameters;
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.TrustManagerFactory;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -49,8 +27,8 @@ import org.springframework.context.ResourceLoaderAware;
import org.springframework.core.io.Resource;
import org.springframework.core.io.ResourceLoader;
-import at.gv.egiz.bku.binding.DataUrl;
-import at.gv.egiz.bku.binding.DataUrlConnection;
+import at.gv.egiz.bku.conf.Configurator;
+import at.gv.egiz.bku.online.webapp.SpringBKUServlet;
import at.gv.egiz.bku.slexceptions.SLRuntimeException;
import at.gv.egiz.stal.service.impl.RequestBrokerSTALFactory;
@@ -76,41 +54,8 @@ public class SpringConfigurator extends Configurator implements
}
}
- public void configureVersion() {
- Properties p = new Properties();
- try {
- p.load(resourceLoader.getResource("META-INF/MANIFEST.MF")
- .getInputStream());
- String version = p.getProperty("Implementation-Build");
- properties.setProperty(DataUrlConnection.USER_AGENT_PROPERTY_KEY,
- "citizen-card-environment/1.2 MOCCA " + version);
- DataUrl.setConfiguration(properties);
- log.debug("Setting user agent to: "
- + properties.getProperty(DataUrlConnection.USER_AGENT_PROPERTY_KEY));
- } catch (IOException e) {
- log.error(e);
- }
- }
-
- public void configure() {
- super.configure();
- configureSSL();
- configureVersion();
- configureNetwork();
- }
-
public void configureNetwork() {
- String proxyHost = getProperty("HTTPProxyHost");
- String proxyPort = getProperty("HTTPProxyPort");
- if (proxyPort == null) {
- proxyPort = "80";
- }
- if (proxyHost != null) {
- log.debug("Setting proxy server to: " + proxyHost + ":" + proxyPort);
- System.setProperty("http.proxyHost", proxyHost);
- System.setProperty("http.proxyPort", proxyPort);
- }
- log.debug("No proxy specified");
+ super.configureNetwork();
String appletTimeout = getProperty("AppletTimeout");
if ((appletTimeout != null)) {
try {
@@ -122,128 +67,60 @@ public class SpringConfigurator extends Configurator implements
}
}
-
- private Set getCACerts() throws IOException,
- CertificateException {
- Set caCerts = new HashSet();
- String caDirectory = getProperty("SSL.caDirectory");
- if (caDirectory != null) {
- Resource caDirRes = resourceLoader.getResource(caDirectory);
- File caDir = caDirRes.getFile();
- if (!caDir.isDirectory()) {
- log.error("Expecting directory as SSL.caDirectory parameter");
- throw new SLRuntimeException(
- "Expecting directory as SSL.caDirectory parameter");
- }
- CertificateFactory cf = CertificateFactory.getInstance("X.509");
- for (File f : caDir.listFiles()) {
- try {
- FileInputStream fis = new FileInputStream(f);
- X509Certificate cert = (X509Certificate) cf.generateCertificate(fis);
- fis.close();
- log.debug("Adding trusted cert " + cert.getSubjectDN());
- caCerts.add(new TrustAnchor(cert, null));
- } catch (Exception e) {
- log.error("Cannot add trusted ca", e);
- }
- }
- return caCerts;
-
- } else {
- log.warn("No CA certificates configured");
- }
- return null;
+
+ public void configure() {
+ super.configure();
+ SpringBKUServlet.setConfigurator(this);
}
- private CertStore getCertstore() throws IOException, CertificateException,
- InvalidAlgorithmParameterException, NoSuchAlgorithmException {
- String certDirectory = getProperty("SSL.certDirectory");
- if (certDirectory != null) {
- Resource certDirRes = resourceLoader.getResource(certDirectory);
+ @Override
+ public void setResourceLoader(ResourceLoader loader) {
+ this.resourceLoader = loader;
+ }
- File certDir = certDirRes.getFile();
+ private File getDirectory(String property) {
+ if (property != null) {
+ Resource certDirRes = resourceLoader.getResource(property);
+ File certDir;
+ try {
+ certDir = certDirRes.getFile();
+ } catch (IOException e) {
+ log.error("Cannot get cert directory", e);
+ throw new SLRuntimeException(e);
+ }
if (!certDir.isDirectory()) {
log.error("Expecting directory as SSL.certDirectory parameter");
throw new SLRuntimeException(
"Expecting directory as SSL.certDirectory parameter");
}
- List certCollection = new LinkedList();
- CertificateFactory cf = CertificateFactory.getInstance("X.509");
- for (File f : certDir.listFiles()) {
- try {
- FileInputStream fis = new FileInputStream(f);
- X509Certificate cert = (X509Certificate) cf.generateCertificate(fis);
- certCollection.add(cert);
- fis.close();
- log
- .trace("Added following cert to certstore: "
- + cert.getSubjectDN());
- } catch (Exception ex) {
- log.error("Cannot add certificate", ex);
- }
- }
- CollectionCertStoreParameters csp = new CollectionCertStoreParameters(
- certCollection);
- return CertStore.getInstance("Collection", csp);
-
- } else {
- log.warn("No certstore configured");
+ return certDir;
}
return null;
+
}
- public void configureSSL() {
- Set caCerts = null;
- try {
- caCerts = getCACerts();
- } catch (Exception e1) {
- log.error("Cannot load CA certificates", e1);
- }
- CertStore certStore = null;
- try {
- certStore = getCertstore();
- } catch (Exception e1) {
- log.error("Cannot load certstore certificates", e1);
- }
- System.setProperty("com.sun.security.enableAIAcaIssuers", "true");
- try {
- X509CertSelector selector = new X509CertSelector();
- PKIXBuilderParameters pkixParams;
- pkixParams = new PKIXBuilderParameters(caCerts, selector);
- if ((getProperty("SSL.doRevocationChecking") != null)
- && (Boolean.valueOf(getProperty("SSL.doRevocationChecking")))) {
- log.info("Enable revocation checking");
- pkixParams.setRevocationEnabled(true);
- System.setProperty("com.sun.security.enableCRLDP", "true");
- Security.setProperty("ocsp.enable", "true");
- } else {
- log.warn("Revocation checking disabled");
- pkixParams.setRevocationEnabled(false);
- }
- pkixParams.addCertStore(certStore);
- ManagerFactoryParameters trustParams = new CertPathTrustManagerParameters(
- pkixParams);
- TrustManagerFactory trustFab;
- try {
- trustFab = TrustManagerFactory.getInstance("PKIX");
- trustFab.init(trustParams);
- KeyManager[] km = null;
- SSLContext sslCtx = SSLContext
- .getInstance(getProperty("SSL.sslProtocol"));
- sslCtx.init(km, trustFab.getTrustManagers(), null);
- HttpsURLConnection
- .setDefaultSSLSocketFactory(sslCtx.getSocketFactory());
- } catch (Exception e) {
- log.error("Cannot configure SSL", e);
- }
+ @Override
+ protected File getCADir() {
+ String caDirectory = getProperty("SSL.caDirectory");
+ return getDirectory(caDirectory);
+ }
- } catch (InvalidAlgorithmParameterException e) {
- log.error("Cannot configure SSL", e);
- }
+ @Override
+ protected File getCertDir() {
+ String certDirectory = getProperty("SSL.certDirectory");
+ return getDirectory(certDirectory);
}
@Override
- public void setResourceLoader(ResourceLoader loader) {
- this.resourceLoader = loader;
+ protected InputStream getManifest() {
+ Resource r = resourceLoader.getResource("META-INF/MANIFEST.MF");
+ if (r != null) {
+ try {
+ return r.getInputStream();
+ } catch (IOException e) {
+ log.error("Cannot read manifest data:", e);
+ }
+ }
+ return null;
}
}
\ No newline at end of file
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 b70a6274..9e69099d 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
@@ -31,7 +31,7 @@ import org.apache.commons.logging.LogFactory;
import at.gv.egiz.bku.binding.HTTPBindingProcessor;
import at.gv.egiz.bku.binding.HttpUtil;
import at.gv.egiz.bku.binding.IdFactory;
-import at.gv.egiz.bku.online.conf.Configurator;
+import at.gv.egiz.bku.conf.Configurator;
/**
* Delivers the result to the browser
@@ -108,8 +108,8 @@ public class ResultServlet extends SpringBKUServlet {
resp.setHeader("Cache-Control", "no-store"); // HTTP 1.1
resp.setHeader("Pragma", "no-cache"); // HTTP 1.0
resp.setDateHeader("Expires", 0);
- if (Configurator.getInstance().getProperty(USER_AGENT_PROPERTY_KEY) != null) {
- resp.setHeader(HttpUtil.HTTP_HEADER_USER_AGENT, Configurator.getInstance().getProperty(
+ if (configurator.getProperty(USER_AGENT_PROPERTY_KEY) != null) {
+ resp.setHeader(HttpUtil.HTTP_HEADER_USER_AGENT, configurator.getProperty(
USER_AGENT_PROPERTY_KEY));
} else {
resp.setHeader(HttpUtil.HTTP_HEADER_USER_AGENT,
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java
index ec062e42..2c6f522e 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/SpringBKUServlet.java
@@ -16,16 +16,22 @@
*/
package at.gv.egiz.bku.online.webapp;
-import javax.servlet.http.HttpServlet;
-
-import at.gv.egiz.bku.binding.BindingProcessorManager;
-import at.gv.egiz.bku.online.conf.Configurator;
+import javax.servlet.http.HttpServlet;
+
+import at.gv.egiz.bku.binding.BindingProcessorManager;
+import at.gv.egiz.bku.conf.Configurator;
public abstract class SpringBKUServlet extends HttpServlet {
public final static String BEAN_NAME="bindingProcessorManager";
+ protected static Configurator configurator;
+
protected BindingProcessorManager getBindingProcessorManager() {
return (BindingProcessorManager) getServletContext().getAttribute(BEAN_NAME);
+ }
+
+ public static void setConfigurator(Configurator conf) {
+ configurator = conf;
}
}
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
index 73d89f22..d7fc5ae9 100644
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
@@ -36,6 +36,10 @@ SSL.caDirectory=classpath:at/gv/egiz/bku/online/conf/certs/CACerts
SSL.doRevocationChecking=true
SSL.sslProtocol=TLS
+SSL.cache.lifetime=3600
+
+# use authority info access extension to find ca certs.
+SSL.useAIA=true
# ------------ END SSL Config --------------------
@@ -44,3 +48,4 @@ AppletTimeout=300000
#HTTPProxyHost=taranis.iaik.tugraz.at
#HTTPProxyPort=8888
+#DefaultSocketTimeout=200
diff --git a/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml b/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
index 04b07ba4..b074da59 100644
--- a/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
+++ b/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
@@ -45,8 +45,8 @@
-
+
--
cgit v1.2.3
From 5702f241064f90106e8495f3cf23b6e6798d6501 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Wed, 1 Oct 2008 10:49:31 +0000
Subject: added project for local MOCCA
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@79 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java | 1 +
.../java/at/gv/egiz/stal/service/impl/RequestBrokerSTALFactory.java | 2 +-
.../src/main/java/at/gv/egiz/stal/service/impl/STALRequestBroker.java | 2 +-
.../main/java/at/gv/egiz/stal/service/impl/STALRequestBrokerImpl.java | 2 +-
.../main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties | 2 +-
5 files changed, 5 insertions(+), 4 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
index a369d829..6030c1c0 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/conf/SpringConfigurator.java
@@ -60,6 +60,7 @@ public class SpringConfigurator extends Configurator implements
if ((appletTimeout != null)) {
try {
long ato = Long.parseLong(appletTimeout);
+ log.debug("Setting applet timeout to:"+ato);
RequestBrokerSTALFactory.setTimeout(ato);
} catch (NumberFormatException nfe) {
log.error("Cannot set Applettimeout", nfe);
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 45ee67d0..9c4aca28 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
@@ -32,7 +32,7 @@ import at.gv.egiz.stal.STALFactory;
*/
public class RequestBrokerSTALFactory implements STALFactory {
- private static long timeout;
+ private static long timeout = -1;
@Override
public STAL createSTAL() {
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 af886eec..63eac311 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
@@ -32,7 +32,7 @@ import java.util.List;
*/
public interface STALRequestBroker extends STAL {
- public static final int ERR_6000 = 6000;
+ public static final int ERR_4500 = 4500;
public static final long DEFAULT_TIMEOUT_MS = 1000*60*5; //5mn
public List connect();
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 bfa83dd4..4aa5130a 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
@@ -150,7 +150,7 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
// reqMon.setHashDataInput(null);
requests.clear(); //TODO sync on requests?
hashDataInputs.clear();
- return Collections.singletonList((STALResponse) new ErrorResponse(ERR_6000));
+ return Collections.singletonList((STALResponse) new ErrorResponse(ERR_4500));
}
}
log.trace("consuming responses");
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
index d7fc5ae9..9766ae26 100644
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
@@ -48,4 +48,4 @@ AppletTimeout=300000
#HTTPProxyHost=taranis.iaik.tugraz.at
#HTTPProxyPort=8888
-#DefaultSocketTimeout=200
+DefaultSocketTimeout=200
--
cgit v1.2.3
From 35364f7492308692bd690c17f5527f4157eb583a Mon Sep 17 00:00:00 2001
From: clemenso
Date: Tue, 7 Oct 2008 17:59:28 +0000
Subject: hashdata digest
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@82 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../src/main/java/at/gv/egiz/stal/service/impl/STALServiceImpl.java | 2 +-
BKUOnline/src/test/resources/appletTest.html | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
(limited to 'BKUOnline')
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 bcee1e77..55e66685 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
@@ -191,7 +191,7 @@ public class STALServiceImpl implements STALPortType {
if (TEST_SESSION_ID.equals(sessionId)) {
log.debug("Received GetHashDataInput for session " + TEST_SESSION_ID + ", return DummyHashDataInput");
GetHashDataInputResponseType.Reference ref = new GetHashDataInputResponseType.Reference();
- ref.setID("Reference-" + TEST_SESSION_ID + "-001");
+ ref.setID("signed-data-reference-0-1214921968-27971781-24309"); //Reference-" + TEST_SESSION_ID + "-001");
ref.setMimeType("text/plain");
Charset charset;
diff --git a/BKUOnline/src/test/resources/appletTest.html b/BKUOnline/src/test/resources/appletTest.html
index 7e4a17cc..bf24a2c9 100644
--- a/BKUOnline/src/test/resources/appletTest.html
+++ b/BKUOnline/src/test/resources/appletTest.html
@@ -20,9 +20,9 @@
-
+
-
+
--
cgit v1.2.3
From 27d91275555207f9e152c2867d52fbbf83f92ba7 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Wed, 8 Oct 2008 08:39:17 +0000
Subject: changed ssl certificate validation, now using iaik_pki
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@83 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../egiz/bku/online/webapp/BKURequestHandler.java | 4 +-
.../bku/online/webapp/HashDataInputServlet.java | 96 +++++++++++
.../stal/service/impl/STALRequestBrokerImpl.java | 6 +-
.../online/conf/certs/certStore/a-sign-SSL-03.cer | 26 ---
.../conf/certs/certStore/a-sign-corporate-03.cer | 27 ---
.../certs/certStore/a-sign-corporate-light-01a.cer | 21 ---
.../certs/certStore/a-sign-corporate-light-02a.cer | 27 ---
.../certs/certStore/a-sign-corporate-light-03.cer | 27 ---
.../certStore/a-sign-corporate-medium-01a.cer | 21 ---
.../certStore/a-sign-corporate-medium-02a.cer | 27 ---
.../certs/certStore/tobeadded/A-Trust-Qual-01a.cer | Bin 0 -> 1111 bytes
.../certs/certStore/tobeadded/A-Trust-Qual-02a.cer | Bin 0 -> 975 bytes
.../certs/certStore/tobeadded/A-Trust-Qual-03a.cer | Bin 0 -> 975 bytes
.../certStore/tobeadded/A-Trust-nQual-01a.cer | Bin 0 -> 865 bytes
.../certs/certStore/tobeadded/A-Trust-nQual-03.cer | Bin 0 -> 979 bytes
.../certs/certStore/tobeadded/a-sign-SSL-03.cer | 26 +++
.../certStore/tobeadded/a-sign-corporate-03.cer | 27 +++
.../tobeadded/a-sign-corporate-light-01a.cer | 21 +++
.../tobeadded/a-sign-corporate-light-02a.cer | 27 +++
.../tobeadded/a-sign-corporate-light-03.cer | 27 +++
.../tobeadded/a-sign-corporate-medium-01a.cer | 21 +++
.../tobeadded/a-sign-corporate-medium-02a.cer | 27 +++
.../gv/egiz/bku/online/conf/defaultConf.properties | 10 +-
.../src/main/webapp/WEB-INF/applicationContext.xml | 4 +
BKUOnline/src/main/webapp/WEB-INF/web.xml | 191 +++++++++++----------
.../src/test/resources/applicationContext.xml | 2 +
26 files changed, 390 insertions(+), 275 deletions(-)
create mode 100644 BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-SSL-03.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-03.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-01a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-02a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-03.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-01a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-02a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-02a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-03a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-SSL-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-02a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-02a.cer
(limited to 'BKUOnline')
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 20320d8e..544bbc99 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
@@ -31,6 +31,7 @@ import org.apache.commons.logging.LogFactory;
import at.gv.egiz.bku.binding.HTTPBindingProcessor;
import at.gv.egiz.bku.binding.HttpUtil;
+import at.gv.egiz.bku.binding.IdFactory;
import at.gv.egiz.org.apache.tomcat.util.http.AcceptLanguage;
/**
@@ -51,7 +52,8 @@ public class BKURequestHandler extends SpringBKUServlet {
log.debug("Using locale: " + locale);
HttpSession session = req.getSession();
if (session != null) {
- session.invalidate();
+ log.warn("Already a session with id: "+session.getId()+ " active, deleting this one");
+ getBindingProcessorManager().removeBindingProcessor(IdFactory.getInstance().createId(session.getId()));
}
String id = req.getSession(true).getId();
log.debug("Using session id: " + id);
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java
new file mode 100644
index 00000000..59766586
--- /dev/null
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java
@@ -0,0 +1,96 @@
+package at.gv.egiz.bku.online.webapp;
+
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
+import java.io.Reader;
+import java.io.Writer;
+import java.util.List;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import at.gv.egiz.bku.binding.BindingProcessor;
+import at.gv.egiz.bku.binding.Id;
+import at.gv.egiz.bku.binding.IdFactory;
+import at.gv.egiz.bku.slexceptions.SLRuntimeException;
+import at.gv.egiz.bku.utils.StreamUtil;
+import at.gv.egiz.stal.HashDataInput;
+import at.gv.egiz.stal.STAL;
+import at.gv.egiz.stal.service.impl.STALRequestBroker;
+import at.gv.egiz.stal.service.impl.STALRequestBrokerImpl;
+import at.gv.egiz.stal.service.impl.STALServiceImpl;
+
+public class HashDataInputServlet extends SpringBKUServlet {
+
+ private static Log log = LogFactory.getLog(HashDataInputServlet.class);
+
+ public HashDataInputServlet() {
+ }
+
+ private STALRequestBroker getSTAL(Id id) {
+ BindingProcessor bp = getBindingProcessorManager().getBindingProcessor(id);
+ if (bp == null) {
+ return null;
+ }
+ STAL stal = bp.getSTAL();
+ if (stal instanceof STALRequestBroker) {
+ return (STALRequestBroker) stal;
+ } else {
+ throw new SLRuntimeException("Unexpected STAL type");
+ }
+ }
+
+ @Override
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, IOException {
+ if ((req.getSession() == null) && (req.getSession().getId() != null)) {
+ log.warn("Got request for hashdatainput without session info");
+ resp.sendRedirect("expired.html");
+ return;
+ }
+ Id sessionId = IdFactory.getInstance().createId(req.getSession().getId());
+ log.debug("Got request for hashdata for session " + sessionId);
+ STALRequestBroker rb = getSTAL(sessionId);
+ if (rb == null) {
+ log.info("STAL instance not found for session: " + sessionId);
+ resp.sendRedirect("expired.html");
+ return;
+ }
+ List hdi = rb.getHashDataInput();
+ log.debug("Got hashdata list with " + hdi.size() + " entries");
+ String param = req.getParameter("number");
+ int num = 0;
+ if (param != null) {
+ log.debug("Got request for hashdata#" + num);
+ num = Integer.parseInt(param);
+ }
+ if ((hdi.size() <= num) || (num < 0)){
+ log.warn("Requested hashdatainput exceeds listsize");
+ resp.sendError(-1);
+ return;
+ }
+ resp.setCharacterEncoding(req.getCharacterEncoding());
+ resp.setContentType(hdi.get(num).getMimeType());
+ String charSet = req.getCharacterEncoding();
+ if (charSet == null) {
+ charSet = "UTF-8";
+ }
+ Reader r = new InputStreamReader(hdi.get(num).getHashDataInput(), charSet);
+ Writer w = new OutputStreamWriter(resp.getOutputStream(), charSet);
+ StreamUtil.copyStream(r, w);
+ w.close();
+ return;
+ }
+
+ @Override
+ protected void doPost(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, IOException {
+ doGet(req, resp);
+ }
+
+}
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 4aa5130a..074aff2d 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
@@ -32,6 +32,7 @@ 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.HashDataInputProxy;
import at.gv.egiz.stal.util.STALTranslator;
import java.util.ArrayList;
import java.util.Collections;
@@ -108,7 +109,10 @@ public class STALRequestBrokerImpl implements STALRequestBroker {
req.setKeyIdentifier(((SignRequest) stalRequest).getKeyIdentifier());
req.setSignedInfo(((SignRequest) stalRequest).getSignedInfo());
requests.add(req);
- hashDataInputs.addAll(((SignRequest) stalRequest).getHashDataInput());
+ for (HashDataInput hdi : ((SignRequest) stalRequest).getHashDataInput()) {
+ hashDataInputs.add(new HashDataInputProxy(hdi));
+ }
+ //hashDataInputs.addAll(((SignRequest) stalRequest).getHashDataInput());
break;
} else if (stalRequest instanceof InfoboxReadRequest) {
log.trace("Received InfoboxReadRequest");
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-SSL-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-SSL-03.cer
deleted file mode 100644
index ee859434..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-SSL-03.cer
+++ /dev/null
@@ -1,26 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEdzCCA1+gAwIBAgIDAmU4MA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
-VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
-bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
-dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA2MDgxNjIyMDAw
-MFoXDTE2MDgxNjIyMDAwMFowgYcxCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
-dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
-ZXJrZWhyIEdtYkgxFjAUBgNVBAsMDWEtc2lnbi1TU0wtMDMxFjAUBgNVBAMMDWEt
-c2lnbi1TU0wtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDMjPM6
-PqgdPBPV4Efudpytt2Y4GZJfjeRdZo5SCuULDvvL+23xxBWnR3scFvfE1ekHN/YK
-k+2/qhU2B2ntoSNJSyDchNM8YPc9Lx67zZyhQTZgbBzh3IZAVb/hwuRRRV68JCBj
-r3r6v7IbwjH5XcVISdB4szx0z93aAQyKW9QkV+tD5a1vWFETvdHsZeVmDzfqcdsG
-AznPJw+9HrImCsswCWYUgPcFRkPNjj2r2NoyckVN781aWmNTAqJPf/Ckj9l9pUIt
-Vjhy8XNJW4iVDBkkykBXcGSkIau0ypJrRjsD1jKqUTIRZ/y2HlyltmwWi8OuyBLd
-LaHDbjc0b6JmqoivAgMBAAGjgeMwgeAwDwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4E
-CgQIQD6h02K0A90wEwYDVR0jBAwwCoAIRGqVZ1V5EU8wDgYDVR0PAQH/BAQDAgEG
-MIGUBgNVHR8EgYwwgYkwgYaggYOggYCGfmxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQv
-b3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEtVHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJl
-dm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0Y2xhc3M9ZWlkQ2VydGlmaWNhdGlvbkF1
-dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAQEAHKlnV3R9sbXojtONugyazkZCEzmC
-nZF1Dz4cOL0vPzzvS8MVWtG43zAgVI1NT/0ETSWsXD3YfzRi+f+/CxrGn0gwZX2t
-VGx+Z9w5ufiy1vuhxDUPmpos1TbJ4Wv3Une0E7iuHmNLg5qVlKeHWpcU8t1Y0nCt
-eRz34Qm87AVAykta33XST1fYvGoPKsDtn3qx9ye/pcbDvWjPwmqF2UUoql+d5hmJ
-Umgzwezqk4I+FS98BrnaPgC5UVFHg+yUjiUDLjYy7UvDZ5Led6kkLXuzVhQolLvr
-KTrGp5k42PG2MMkw8f6GMF/6yePXgzFMCRN8ReR7J5Htv33SytLRmFRd8g==
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-03.cer
deleted file mode 100644
index 7e67be95..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-03.cer
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEgzCCA2ugAwIBAgIDAarsMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
-VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
-bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
-dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MTExMzIzMDAw
-MFoXDTE1MTExMzIzMDAwMFowgZMxCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
-dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
-ZXJrZWhyIEdtYkgxHDAaBgNVBAsME2Etc2lnbi1jb3Jwb3JhdGUtMDMxHDAaBgNV
-BAMME2Etc2lnbi1jb3Jwb3JhdGUtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
-ggEKAoIBAQCp44qY+AiVXlcnHoKvch9s3ujoWFNktvcteIPwK7s0mb/uxTUW9UIF
-Die9n3AbyTsJE6R3nZYSJVHHi+1DKD72/WEo/B5NOOtd6KUMfJgca1tDmcsIwhFn
-82qkZrbNQwdIIdLe6+nDmjd9UBIaKv7yy1kq20jh09HOK3/bWhafVQE7EAgDfNrn
-8f0JfnnF0EA/La5kkg878L22fh9lRzt8H21THqJPtK4/e9SttjrJnPhFk2/MjAGS
-uaDufG6BV5Hnn7klR5qm5q32ypleLA6Zi4m9jRCVtPd4jRPYM40XpRkrJuFw+lxp
-rejfEZt/SRh1eQXiXDUgtgX8OaIylH9pAgMBAAGjgeMwgeAwDwYDVR0TAQH/BAUw
-AwEB/zARBgNVHQ4ECgQIQj75YZ1a5XIwEwYDVR0jBAwwCoAIRGqVZ1V5EU8wDgYD
-VR0PAQH/BAQDAgEGMIGUBgNVHR8EgYwwgYkwgYaggYOggYCGfmxkYXA6Ly9sZGFw
-LmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEtVHJ1c3QsYz1BVD9j
-ZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0Y2xhc3M9ZWlkQ2Vy
-dGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAQEARu7e1SyBRjlA
-g/thtFwtKQRvopTZKWj2LWpEdvPvwThOvf8Depnas+ly5af8r8YzsqJzfX3XWvhN
-qOOI24g5FmXfCUTq/kbtaeTq/AqV94793IJfcilPnpMOEHMqXNDiRUoAgR/9EVj8
-mDVvL2lLlJzeAltqOD5Bi9QwguaD2/3/E5ymFnqkf1dnlXbo8AhcwPEzReNKn1eM
-Ilg4FwP1bP0HUK3Fyz1UQ/Hncg+MS7c+SkjpNEd4sH7/GdxuQs5Sk7IRwot1+sbX
-3CkkPhSqiUzig9raxJYrtbb2kyiUO8+d5HzRyoP4BNzsdZdPc0gDYweXg5qarHOQ
-16IEOtBmKg==
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-01a.cer
deleted file mode 100644
index 0c68e593..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-01a.cer
+++ /dev/null
@@ -1,21 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEJjCCAw6gAwIBAgIDAOJEMA0GCSqGSIb3DQEBBQUAMFUxCzAJBgNVBAYTAkFUMRAwDgYDVQQK
-EwdBLVRydXN0MRkwFwYDVQQLExBBLVRydXN0LW5RdWFsLTAxMRkwFwYDVQQDExBBLVRydXN0LW5R
-dWFsLTAxMB4XDTA0MTEzMDIzMDAwMFoXDTA4MTEzMDIzMDAwMFowgZ8xCzAJBgNVBAYTAkFUMUgw
-RgYDVQQKEz9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0
-ZW52ZXJrZWhyIEdtYkgxIjAgBgNVBAsTGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDExIjAgBgNV
-BAMTGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
-AoIBAQDGC65v8rni63DojEBriynPwRqNCp14/SkN5ROkTUGNvLSabfSJV4PKGLTzasPAaChwX0g/
-kebahFM3R7nIyeVx2YB8VRvC4I/spP/mCs5+6pf1N+6Kiq4NcswgNBBfqAteaQIylBMy6HDkjoXY
-X/c+SxjyrqAkeZCK+SHMOraXCO1PZHWbYwleKXf4R2Z6ayEfJ2XWeVuqqon76WHp/POI0RADBchA
-6Vm1ROzSAHz39bay1TZunQXSs3VQ9cE3uQPjN+80efmf0ZgNF0sXsDTssoZg2feTANSOkTGM1bMC
-5xe1hWFL8MZNe4yZ+NSgFN2fofb8BPvyQAW0no2PNA6PAgMBAAGjgbMwgbAwDwYDVR0TAQH/BAUw
-AwEB/zARBgNVHQ4ECgQITp5/1C/JHx8wEwYDVR0jBAwwCoAITlnOxwIyhzAwDgYDVR0PAQH/BAQD
-AgEGMGUGA1UdHwReMFwwWqBYoFaGVGxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1u
-UXVhbC0wMSxvPUEtVHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0PzANBgkqhkiG
-9w0BAQUFAAOCAQEAOtuz2GqnTibk/poCLrdYKpZSrLyfWFsJJpfBYA9HMasnfpJBCHgRHJud6DAO
-xD900Vhmwy66D8dqsN3+fR8Bx8ZMKspnFN1B2Wz7LWOxMaKqP3JolJ/oVwzJRm0afcUMAfAumkc5
-Yqu0nC5qCF9zYY9YbJklh84uEzEg9j85kuRBHOCUc+5MVrnv7WPbirx6c95YFqXBQ0arA5QE9zYq
-MDO8aUYPOWEHgtrVI+kMwELYHqLDX7i9VqsXhgFPeVz1wIV7s/i3budGeHMS6hjnyIc30FqM7CTY
-fcvqVNZliErbjD1k1W1gMgvjLJowNvQC0W7K9/yoQhwTqtNMR4WZwA==
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-02a.cer
deleted file mode 100644
index c300891d..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-02a.cer
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEizCCA3OgAwIBAgIDAOSoMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJB
-VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
-bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRgwFgYDVQQLDA9BLVRydXN0LVF1
-YWwtMDIxGDAWBgNVBAMMD0EtVHJ1c3QtUXVhbC0wMjAeFw0wNDEyMTQyMzAwMDBa
-Fw0xNDEyMTMyMzAwMDBaMIGfMQswCQYDVQQGEwJBVDFIMEYGA1UECgw/QS1UcnVz
-dCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy
-a2VociBHbWJIMSIwIAYDVQQLDBlhLXNpZ24tY29ycG9yYXRlLWxpZ2h0LTAyMSIw
-IAYDVQQDDBlhLXNpZ24tY29ycG9yYXRlLWxpZ2h0LTAyMIIBIjANBgkqhkiG9w0B
-AQEFAAOCAQ8AMIIBCgKCAQEAk6V4oEauvXgEICqgjTbGHaiDhBVo2nosX23osoKM
-LTkkO/nOCgpdCYpLKgURxwrgHgVh9XT99yxhy6lDwt2rASajj0sQ1fY5BmWVyrXS
-dQ78ISMPb73XaG4M8H7PJFcsVEo9n8veVQwnMY5mSWy0r1IO8n93Bjbmmi4Zt8oS
-p9olWo5/8ByYW8S/AKZuQx+q+bFJv7geuApVjK2iVFe8yQqHhAgDsAsDlMvxDAQ/
-vhrGwHRv8N3sLsjirnbf5S2dGLDjASOMUFvwfLQd7gHH7PV37Xa+aQqa97eE6O4O
-sIhcGRYhoLk/tWTBDapcgHJ0yTtrftuwORVteLUAy0gBNwIDAQABo4HhMIHeMA8G
-A1UdEwEB/wQFMAMBAf8wEQYDVR0OBAoECEkcWDpP6A0DMBMGA1UdIwQMMAqACEI9
-KySmwUXOMA4GA1UdDwEB/wQEAwIBBjCBkgYDVR0fBIGKMIGHMIGEoIGBoH+GfWxk
-YXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1RdWFsLTAyLG89QS1UcnVz
-dCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/YmFzZT9vYmplY3RjbGFz
-cz1laWRDZXJ0aWZpY2F0aW9uQXV0aG9yaXR5MA0GCSqGSIb3DQEBBQUAA4IBAQBH
-opWG7LKmPBvuGjZnRV4KGKzzUYVuxSRS1E0VIUPbVLf5xW2r5uUpR8ud5EpiPrcw
-k6K0dzu2Vb4ZbMIP+6J16S/0qvTp/3A/3q87+nJ+ot+IT8GZFJfSw18th2WmZdzR
-ShbM6sgViPtGsFROCdWeiHl248w2+zG+09sf8Bu3UyvwLRAiiKaxuwVdQ9kc0TL3
-gvv+K5eisWWthQOX2IF2jGSEqoAVwfHhl7bc9Vt7XnJSpQFebHnsIVuV4Mv6w4ww
-86hQPCLLvvV7wWDiBQ8l2FWneX0pNH3Wg+A1TRUoptc+pPDdpoP272MDm4fXyPKV
-7QgIaIK+gXNUj2GGt1K9
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-03.cer
deleted file mode 100644
index 2251ca22..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-light-03.cer
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEjzCCA3egAwIBAgIDAartMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
-VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
-bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
-dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MTExMzIzMDAw
-MFoXDTE1MTExMzIzMDAwMFowgZ8xCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
-dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
-ZXJrZWhyIEdtYkgxIjAgBgNVBAsMGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDMx
-IjAgBgNVBAMMGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDMwggEiMA0GCSqGSIb3
-DQEBAQUAA4IBDwAwggEKAoIBAQC359oitbHkkEgdErRPeBdkcYRK2DLdxfcnn+SI
-umSEYzWVscRTchPKSzb7f1a6EHPbB5WZsGJaUDX9KfTqsJNMo+7bASKk3gsLVxNZ
-qY2t2G+y8HvREYYejDOIzjAkcBQrt+nvuBUlGYVJQjEuyAn18f2vG0Y3VNvZFGKn
-PK8AVycUMk0Uw21RbK3vX5tbbPgQ/kcZkN4czi5VHepMvf6hAwwLoJj+KL9zxm8j
-yPK88qCBKAjMNCpZKsEhyanw1CjYbVmHs45Q5W6FBtqDcS6Iq4mC6TtUPGtCTuoH
-7/JLuhEp075ohp87v3fSlzeLJjBpkUDP9U8Tv7l2euD0t1UVAgMBAAGjgeMwgeAw
-DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQIQZFpHL+t2JgwEwYDVR0jBAwwCoAI
-RGqVZ1V5EU8wDgYDVR0PAQH/BAQDAgEGMIGUBgNVHR8EgYwwgYkwgYaggYOggYCG
-fmxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEt
-VHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0
-Y2xhc3M9ZWlkQ2VydGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOC
-AQEADTRIaQtPwoPS6/TpyBhOw4wAHk/RM4gkLT76URPY2sUHihxqy+8qEElN+f5l
-I61myCP3IFTClflcHVR1QCoMg0ZI5/EcQTI8Dgd5iQkXuVjh3wCj87Ka2Tu7d1K+
-i9VJ4BR/ph/qmPKR7Lx/PtATw/vWo4k2rbt5o1QwixZ7CPt+BF9xCaAC4uL0bB0M
-9M3i9W2ePmqX6WIB3jMkT9FQC0KihPPfw/17KddNi4rFMMEiTyKvJTtTqDnIAwWW
-TqsL1G7oxMMtnnYaKWMQ6gQiOiRzCY7efcAi/3YwUX6ULW5zxqapNs1vqEbSGsQE
-l1eFl67HBZHYAPdoHGUnZF0KaQ==
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-01a.cer
deleted file mode 100644
index 2d7f1a03..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-01a.cer
+++ /dev/null
@@ -1,21 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEKDCCAxCgAwIBAgIDAOKKMA0GCSqGSIb3DQEBBQUAMFUxCzAJBgNVBAYTAkFUMRAwDgYDVQQK
-EwdBLVRydXN0MRkwFwYDVQQLExBBLVRydXN0LW5RdWFsLTAxMRkwFwYDVQQDExBBLVRydXN0LW5R
-dWFsLTAxMB4XDTA0MTIwNTIzMDAwMFoXDTA4MTEzMDIzMDAwMFowgaExCzAJBgNVBAYTAkFUMUgw
-RgYDVQQKEz9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0
-ZW52ZXJrZWhyIEdtYkgxIzAhBgNVBAsTGmEtc2lnbi1jb3Jwb3JhdGUtbWVkaXVtLTAxMSMwIQYD
-VQQDExphLXNpZ24tY29ycG9yYXRlLW1lZGl1bS0wMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
-AQoCggEBANEbZyIMIXZYBjTj/+3TrNGssRKNNdTedQlWB3vJQWLzeG89Kzmhy1WDX8IqDrMtvpXH
-5w6urK3ZT7HGu2Jldrib8rkEOdE9+uNGRtkP8Kuz//CvdXCbIDvBLqgvWn9a3Sl/rUicPqKwcEcN
-bP2Q0iU6NvvALmoqs93PymfTZlkGOwzUe+O88huXkauGWT/DkJd4JYDNJ0wlaGrJa+OorT4Izk1J
-EipqqedUjsAj4Gq3SKrZKG/H/CkoH9uWTzrzFgg8zQhCES4AClo84XVk//EIv3ABDw4hr+lqV1nF
-eXch9o4mLIe5u045471YLJLmyuCPDopb8U2VUoyldpMx+Y8CAwEAAaOBszCBsDAPBgNVHRMBAf8E
-BTADAQH/MBEGA1UdDgQKBAhOuHKxmCmfZDATBgNVHSMEDDAKgAhOWc7HAjKHMDAOBgNVHQ8BAf8E
-BAMCAQYwZQYDVR0fBF4wXDBaoFigVoZUbGRhcDovL2xkYXAuYS10cnVzdC5hdC9vdT1BLVRydXN0
-LW5RdWFsLTAxLG89QS1UcnVzdCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/MA0GCSqG
-SIb3DQEBBQUAA4IBAQDaukYSeJVxWAh8QShqGqA6Plp9aXCTzwl9hE2gb+/xGPASo+NVQi/sUa0+
-bx29oSJaW6lKzdHQLAx4dwW9XTpJ+0mebB4fQfYHH0lGc1O4au/4O9k+C3SrD6x4WeY9k/SpUFu1
-qjzH+tjta81UWtU7Jve1BhckNwdOFx7cR8fdW+pUQSDV9XnPJfyb+gb9KWhvX+XAbgJoXW1HjJOO
-P5sx6mFhMb3UqAfKQVoAuGbl4+uxIThBTqpICkaaD8WLdukqQjomUMDRbWIf6SblPuOEpPi1G/WM
-qkTkpqX77Wkj08QY/yj5DDrsYJ5NymnWvu7jcoxCFCKvEQ8Q4g7AYKnG
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-02a.cer
deleted file mode 100644
index 194d4d7c..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/a-sign-corporate-medium-02a.cer
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEjTCCA3WgAwIBAgIDAOSpMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJB
-VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
-bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRgwFgYDVQQLDA9BLVRydXN0LVF1
-YWwtMDIxGDAWBgNVBAMMD0EtVHJ1c3QtUXVhbC0wMjAeFw0wNDEyMTQyMzAwMDBa
-Fw0xNDEyMTMyMzAwMDBaMIGhMQswCQYDVQQGEwJBVDFIMEYGA1UECgw/QS1UcnVz
-dCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy
-a2VociBHbWJIMSMwIQYDVQQLDBphLXNpZ24tY29ycG9yYXRlLW1lZGl1bS0wMjEj
-MCEGA1UEAwwaYS1zaWduLWNvcnBvcmF0ZS1tZWRpdW0tMDIwggEiMA0GCSqGSIb3
-DQEBAQUAA4IBDwAwggEKAoIBAQCuaTBb6rHd5JZqAdvpmGIl5ne0Hg6GbpJvBeCI
-U6l9Rs8ebMY6aIS++qJOE9rnJHdfZNzLzduuoWEzEuwm9a/azQThM+eT+xlG/Vcf
-NuOQTTjAuXHLvYQ7WxSrBIT/kmAyqJgq/DEPvdX4jmCtVkuZ1gbxYIChLOVBWkVC
-FCK49BuXECtNy5fzK/GyfouZOVoQgiQ1YfecqzibcwO0t+f68Pvp/s6HESAH5tXY
-PdENDw4c/W/qKaeR87jPq98AJ8Lr4bmjWLjK8/ITtGglnJy8osFz22oR7f6fbWl6
-5LdhJ3giM68WEabQcZkw8cx3RDOzbnL2Kn+PVNHHyp3Wh849AgMBAAGjgeEwgd4w
-DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISoLnpz/+q98wEwYDVR0jBAwwCoAI
-Qj0rJKbBRc4wDgYDVR0PAQH/BAQDAgEGMIGSBgNVHR8EgYowgYcwgYSggYGgf4Z9
-bGRhcDovL2xkYXAuYS10cnVzdC5hdC9vdT1BLVRydXN0LVF1YWwtMDIsbz1BLVRy
-dXN0LGM9QVQ/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdD9iYXNlP29iamVjdGNs
-YXNzPWVpZENlcnRpZmljYXRpb25BdXRob3JpdHkwDQYJKoZIhvcNAQEFBQADggEB
-ABqg1oRs/TZ0hJLJRV/xJglFzgn2fDAXeoVvWnAE09F1d0n+ZorKAKbMfiZ2CuKs
-M0AhU23/5zM90DdrtYWXpa+P8ONALZtHJIqGfVuRKYJq7jY5TpE3yRkTcrp47smp
-WqTwUgG+0aBeU9m+ZtGUFOsBkq+MudD8IZGc7VcLd1n4ltND9ITjX20hu01ju56c
-YC69vFa5hmIccXg/Q3dGEV5Amx8MTQJluG3QvqBOY74yrAFICvK1zsvu+vOGvJQj
-i+PxKlbQdehrV82VDxyfSjpEUADWMGRfE5vg4YBGgfRosh4w7a6ThD2LMLFPmIhy
-P6+VGUBCm2tMDDOo9DVkXFs=
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-01a.cer
new file mode 100644
index 00000000..f9fef65f
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-01a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-02a.cer
new file mode 100644
index 00000000..36a442b8
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-02a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-03a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-03a.cer
new file mode 100644
index 00000000..ab9e0cd7
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-03a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-01a.cer
new file mode 100644
index 00000000..efa28178
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-01a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-03.cer
new file mode 100644
index 00000000..33e77636
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-03.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-SSL-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-SSL-03.cer
new file mode 100644
index 00000000..ee859434
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-SSL-03.cer
@@ -0,0 +1,26 @@
+-----BEGIN CERTIFICATE-----
+MIIEdzCCA1+gAwIBAgIDAmU4MA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
+dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA2MDgxNjIyMDAw
+MFoXDTE2MDgxNjIyMDAwMFowgYcxCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
+dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
+ZXJrZWhyIEdtYkgxFjAUBgNVBAsMDWEtc2lnbi1TU0wtMDMxFjAUBgNVBAMMDWEt
+c2lnbi1TU0wtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDMjPM6
+PqgdPBPV4Efudpytt2Y4GZJfjeRdZo5SCuULDvvL+23xxBWnR3scFvfE1ekHN/YK
+k+2/qhU2B2ntoSNJSyDchNM8YPc9Lx67zZyhQTZgbBzh3IZAVb/hwuRRRV68JCBj
+r3r6v7IbwjH5XcVISdB4szx0z93aAQyKW9QkV+tD5a1vWFETvdHsZeVmDzfqcdsG
+AznPJw+9HrImCsswCWYUgPcFRkPNjj2r2NoyckVN781aWmNTAqJPf/Ckj9l9pUIt
+Vjhy8XNJW4iVDBkkykBXcGSkIau0ypJrRjsD1jKqUTIRZ/y2HlyltmwWi8OuyBLd
+LaHDbjc0b6JmqoivAgMBAAGjgeMwgeAwDwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4E
+CgQIQD6h02K0A90wEwYDVR0jBAwwCoAIRGqVZ1V5EU8wDgYDVR0PAQH/BAQDAgEG
+MIGUBgNVHR8EgYwwgYkwgYaggYOggYCGfmxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQv
+b3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEtVHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJl
+dm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0Y2xhc3M9ZWlkQ2VydGlmaWNhdGlvbkF1
+dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAQEAHKlnV3R9sbXojtONugyazkZCEzmC
+nZF1Dz4cOL0vPzzvS8MVWtG43zAgVI1NT/0ETSWsXD3YfzRi+f+/CxrGn0gwZX2t
+VGx+Z9w5ufiy1vuhxDUPmpos1TbJ4Wv3Une0E7iuHmNLg5qVlKeHWpcU8t1Y0nCt
+eRz34Qm87AVAykta33XST1fYvGoPKsDtn3qx9ye/pcbDvWjPwmqF2UUoql+d5hmJ
+Umgzwezqk4I+FS98BrnaPgC5UVFHg+yUjiUDLjYy7UvDZ5Led6kkLXuzVhQolLvr
+KTrGp5k42PG2MMkw8f6GMF/6yePXgzFMCRN8ReR7J5Htv33SytLRmFRd8g==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-03.cer
new file mode 100644
index 00000000..7e67be95
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-03.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEgzCCA2ugAwIBAgIDAarsMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
+dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MTExMzIzMDAw
+MFoXDTE1MTExMzIzMDAwMFowgZMxCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
+dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
+ZXJrZWhyIEdtYkgxHDAaBgNVBAsME2Etc2lnbi1jb3Jwb3JhdGUtMDMxHDAaBgNV
+BAMME2Etc2lnbi1jb3Jwb3JhdGUtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQCp44qY+AiVXlcnHoKvch9s3ujoWFNktvcteIPwK7s0mb/uxTUW9UIF
+Die9n3AbyTsJE6R3nZYSJVHHi+1DKD72/WEo/B5NOOtd6KUMfJgca1tDmcsIwhFn
+82qkZrbNQwdIIdLe6+nDmjd9UBIaKv7yy1kq20jh09HOK3/bWhafVQE7EAgDfNrn
+8f0JfnnF0EA/La5kkg878L22fh9lRzt8H21THqJPtK4/e9SttjrJnPhFk2/MjAGS
+uaDufG6BV5Hnn7klR5qm5q32ypleLA6Zi4m9jRCVtPd4jRPYM40XpRkrJuFw+lxp
+rejfEZt/SRh1eQXiXDUgtgX8OaIylH9pAgMBAAGjgeMwgeAwDwYDVR0TAQH/BAUw
+AwEB/zARBgNVHQ4ECgQIQj75YZ1a5XIwEwYDVR0jBAwwCoAIRGqVZ1V5EU8wDgYD
+VR0PAQH/BAQDAgEGMIGUBgNVHR8EgYwwgYkwgYaggYOggYCGfmxkYXA6Ly9sZGFw
+LmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEtVHJ1c3QsYz1BVD9j
+ZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0Y2xhc3M9ZWlkQ2Vy
+dGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAQEARu7e1SyBRjlA
+g/thtFwtKQRvopTZKWj2LWpEdvPvwThOvf8Depnas+ly5af8r8YzsqJzfX3XWvhN
+qOOI24g5FmXfCUTq/kbtaeTq/AqV94793IJfcilPnpMOEHMqXNDiRUoAgR/9EVj8
+mDVvL2lLlJzeAltqOD5Bi9QwguaD2/3/E5ymFnqkf1dnlXbo8AhcwPEzReNKn1eM
+Ilg4FwP1bP0HUK3Fyz1UQ/Hncg+MS7c+SkjpNEd4sH7/GdxuQs5Sk7IRwot1+sbX
+3CkkPhSqiUzig9raxJYrtbb2kyiUO8+d5HzRyoP4BNzsdZdPc0gDYweXg5qarHOQ
+16IEOtBmKg==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-01a.cer
new file mode 100644
index 00000000..0c68e593
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-01a.cer
@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIEJjCCAw6gAwIBAgIDAOJEMA0GCSqGSIb3DQEBBQUAMFUxCzAJBgNVBAYTAkFUMRAwDgYDVQQK
+EwdBLVRydXN0MRkwFwYDVQQLExBBLVRydXN0LW5RdWFsLTAxMRkwFwYDVQQDExBBLVRydXN0LW5R
+dWFsLTAxMB4XDTA0MTEzMDIzMDAwMFoXDTA4MTEzMDIzMDAwMFowgZ8xCzAJBgNVBAYTAkFUMUgw
+RgYDVQQKEz9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0
+ZW52ZXJrZWhyIEdtYkgxIjAgBgNVBAsTGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDExIjAgBgNV
+BAMTGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
+AoIBAQDGC65v8rni63DojEBriynPwRqNCp14/SkN5ROkTUGNvLSabfSJV4PKGLTzasPAaChwX0g/
+kebahFM3R7nIyeVx2YB8VRvC4I/spP/mCs5+6pf1N+6Kiq4NcswgNBBfqAteaQIylBMy6HDkjoXY
+X/c+SxjyrqAkeZCK+SHMOraXCO1PZHWbYwleKXf4R2Z6ayEfJ2XWeVuqqon76WHp/POI0RADBchA
+6Vm1ROzSAHz39bay1TZunQXSs3VQ9cE3uQPjN+80efmf0ZgNF0sXsDTssoZg2feTANSOkTGM1bMC
+5xe1hWFL8MZNe4yZ+NSgFN2fofb8BPvyQAW0no2PNA6PAgMBAAGjgbMwgbAwDwYDVR0TAQH/BAUw
+AwEB/zARBgNVHQ4ECgQITp5/1C/JHx8wEwYDVR0jBAwwCoAITlnOxwIyhzAwDgYDVR0PAQH/BAQD
+AgEGMGUGA1UdHwReMFwwWqBYoFaGVGxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1u
+UXVhbC0wMSxvPUEtVHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0PzANBgkqhkiG
+9w0BAQUFAAOCAQEAOtuz2GqnTibk/poCLrdYKpZSrLyfWFsJJpfBYA9HMasnfpJBCHgRHJud6DAO
+xD900Vhmwy66D8dqsN3+fR8Bx8ZMKspnFN1B2Wz7LWOxMaKqP3JolJ/oVwzJRm0afcUMAfAumkc5
+Yqu0nC5qCF9zYY9YbJklh84uEzEg9j85kuRBHOCUc+5MVrnv7WPbirx6c95YFqXBQ0arA5QE9zYq
+MDO8aUYPOWEHgtrVI+kMwELYHqLDX7i9VqsXhgFPeVz1wIV7s/i3budGeHMS6hjnyIc30FqM7CTY
+fcvqVNZliErbjD1k1W1gMgvjLJowNvQC0W7K9/yoQhwTqtNMR4WZwA==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-02a.cer
new file mode 100644
index 00000000..c300891d
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-02a.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEizCCA3OgAwIBAgIDAOSoMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRgwFgYDVQQLDA9BLVRydXN0LVF1
+YWwtMDIxGDAWBgNVBAMMD0EtVHJ1c3QtUXVhbC0wMjAeFw0wNDEyMTQyMzAwMDBa
+Fw0xNDEyMTMyMzAwMDBaMIGfMQswCQYDVQQGEwJBVDFIMEYGA1UECgw/QS1UcnVz
+dCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy
+a2VociBHbWJIMSIwIAYDVQQLDBlhLXNpZ24tY29ycG9yYXRlLWxpZ2h0LTAyMSIw
+IAYDVQQDDBlhLXNpZ24tY29ycG9yYXRlLWxpZ2h0LTAyMIIBIjANBgkqhkiG9w0B
+AQEFAAOCAQ8AMIIBCgKCAQEAk6V4oEauvXgEICqgjTbGHaiDhBVo2nosX23osoKM
+LTkkO/nOCgpdCYpLKgURxwrgHgVh9XT99yxhy6lDwt2rASajj0sQ1fY5BmWVyrXS
+dQ78ISMPb73XaG4M8H7PJFcsVEo9n8veVQwnMY5mSWy0r1IO8n93Bjbmmi4Zt8oS
+p9olWo5/8ByYW8S/AKZuQx+q+bFJv7geuApVjK2iVFe8yQqHhAgDsAsDlMvxDAQ/
+vhrGwHRv8N3sLsjirnbf5S2dGLDjASOMUFvwfLQd7gHH7PV37Xa+aQqa97eE6O4O
+sIhcGRYhoLk/tWTBDapcgHJ0yTtrftuwORVteLUAy0gBNwIDAQABo4HhMIHeMA8G
+A1UdEwEB/wQFMAMBAf8wEQYDVR0OBAoECEkcWDpP6A0DMBMGA1UdIwQMMAqACEI9
+KySmwUXOMA4GA1UdDwEB/wQEAwIBBjCBkgYDVR0fBIGKMIGHMIGEoIGBoH+GfWxk
+YXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1RdWFsLTAyLG89QS1UcnVz
+dCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/YmFzZT9vYmplY3RjbGFz
+cz1laWRDZXJ0aWZpY2F0aW9uQXV0aG9yaXR5MA0GCSqGSIb3DQEBBQUAA4IBAQBH
+opWG7LKmPBvuGjZnRV4KGKzzUYVuxSRS1E0VIUPbVLf5xW2r5uUpR8ud5EpiPrcw
+k6K0dzu2Vb4ZbMIP+6J16S/0qvTp/3A/3q87+nJ+ot+IT8GZFJfSw18th2WmZdzR
+ShbM6sgViPtGsFROCdWeiHl248w2+zG+09sf8Bu3UyvwLRAiiKaxuwVdQ9kc0TL3
+gvv+K5eisWWthQOX2IF2jGSEqoAVwfHhl7bc9Vt7XnJSpQFebHnsIVuV4Mv6w4ww
+86hQPCLLvvV7wWDiBQ8l2FWneX0pNH3Wg+A1TRUoptc+pPDdpoP272MDm4fXyPKV
+7QgIaIK+gXNUj2GGt1K9
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-03.cer
new file mode 100644
index 00000000..2251ca22
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-03.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEjzCCA3egAwIBAgIDAartMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
+dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MTExMzIzMDAw
+MFoXDTE1MTExMzIzMDAwMFowgZ8xCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
+dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
+ZXJrZWhyIEdtYkgxIjAgBgNVBAsMGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDMx
+IjAgBgNVBAMMGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDMwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQC359oitbHkkEgdErRPeBdkcYRK2DLdxfcnn+SI
+umSEYzWVscRTchPKSzb7f1a6EHPbB5WZsGJaUDX9KfTqsJNMo+7bASKk3gsLVxNZ
+qY2t2G+y8HvREYYejDOIzjAkcBQrt+nvuBUlGYVJQjEuyAn18f2vG0Y3VNvZFGKn
+PK8AVycUMk0Uw21RbK3vX5tbbPgQ/kcZkN4czi5VHepMvf6hAwwLoJj+KL9zxm8j
+yPK88qCBKAjMNCpZKsEhyanw1CjYbVmHs45Q5W6FBtqDcS6Iq4mC6TtUPGtCTuoH
+7/JLuhEp075ohp87v3fSlzeLJjBpkUDP9U8Tv7l2euD0t1UVAgMBAAGjgeMwgeAw
+DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQIQZFpHL+t2JgwEwYDVR0jBAwwCoAI
+RGqVZ1V5EU8wDgYDVR0PAQH/BAQDAgEGMIGUBgNVHR8EgYwwgYkwgYaggYOggYCG
+fmxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEt
+VHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0
+Y2xhc3M9ZWlkQ2VydGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOC
+AQEADTRIaQtPwoPS6/TpyBhOw4wAHk/RM4gkLT76URPY2sUHihxqy+8qEElN+f5l
+I61myCP3IFTClflcHVR1QCoMg0ZI5/EcQTI8Dgd5iQkXuVjh3wCj87Ka2Tu7d1K+
+i9VJ4BR/ph/qmPKR7Lx/PtATw/vWo4k2rbt5o1QwixZ7CPt+BF9xCaAC4uL0bB0M
+9M3i9W2ePmqX6WIB3jMkT9FQC0KihPPfw/17KddNi4rFMMEiTyKvJTtTqDnIAwWW
+TqsL1G7oxMMtnnYaKWMQ6gQiOiRzCY7efcAi/3YwUX6ULW5zxqapNs1vqEbSGsQE
+l1eFl67HBZHYAPdoHGUnZF0KaQ==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-01a.cer
new file mode 100644
index 00000000..2d7f1a03
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-01a.cer
@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIEKDCCAxCgAwIBAgIDAOKKMA0GCSqGSIb3DQEBBQUAMFUxCzAJBgNVBAYTAkFUMRAwDgYDVQQK
+EwdBLVRydXN0MRkwFwYDVQQLExBBLVRydXN0LW5RdWFsLTAxMRkwFwYDVQQDExBBLVRydXN0LW5R
+dWFsLTAxMB4XDTA0MTIwNTIzMDAwMFoXDTA4MTEzMDIzMDAwMFowgaExCzAJBgNVBAYTAkFUMUgw
+RgYDVQQKEz9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0
+ZW52ZXJrZWhyIEdtYkgxIzAhBgNVBAsTGmEtc2lnbi1jb3Jwb3JhdGUtbWVkaXVtLTAxMSMwIQYD
+VQQDExphLXNpZ24tY29ycG9yYXRlLW1lZGl1bS0wMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
+AQoCggEBANEbZyIMIXZYBjTj/+3TrNGssRKNNdTedQlWB3vJQWLzeG89Kzmhy1WDX8IqDrMtvpXH
+5w6urK3ZT7HGu2Jldrib8rkEOdE9+uNGRtkP8Kuz//CvdXCbIDvBLqgvWn9a3Sl/rUicPqKwcEcN
+bP2Q0iU6NvvALmoqs93PymfTZlkGOwzUe+O88huXkauGWT/DkJd4JYDNJ0wlaGrJa+OorT4Izk1J
+EipqqedUjsAj4Gq3SKrZKG/H/CkoH9uWTzrzFgg8zQhCES4AClo84XVk//EIv3ABDw4hr+lqV1nF
+eXch9o4mLIe5u045471YLJLmyuCPDopb8U2VUoyldpMx+Y8CAwEAAaOBszCBsDAPBgNVHRMBAf8E
+BTADAQH/MBEGA1UdDgQKBAhOuHKxmCmfZDATBgNVHSMEDDAKgAhOWc7HAjKHMDAOBgNVHQ8BAf8E
+BAMCAQYwZQYDVR0fBF4wXDBaoFigVoZUbGRhcDovL2xkYXAuYS10cnVzdC5hdC9vdT1BLVRydXN0
+LW5RdWFsLTAxLG89QS1UcnVzdCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/MA0GCSqG
+SIb3DQEBBQUAA4IBAQDaukYSeJVxWAh8QShqGqA6Plp9aXCTzwl9hE2gb+/xGPASo+NVQi/sUa0+
+bx29oSJaW6lKzdHQLAx4dwW9XTpJ+0mebB4fQfYHH0lGc1O4au/4O9k+C3SrD6x4WeY9k/SpUFu1
+qjzH+tjta81UWtU7Jve1BhckNwdOFx7cR8fdW+pUQSDV9XnPJfyb+gb9KWhvX+XAbgJoXW1HjJOO
+P5sx6mFhMb3UqAfKQVoAuGbl4+uxIThBTqpICkaaD8WLdukqQjomUMDRbWIf6SblPuOEpPi1G/WM
+qkTkpqX77Wkj08QY/yj5DDrsYJ5NymnWvu7jcoxCFCKvEQ8Q4g7AYKnG
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-02a.cer
new file mode 100644
index 00000000..194d4d7c
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-02a.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEjTCCA3WgAwIBAgIDAOSpMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRgwFgYDVQQLDA9BLVRydXN0LVF1
+YWwtMDIxGDAWBgNVBAMMD0EtVHJ1c3QtUXVhbC0wMjAeFw0wNDEyMTQyMzAwMDBa
+Fw0xNDEyMTMyMzAwMDBaMIGhMQswCQYDVQQGEwJBVDFIMEYGA1UECgw/QS1UcnVz
+dCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy
+a2VociBHbWJIMSMwIQYDVQQLDBphLXNpZ24tY29ycG9yYXRlLW1lZGl1bS0wMjEj
+MCEGA1UEAwwaYS1zaWduLWNvcnBvcmF0ZS1tZWRpdW0tMDIwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQCuaTBb6rHd5JZqAdvpmGIl5ne0Hg6GbpJvBeCI
+U6l9Rs8ebMY6aIS++qJOE9rnJHdfZNzLzduuoWEzEuwm9a/azQThM+eT+xlG/Vcf
+NuOQTTjAuXHLvYQ7WxSrBIT/kmAyqJgq/DEPvdX4jmCtVkuZ1gbxYIChLOVBWkVC
+FCK49BuXECtNy5fzK/GyfouZOVoQgiQ1YfecqzibcwO0t+f68Pvp/s6HESAH5tXY
+PdENDw4c/W/qKaeR87jPq98AJ8Lr4bmjWLjK8/ITtGglnJy8osFz22oR7f6fbWl6
+5LdhJ3giM68WEabQcZkw8cx3RDOzbnL2Kn+PVNHHyp3Wh849AgMBAAGjgeEwgd4w
+DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISoLnpz/+q98wEwYDVR0jBAwwCoAI
+Qj0rJKbBRc4wDgYDVR0PAQH/BAQDAgEGMIGSBgNVHR8EgYowgYcwgYSggYGgf4Z9
+bGRhcDovL2xkYXAuYS10cnVzdC5hdC9vdT1BLVRydXN0LVF1YWwtMDIsbz1BLVRy
+dXN0LGM9QVQ/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdD9iYXNlP29iamVjdGNs
+YXNzPWVpZENlcnRpZmljYXRpb25BdXRob3JpdHkwDQYJKoZIhvcNAQEFBQADggEB
+ABqg1oRs/TZ0hJLJRV/xJglFzgn2fDAXeoVvWnAE09F1d0n+ZorKAKbMfiZ2CuKs
+M0AhU23/5zM90DdrtYWXpa+P8ONALZtHJIqGfVuRKYJq7jY5TpE3yRkTcrp47smp
+WqTwUgG+0aBeU9m+ZtGUFOsBkq+MudD8IZGc7VcLd1n4ltND9ITjX20hu01ju56c
+YC69vFa5hmIccXg/Q3dGEV5Amx8MTQJluG3QvqBOY74yrAFICvK1zsvu+vOGvJQj
+i+PxKlbQdehrV82VDxyfSjpEUADWMGRfE5vg4YBGgfRosh4w7a6ThD2LMLFPmIhy
+P6+VGUBCm2tMDDOo9DVkXFs=
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
index 9766ae26..eebe36cd 100644
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/defaultConf.properties
@@ -28,18 +28,18 @@ AccessController.policyResource=classpath:at/gv/egiz/bku/online/conf/accessContr
# directory where certificates for
# chain constructions can be placed
+#SSL.certDirectory=classpath:at/gv/egiz/bku/online/conf/certs/certStore
SSL.certDirectory=classpath:at/gv/egiz/bku/online/conf/certs/certStore
+
# Directory where trusted CA
# certificates are placed
SSL.caDirectory=classpath:at/gv/egiz/bku/online/conf/certs/CACerts
-
-SSL.doRevocationChecking=true
SSL.sslProtocol=TLS
-SSL.cache.lifetime=3600
-# use authority info access extension to find ca certs.
-SSL.useAIA=true
+# warning do not set the following property to true
+# its intended for debugging and testing only
+SSL.disableAllChecks=false
# ------------ END SSL Config --------------------
diff --git a/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml b/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
index b074da59..4069cdc9 100644
--- a/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
+++ b/BKUOnline/src/main/webapp/WEB-INF/applicationContext.xml
@@ -45,9 +45,13 @@
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/WEB-INF/web.xml b/BKUOnline/src/main/webapp/WEB-INF/web.xml
index 282d4db2..6b2ec35c 100644
--- a/BKUOnline/src/main/webapp/WEB-INF/web.xml
+++ b/BKUOnline/src/main/webapp/WEB-INF/web.xml
@@ -1,97 +1,104 @@
-
+
+ http-security-layer-request
- http://www.apache.org/licenses/LICENSE-2.0
+
+
+ contextConfigLocation
+ /WEB-INF/applicationContext.xml
+
+
+ org.springframework.web.context.ContextLoaderListener
+
+
- 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.
--->
-
- http-security-layer-request
-
-
-
- contextConfigLocation
- /WEB-INF/applicationContext.xml
-
-
-
- org.springframework.web.context.ContextLoaderListener
-
-
-
-
-
-
- at.gv.egiz.bku.online.webapp.SessionTimeout
-
-
- BKUServlet
- at.gv.egiz.bku.online.webapp.BKURequestHandler
-
-
- ResultServlet
- at.gv.egiz.bku.online.webapp.ResultServlet
-
- responseEncoding
- UTF-8
-
-
- expiredPage
-
- expired.html
-
-
-
- BKUServlet
- /http-security-layer-request
-
-
- BKUServlet
- /https-security-layer-request
-
-
- ResultServlet
- /bkuResult
-
-
-
-
-
-
-
- com.sun.xml.ws.transport.http.servlet.WSServletContextListener
-
-
- STALPort
- com.sun.xml.ws.transport.http.servlet.WSServlet
- 1
-
-
- STALPort
- /stal
-
-
-
- index.html
- index.htm
- index.jsp
- default.html
- default.htm
- default.jsp
-
-
- 5
-
+
+
+ at.gv.egiz.bku.online.webapp.SessionTimeout
+
+
+ BKUServlet
+ at.gv.egiz.bku.online.webapp.BKURequestHandler
+
+
+ ResultServlet
+ at.gv.egiz.bku.online.webapp.ResultServlet
+
+ responseEncoding
+ UTF-8
+
+
+ expiredPage
+
+ expired.html
+
+
+
+ HashDataInputServlet
+ at.gv.egiz.bku.online.webapp.HashDataInputServlet
+
+
+ BKUServlet
+ /http-security-layer-request
+
+
+ BKUServlet
+ /https-security-layer-request
+
+
+ ResultServlet
+ /bkuResult
+
+
+ HashDataInputServlet
+ /hashDataInput
+
+
+
+
+
+
+
+
+
+
+ com.sun.xml.ws.transport.http.servlet.WSServletContextListener
+
+
+ STALPort
+ com.sun.xml.ws.transport.http.servlet.WSServlet
+ 1
+
+
+ STALPort
+ /stal
+
+
+
+
+ index.html
+ index.htm
+ index.jsp
+ default.html
+ default.htm
+ default.jsp
+
+
+ 5
+
\ No newline at end of file
diff --git a/BKUOnline/src/test/resources/applicationContext.xml b/BKUOnline/src/test/resources/applicationContext.xml
index 4bb5e8e2..5f2487bf 100644
--- a/BKUOnline/src/test/resources/applicationContext.xml
+++ b/BKUOnline/src/test/resources/applicationContext.xml
@@ -45,9 +45,11 @@
+
+
\ No newline at end of file
--
cgit v1.2.3
From 739ebd0272276e325279001b956517bd2b49e401 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Wed, 8 Oct 2008 15:59:40 +0000
Subject: simpleGUI (header,chipperling removed)
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@86 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../certs/certStore/toBeAdded/A-Trust-Qual-01a.cer | Bin 0 -> 1111 bytes
.../certs/certStore/toBeAdded/A-Trust-Qual-02a.cer | Bin 0 -> 975 bytes
.../certs/certStore/toBeAdded/A-Trust-Qual-03a.cer | Bin 0 -> 975 bytes
.../certStore/toBeAdded/A-Trust-nQual-01a.cer | Bin 0 -> 865 bytes
.../certs/certStore/toBeAdded/A-Trust-nQual-03.cer | Bin 0 -> 979 bytes
.../certs/certStore/toBeAdded/a-sign-SSL-03.cer | 26 ++++++++++++++++++++
.../certStore/toBeAdded/a-sign-corporate-03.cer | 27 +++++++++++++++++++++
.../toBeAdded/a-sign-corporate-light-01a.cer | 21 ++++++++++++++++
.../toBeAdded/a-sign-corporate-light-02a.cer | 27 +++++++++++++++++++++
.../toBeAdded/a-sign-corporate-light-03.cer | 27 +++++++++++++++++++++
.../toBeAdded/a-sign-corporate-medium-01a.cer | 21 ++++++++++++++++
.../toBeAdded/a-sign-corporate-medium-02a.cer | 27 +++++++++++++++++++++
.../certs/certStore/tobeadded/A-Trust-Qual-01a.cer | Bin 1111 -> 0 bytes
.../certs/certStore/tobeadded/A-Trust-Qual-02a.cer | Bin 975 -> 0 bytes
.../certs/certStore/tobeadded/A-Trust-Qual-03a.cer | Bin 975 -> 0 bytes
.../certStore/tobeadded/A-Trust-nQual-01a.cer | Bin 865 -> 0 bytes
.../certs/certStore/tobeadded/A-Trust-nQual-03.cer | Bin 979 -> 0 bytes
.../certs/certStore/tobeadded/a-sign-SSL-03.cer | 26 --------------------
.../certStore/tobeadded/a-sign-corporate-03.cer | 27 ---------------------
.../tobeadded/a-sign-corporate-light-01a.cer | 21 ----------------
.../tobeadded/a-sign-corporate-light-02a.cer | 27 ---------------------
.../tobeadded/a-sign-corporate-light-03.cer | 27 ---------------------
.../tobeadded/a-sign-corporate-medium-01a.cer | 21 ----------------
.../tobeadded/a-sign-corporate-medium-02a.cer | 27 ---------------------
24 files changed, 176 insertions(+), 176 deletions(-)
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-02a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-03a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-nQual-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-nQual-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-SSL-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-02a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-03.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-medium-01a.cer
create mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-medium-02a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-01a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-02a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-03a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-01a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-03.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-SSL-03.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-03.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-01a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-02a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-03.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-01a.cer
delete mode 100644 BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-02a.cer
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-01a.cer
new file mode 100644
index 00000000..f9fef65f
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-01a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-02a.cer
new file mode 100644
index 00000000..36a442b8
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-02a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-03a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-03a.cer
new file mode 100644
index 00000000..ab9e0cd7
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-Qual-03a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-nQual-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-nQual-01a.cer
new file mode 100644
index 00000000..efa28178
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-nQual-01a.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-nQual-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-nQual-03.cer
new file mode 100644
index 00000000..33e77636
Binary files /dev/null and b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/A-Trust-nQual-03.cer differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-SSL-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-SSL-03.cer
new file mode 100644
index 00000000..ee859434
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-SSL-03.cer
@@ -0,0 +1,26 @@
+-----BEGIN CERTIFICATE-----
+MIIEdzCCA1+gAwIBAgIDAmU4MA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
+dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA2MDgxNjIyMDAw
+MFoXDTE2MDgxNjIyMDAwMFowgYcxCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
+dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
+ZXJrZWhyIEdtYkgxFjAUBgNVBAsMDWEtc2lnbi1TU0wtMDMxFjAUBgNVBAMMDWEt
+c2lnbi1TU0wtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDMjPM6
+PqgdPBPV4Efudpytt2Y4GZJfjeRdZo5SCuULDvvL+23xxBWnR3scFvfE1ekHN/YK
+k+2/qhU2B2ntoSNJSyDchNM8YPc9Lx67zZyhQTZgbBzh3IZAVb/hwuRRRV68JCBj
+r3r6v7IbwjH5XcVISdB4szx0z93aAQyKW9QkV+tD5a1vWFETvdHsZeVmDzfqcdsG
+AznPJw+9HrImCsswCWYUgPcFRkPNjj2r2NoyckVN781aWmNTAqJPf/Ckj9l9pUIt
+Vjhy8XNJW4iVDBkkykBXcGSkIau0ypJrRjsD1jKqUTIRZ/y2HlyltmwWi8OuyBLd
+LaHDbjc0b6JmqoivAgMBAAGjgeMwgeAwDwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4E
+CgQIQD6h02K0A90wEwYDVR0jBAwwCoAIRGqVZ1V5EU8wDgYDVR0PAQH/BAQDAgEG
+MIGUBgNVHR8EgYwwgYkwgYaggYOggYCGfmxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQv
+b3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEtVHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJl
+dm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0Y2xhc3M9ZWlkQ2VydGlmaWNhdGlvbkF1
+dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAQEAHKlnV3R9sbXojtONugyazkZCEzmC
+nZF1Dz4cOL0vPzzvS8MVWtG43zAgVI1NT/0ETSWsXD3YfzRi+f+/CxrGn0gwZX2t
+VGx+Z9w5ufiy1vuhxDUPmpos1TbJ4Wv3Une0E7iuHmNLg5qVlKeHWpcU8t1Y0nCt
+eRz34Qm87AVAykta33XST1fYvGoPKsDtn3qx9ye/pcbDvWjPwmqF2UUoql+d5hmJ
+Umgzwezqk4I+FS98BrnaPgC5UVFHg+yUjiUDLjYy7UvDZ5Led6kkLXuzVhQolLvr
+KTrGp5k42PG2MMkw8f6GMF/6yePXgzFMCRN8ReR7J5Htv33SytLRmFRd8g==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-03.cer
new file mode 100644
index 00000000..7e67be95
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-03.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEgzCCA2ugAwIBAgIDAarsMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
+dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MTExMzIzMDAw
+MFoXDTE1MTExMzIzMDAwMFowgZMxCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
+dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
+ZXJrZWhyIEdtYkgxHDAaBgNVBAsME2Etc2lnbi1jb3Jwb3JhdGUtMDMxHDAaBgNV
+BAMME2Etc2lnbi1jb3Jwb3JhdGUtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQCp44qY+AiVXlcnHoKvch9s3ujoWFNktvcteIPwK7s0mb/uxTUW9UIF
+Die9n3AbyTsJE6R3nZYSJVHHi+1DKD72/WEo/B5NOOtd6KUMfJgca1tDmcsIwhFn
+82qkZrbNQwdIIdLe6+nDmjd9UBIaKv7yy1kq20jh09HOK3/bWhafVQE7EAgDfNrn
+8f0JfnnF0EA/La5kkg878L22fh9lRzt8H21THqJPtK4/e9SttjrJnPhFk2/MjAGS
+uaDufG6BV5Hnn7klR5qm5q32ypleLA6Zi4m9jRCVtPd4jRPYM40XpRkrJuFw+lxp
+rejfEZt/SRh1eQXiXDUgtgX8OaIylH9pAgMBAAGjgeMwgeAwDwYDVR0TAQH/BAUw
+AwEB/zARBgNVHQ4ECgQIQj75YZ1a5XIwEwYDVR0jBAwwCoAIRGqVZ1V5EU8wDgYD
+VR0PAQH/BAQDAgEGMIGUBgNVHR8EgYwwgYkwgYaggYOggYCGfmxkYXA6Ly9sZGFw
+LmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEtVHJ1c3QsYz1BVD9j
+ZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0Y2xhc3M9ZWlkQ2Vy
+dGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAQEARu7e1SyBRjlA
+g/thtFwtKQRvopTZKWj2LWpEdvPvwThOvf8Depnas+ly5af8r8YzsqJzfX3XWvhN
+qOOI24g5FmXfCUTq/kbtaeTq/AqV94793IJfcilPnpMOEHMqXNDiRUoAgR/9EVj8
+mDVvL2lLlJzeAltqOD5Bi9QwguaD2/3/E5ymFnqkf1dnlXbo8AhcwPEzReNKn1eM
+Ilg4FwP1bP0HUK3Fyz1UQ/Hncg+MS7c+SkjpNEd4sH7/GdxuQs5Sk7IRwot1+sbX
+3CkkPhSqiUzig9raxJYrtbb2kyiUO8+d5HzRyoP4BNzsdZdPc0gDYweXg5qarHOQ
+16IEOtBmKg==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-01a.cer
new file mode 100644
index 00000000..0c68e593
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-01a.cer
@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIEJjCCAw6gAwIBAgIDAOJEMA0GCSqGSIb3DQEBBQUAMFUxCzAJBgNVBAYTAkFUMRAwDgYDVQQK
+EwdBLVRydXN0MRkwFwYDVQQLExBBLVRydXN0LW5RdWFsLTAxMRkwFwYDVQQDExBBLVRydXN0LW5R
+dWFsLTAxMB4XDTA0MTEzMDIzMDAwMFoXDTA4MTEzMDIzMDAwMFowgZ8xCzAJBgNVBAYTAkFUMUgw
+RgYDVQQKEz9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0
+ZW52ZXJrZWhyIEdtYkgxIjAgBgNVBAsTGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDExIjAgBgNV
+BAMTGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
+AoIBAQDGC65v8rni63DojEBriynPwRqNCp14/SkN5ROkTUGNvLSabfSJV4PKGLTzasPAaChwX0g/
+kebahFM3R7nIyeVx2YB8VRvC4I/spP/mCs5+6pf1N+6Kiq4NcswgNBBfqAteaQIylBMy6HDkjoXY
+X/c+SxjyrqAkeZCK+SHMOraXCO1PZHWbYwleKXf4R2Z6ayEfJ2XWeVuqqon76WHp/POI0RADBchA
+6Vm1ROzSAHz39bay1TZunQXSs3VQ9cE3uQPjN+80efmf0ZgNF0sXsDTssoZg2feTANSOkTGM1bMC
+5xe1hWFL8MZNe4yZ+NSgFN2fofb8BPvyQAW0no2PNA6PAgMBAAGjgbMwgbAwDwYDVR0TAQH/BAUw
+AwEB/zARBgNVHQ4ECgQITp5/1C/JHx8wEwYDVR0jBAwwCoAITlnOxwIyhzAwDgYDVR0PAQH/BAQD
+AgEGMGUGA1UdHwReMFwwWqBYoFaGVGxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1u
+UXVhbC0wMSxvPUEtVHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0PzANBgkqhkiG
+9w0BAQUFAAOCAQEAOtuz2GqnTibk/poCLrdYKpZSrLyfWFsJJpfBYA9HMasnfpJBCHgRHJud6DAO
+xD900Vhmwy66D8dqsN3+fR8Bx8ZMKspnFN1B2Wz7LWOxMaKqP3JolJ/oVwzJRm0afcUMAfAumkc5
+Yqu0nC5qCF9zYY9YbJklh84uEzEg9j85kuRBHOCUc+5MVrnv7WPbirx6c95YFqXBQ0arA5QE9zYq
+MDO8aUYPOWEHgtrVI+kMwELYHqLDX7i9VqsXhgFPeVz1wIV7s/i3budGeHMS6hjnyIc30FqM7CTY
+fcvqVNZliErbjD1k1W1gMgvjLJowNvQC0W7K9/yoQhwTqtNMR4WZwA==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-02a.cer
new file mode 100644
index 00000000..c300891d
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-02a.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEizCCA3OgAwIBAgIDAOSoMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRgwFgYDVQQLDA9BLVRydXN0LVF1
+YWwtMDIxGDAWBgNVBAMMD0EtVHJ1c3QtUXVhbC0wMjAeFw0wNDEyMTQyMzAwMDBa
+Fw0xNDEyMTMyMzAwMDBaMIGfMQswCQYDVQQGEwJBVDFIMEYGA1UECgw/QS1UcnVz
+dCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy
+a2VociBHbWJIMSIwIAYDVQQLDBlhLXNpZ24tY29ycG9yYXRlLWxpZ2h0LTAyMSIw
+IAYDVQQDDBlhLXNpZ24tY29ycG9yYXRlLWxpZ2h0LTAyMIIBIjANBgkqhkiG9w0B
+AQEFAAOCAQ8AMIIBCgKCAQEAk6V4oEauvXgEICqgjTbGHaiDhBVo2nosX23osoKM
+LTkkO/nOCgpdCYpLKgURxwrgHgVh9XT99yxhy6lDwt2rASajj0sQ1fY5BmWVyrXS
+dQ78ISMPb73XaG4M8H7PJFcsVEo9n8veVQwnMY5mSWy0r1IO8n93Bjbmmi4Zt8oS
+p9olWo5/8ByYW8S/AKZuQx+q+bFJv7geuApVjK2iVFe8yQqHhAgDsAsDlMvxDAQ/
+vhrGwHRv8N3sLsjirnbf5S2dGLDjASOMUFvwfLQd7gHH7PV37Xa+aQqa97eE6O4O
+sIhcGRYhoLk/tWTBDapcgHJ0yTtrftuwORVteLUAy0gBNwIDAQABo4HhMIHeMA8G
+A1UdEwEB/wQFMAMBAf8wEQYDVR0OBAoECEkcWDpP6A0DMBMGA1UdIwQMMAqACEI9
+KySmwUXOMA4GA1UdDwEB/wQEAwIBBjCBkgYDVR0fBIGKMIGHMIGEoIGBoH+GfWxk
+YXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1RdWFsLTAyLG89QS1UcnVz
+dCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/YmFzZT9vYmplY3RjbGFz
+cz1laWRDZXJ0aWZpY2F0aW9uQXV0aG9yaXR5MA0GCSqGSIb3DQEBBQUAA4IBAQBH
+opWG7LKmPBvuGjZnRV4KGKzzUYVuxSRS1E0VIUPbVLf5xW2r5uUpR8ud5EpiPrcw
+k6K0dzu2Vb4ZbMIP+6J16S/0qvTp/3A/3q87+nJ+ot+IT8GZFJfSw18th2WmZdzR
+ShbM6sgViPtGsFROCdWeiHl248w2+zG+09sf8Bu3UyvwLRAiiKaxuwVdQ9kc0TL3
+gvv+K5eisWWthQOX2IF2jGSEqoAVwfHhl7bc9Vt7XnJSpQFebHnsIVuV4Mv6w4ww
+86hQPCLLvvV7wWDiBQ8l2FWneX0pNH3Wg+A1TRUoptc+pPDdpoP272MDm4fXyPKV
+7QgIaIK+gXNUj2GGt1K9
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-03.cer
new file mode 100644
index 00000000..2251ca22
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-light-03.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEjzCCA3egAwIBAgIDAartMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
+dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MTExMzIzMDAw
+MFoXDTE1MTExMzIzMDAwMFowgZ8xCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
+dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
+ZXJrZWhyIEdtYkgxIjAgBgNVBAsMGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDMx
+IjAgBgNVBAMMGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDMwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQC359oitbHkkEgdErRPeBdkcYRK2DLdxfcnn+SI
+umSEYzWVscRTchPKSzb7f1a6EHPbB5WZsGJaUDX9KfTqsJNMo+7bASKk3gsLVxNZ
+qY2t2G+y8HvREYYejDOIzjAkcBQrt+nvuBUlGYVJQjEuyAn18f2vG0Y3VNvZFGKn
+PK8AVycUMk0Uw21RbK3vX5tbbPgQ/kcZkN4czi5VHepMvf6hAwwLoJj+KL9zxm8j
+yPK88qCBKAjMNCpZKsEhyanw1CjYbVmHs45Q5W6FBtqDcS6Iq4mC6TtUPGtCTuoH
+7/JLuhEp075ohp87v3fSlzeLJjBpkUDP9U8Tv7l2euD0t1UVAgMBAAGjgeMwgeAw
+DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQIQZFpHL+t2JgwEwYDVR0jBAwwCoAI
+RGqVZ1V5EU8wDgYDVR0PAQH/BAQDAgEGMIGUBgNVHR8EgYwwgYkwgYaggYOggYCG
+fmxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEt
+VHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0
+Y2xhc3M9ZWlkQ2VydGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOC
+AQEADTRIaQtPwoPS6/TpyBhOw4wAHk/RM4gkLT76URPY2sUHihxqy+8qEElN+f5l
+I61myCP3IFTClflcHVR1QCoMg0ZI5/EcQTI8Dgd5iQkXuVjh3wCj87Ka2Tu7d1K+
+i9VJ4BR/ph/qmPKR7Lx/PtATw/vWo4k2rbt5o1QwixZ7CPt+BF9xCaAC4uL0bB0M
+9M3i9W2ePmqX6WIB3jMkT9FQC0KihPPfw/17KddNi4rFMMEiTyKvJTtTqDnIAwWW
+TqsL1G7oxMMtnnYaKWMQ6gQiOiRzCY7efcAi/3YwUX6ULW5zxqapNs1vqEbSGsQE
+l1eFl67HBZHYAPdoHGUnZF0KaQ==
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-medium-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-medium-01a.cer
new file mode 100644
index 00000000..2d7f1a03
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-medium-01a.cer
@@ -0,0 +1,21 @@
+-----BEGIN CERTIFICATE-----
+MIIEKDCCAxCgAwIBAgIDAOKKMA0GCSqGSIb3DQEBBQUAMFUxCzAJBgNVBAYTAkFUMRAwDgYDVQQK
+EwdBLVRydXN0MRkwFwYDVQQLExBBLVRydXN0LW5RdWFsLTAxMRkwFwYDVQQDExBBLVRydXN0LW5R
+dWFsLTAxMB4XDTA0MTIwNTIzMDAwMFoXDTA4MTEzMDIzMDAwMFowgaExCzAJBgNVBAYTAkFUMUgw
+RgYDVQQKEz9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0
+ZW52ZXJrZWhyIEdtYkgxIzAhBgNVBAsTGmEtc2lnbi1jb3Jwb3JhdGUtbWVkaXVtLTAxMSMwIQYD
+VQQDExphLXNpZ24tY29ycG9yYXRlLW1lZGl1bS0wMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
+AQoCggEBANEbZyIMIXZYBjTj/+3TrNGssRKNNdTedQlWB3vJQWLzeG89Kzmhy1WDX8IqDrMtvpXH
+5w6urK3ZT7HGu2Jldrib8rkEOdE9+uNGRtkP8Kuz//CvdXCbIDvBLqgvWn9a3Sl/rUicPqKwcEcN
+bP2Q0iU6NvvALmoqs93PymfTZlkGOwzUe+O88huXkauGWT/DkJd4JYDNJ0wlaGrJa+OorT4Izk1J
+EipqqedUjsAj4Gq3SKrZKG/H/CkoH9uWTzrzFgg8zQhCES4AClo84XVk//EIv3ABDw4hr+lqV1nF
+eXch9o4mLIe5u045471YLJLmyuCPDopb8U2VUoyldpMx+Y8CAwEAAaOBszCBsDAPBgNVHRMBAf8E
+BTADAQH/MBEGA1UdDgQKBAhOuHKxmCmfZDATBgNVHSMEDDAKgAhOWc7HAjKHMDAOBgNVHQ8BAf8E
+BAMCAQYwZQYDVR0fBF4wXDBaoFigVoZUbGRhcDovL2xkYXAuYS10cnVzdC5hdC9vdT1BLVRydXN0
+LW5RdWFsLTAxLG89QS1UcnVzdCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/MA0GCSqG
+SIb3DQEBBQUAA4IBAQDaukYSeJVxWAh8QShqGqA6Plp9aXCTzwl9hE2gb+/xGPASo+NVQi/sUa0+
+bx29oSJaW6lKzdHQLAx4dwW9XTpJ+0mebB4fQfYHH0lGc1O4au/4O9k+C3SrD6x4WeY9k/SpUFu1
+qjzH+tjta81UWtU7Jve1BhckNwdOFx7cR8fdW+pUQSDV9XnPJfyb+gb9KWhvX+XAbgJoXW1HjJOO
+P5sx6mFhMb3UqAfKQVoAuGbl4+uxIThBTqpICkaaD8WLdukqQjomUMDRbWIf6SblPuOEpPi1G/WM
+qkTkpqX77Wkj08QY/yj5DDrsYJ5NymnWvu7jcoxCFCKvEQ8Q4g7AYKnG
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-medium-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-medium-02a.cer
new file mode 100644
index 00000000..194d4d7c
--- /dev/null
+++ b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/toBeAdded/a-sign-corporate-medium-02a.cer
@@ -0,0 +1,27 @@
+-----BEGIN CERTIFICATE-----
+MIIEjTCCA3WgAwIBAgIDAOSpMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJB
+VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
+bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRgwFgYDVQQLDA9BLVRydXN0LVF1
+YWwtMDIxGDAWBgNVBAMMD0EtVHJ1c3QtUXVhbC0wMjAeFw0wNDEyMTQyMzAwMDBa
+Fw0xNDEyMTMyMzAwMDBaMIGhMQswCQYDVQQGEwJBVDFIMEYGA1UECgw/QS1UcnVz
+dCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy
+a2VociBHbWJIMSMwIQYDVQQLDBphLXNpZ24tY29ycG9yYXRlLW1lZGl1bS0wMjEj
+MCEGA1UEAwwaYS1zaWduLWNvcnBvcmF0ZS1tZWRpdW0tMDIwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQCuaTBb6rHd5JZqAdvpmGIl5ne0Hg6GbpJvBeCI
+U6l9Rs8ebMY6aIS++qJOE9rnJHdfZNzLzduuoWEzEuwm9a/azQThM+eT+xlG/Vcf
+NuOQTTjAuXHLvYQ7WxSrBIT/kmAyqJgq/DEPvdX4jmCtVkuZ1gbxYIChLOVBWkVC
+FCK49BuXECtNy5fzK/GyfouZOVoQgiQ1YfecqzibcwO0t+f68Pvp/s6HESAH5tXY
+PdENDw4c/W/qKaeR87jPq98AJ8Lr4bmjWLjK8/ITtGglnJy8osFz22oR7f6fbWl6
+5LdhJ3giM68WEabQcZkw8cx3RDOzbnL2Kn+PVNHHyp3Wh849AgMBAAGjgeEwgd4w
+DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISoLnpz/+q98wEwYDVR0jBAwwCoAI
+Qj0rJKbBRc4wDgYDVR0PAQH/BAQDAgEGMIGSBgNVHR8EgYowgYcwgYSggYGgf4Z9
+bGRhcDovL2xkYXAuYS10cnVzdC5hdC9vdT1BLVRydXN0LVF1YWwtMDIsbz1BLVRy
+dXN0LGM9QVQ/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdD9iYXNlP29iamVjdGNs
+YXNzPWVpZENlcnRpZmljYXRpb25BdXRob3JpdHkwDQYJKoZIhvcNAQEFBQADggEB
+ABqg1oRs/TZ0hJLJRV/xJglFzgn2fDAXeoVvWnAE09F1d0n+ZorKAKbMfiZ2CuKs
+M0AhU23/5zM90DdrtYWXpa+P8ONALZtHJIqGfVuRKYJq7jY5TpE3yRkTcrp47smp
+WqTwUgG+0aBeU9m+ZtGUFOsBkq+MudD8IZGc7VcLd1n4ltND9ITjX20hu01ju56c
+YC69vFa5hmIccXg/Q3dGEV5Amx8MTQJluG3QvqBOY74yrAFICvK1zsvu+vOGvJQj
+i+PxKlbQdehrV82VDxyfSjpEUADWMGRfE5vg4YBGgfRosh4w7a6ThD2LMLFPmIhy
+P6+VGUBCm2tMDDOo9DVkXFs=
+-----END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-01a.cer
deleted file mode 100644
index f9fef65f..00000000
Binary files a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-01a.cer and /dev/null differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-02a.cer
deleted file mode 100644
index 36a442b8..00000000
Binary files a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-02a.cer and /dev/null differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-03a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-03a.cer
deleted file mode 100644
index ab9e0cd7..00000000
Binary files a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-Qual-03a.cer and /dev/null differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-01a.cer
deleted file mode 100644
index efa28178..00000000
Binary files a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-01a.cer and /dev/null differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-03.cer
deleted file mode 100644
index 33e77636..00000000
Binary files a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/A-Trust-nQual-03.cer and /dev/null differ
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-SSL-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-SSL-03.cer
deleted file mode 100644
index ee859434..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-SSL-03.cer
+++ /dev/null
@@ -1,26 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEdzCCA1+gAwIBAgIDAmU4MA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
-VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
-bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
-dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA2MDgxNjIyMDAw
-MFoXDTE2MDgxNjIyMDAwMFowgYcxCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
-dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
-ZXJrZWhyIEdtYkgxFjAUBgNVBAsMDWEtc2lnbi1TU0wtMDMxFjAUBgNVBAMMDWEt
-c2lnbi1TU0wtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDMjPM6
-PqgdPBPV4Efudpytt2Y4GZJfjeRdZo5SCuULDvvL+23xxBWnR3scFvfE1ekHN/YK
-k+2/qhU2B2ntoSNJSyDchNM8YPc9Lx67zZyhQTZgbBzh3IZAVb/hwuRRRV68JCBj
-r3r6v7IbwjH5XcVISdB4szx0z93aAQyKW9QkV+tD5a1vWFETvdHsZeVmDzfqcdsG
-AznPJw+9HrImCsswCWYUgPcFRkPNjj2r2NoyckVN781aWmNTAqJPf/Ckj9l9pUIt
-Vjhy8XNJW4iVDBkkykBXcGSkIau0ypJrRjsD1jKqUTIRZ/y2HlyltmwWi8OuyBLd
-LaHDbjc0b6JmqoivAgMBAAGjgeMwgeAwDwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4E
-CgQIQD6h02K0A90wEwYDVR0jBAwwCoAIRGqVZ1V5EU8wDgYDVR0PAQH/BAQDAgEG
-MIGUBgNVHR8EgYwwgYkwgYaggYOggYCGfmxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQv
-b3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEtVHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJl
-dm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0Y2xhc3M9ZWlkQ2VydGlmaWNhdGlvbkF1
-dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAQEAHKlnV3R9sbXojtONugyazkZCEzmC
-nZF1Dz4cOL0vPzzvS8MVWtG43zAgVI1NT/0ETSWsXD3YfzRi+f+/CxrGn0gwZX2t
-VGx+Z9w5ufiy1vuhxDUPmpos1TbJ4Wv3Une0E7iuHmNLg5qVlKeHWpcU8t1Y0nCt
-eRz34Qm87AVAykta33XST1fYvGoPKsDtn3qx9ye/pcbDvWjPwmqF2UUoql+d5hmJ
-Umgzwezqk4I+FS98BrnaPgC5UVFHg+yUjiUDLjYy7UvDZ5Led6kkLXuzVhQolLvr
-KTrGp5k42PG2MMkw8f6GMF/6yePXgzFMCRN8ReR7J5Htv33SytLRmFRd8g==
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-03.cer
deleted file mode 100644
index 7e67be95..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-03.cer
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEgzCCA2ugAwIBAgIDAarsMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
-VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
-bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
-dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MTExMzIzMDAw
-MFoXDTE1MTExMzIzMDAwMFowgZMxCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
-dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
-ZXJrZWhyIEdtYkgxHDAaBgNVBAsME2Etc2lnbi1jb3Jwb3JhdGUtMDMxHDAaBgNV
-BAMME2Etc2lnbi1jb3Jwb3JhdGUtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
-ggEKAoIBAQCp44qY+AiVXlcnHoKvch9s3ujoWFNktvcteIPwK7s0mb/uxTUW9UIF
-Die9n3AbyTsJE6R3nZYSJVHHi+1DKD72/WEo/B5NOOtd6KUMfJgca1tDmcsIwhFn
-82qkZrbNQwdIIdLe6+nDmjd9UBIaKv7yy1kq20jh09HOK3/bWhafVQE7EAgDfNrn
-8f0JfnnF0EA/La5kkg878L22fh9lRzt8H21THqJPtK4/e9SttjrJnPhFk2/MjAGS
-uaDufG6BV5Hnn7klR5qm5q32ypleLA6Zi4m9jRCVtPd4jRPYM40XpRkrJuFw+lxp
-rejfEZt/SRh1eQXiXDUgtgX8OaIylH9pAgMBAAGjgeMwgeAwDwYDVR0TAQH/BAUw
-AwEB/zARBgNVHQ4ECgQIQj75YZ1a5XIwEwYDVR0jBAwwCoAIRGqVZ1V5EU8wDgYD
-VR0PAQH/BAQDAgEGMIGUBgNVHR8EgYwwgYkwgYaggYOggYCGfmxkYXA6Ly9sZGFw
-LmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEtVHJ1c3QsYz1BVD9j
-ZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0Y2xhc3M9ZWlkQ2Vy
-dGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOCAQEARu7e1SyBRjlA
-g/thtFwtKQRvopTZKWj2LWpEdvPvwThOvf8Depnas+ly5af8r8YzsqJzfX3XWvhN
-qOOI24g5FmXfCUTq/kbtaeTq/AqV94793IJfcilPnpMOEHMqXNDiRUoAgR/9EVj8
-mDVvL2lLlJzeAltqOD5Bi9QwguaD2/3/E5ymFnqkf1dnlXbo8AhcwPEzReNKn1eM
-Ilg4FwP1bP0HUK3Fyz1UQ/Hncg+MS7c+SkjpNEd4sH7/GdxuQs5Sk7IRwot1+sbX
-3CkkPhSqiUzig9raxJYrtbb2kyiUO8+d5HzRyoP4BNzsdZdPc0gDYweXg5qarHOQ
-16IEOtBmKg==
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-01a.cer
deleted file mode 100644
index 0c68e593..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-01a.cer
+++ /dev/null
@@ -1,21 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEJjCCAw6gAwIBAgIDAOJEMA0GCSqGSIb3DQEBBQUAMFUxCzAJBgNVBAYTAkFUMRAwDgYDVQQK
-EwdBLVRydXN0MRkwFwYDVQQLExBBLVRydXN0LW5RdWFsLTAxMRkwFwYDVQQDExBBLVRydXN0LW5R
-dWFsLTAxMB4XDTA0MTEzMDIzMDAwMFoXDTA4MTEzMDIzMDAwMFowgZ8xCzAJBgNVBAYTAkFUMUgw
-RgYDVQQKEz9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0
-ZW52ZXJrZWhyIEdtYkgxIjAgBgNVBAsTGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDExIjAgBgNV
-BAMTGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
-AoIBAQDGC65v8rni63DojEBriynPwRqNCp14/SkN5ROkTUGNvLSabfSJV4PKGLTzasPAaChwX0g/
-kebahFM3R7nIyeVx2YB8VRvC4I/spP/mCs5+6pf1N+6Kiq4NcswgNBBfqAteaQIylBMy6HDkjoXY
-X/c+SxjyrqAkeZCK+SHMOraXCO1PZHWbYwleKXf4R2Z6ayEfJ2XWeVuqqon76WHp/POI0RADBchA
-6Vm1ROzSAHz39bay1TZunQXSs3VQ9cE3uQPjN+80efmf0ZgNF0sXsDTssoZg2feTANSOkTGM1bMC
-5xe1hWFL8MZNe4yZ+NSgFN2fofb8BPvyQAW0no2PNA6PAgMBAAGjgbMwgbAwDwYDVR0TAQH/BAUw
-AwEB/zARBgNVHQ4ECgQITp5/1C/JHx8wEwYDVR0jBAwwCoAITlnOxwIyhzAwDgYDVR0PAQH/BAQD
-AgEGMGUGA1UdHwReMFwwWqBYoFaGVGxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1u
-UXVhbC0wMSxvPUEtVHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0PzANBgkqhkiG
-9w0BAQUFAAOCAQEAOtuz2GqnTibk/poCLrdYKpZSrLyfWFsJJpfBYA9HMasnfpJBCHgRHJud6DAO
-xD900Vhmwy66D8dqsN3+fR8Bx8ZMKspnFN1B2Wz7LWOxMaKqP3JolJ/oVwzJRm0afcUMAfAumkc5
-Yqu0nC5qCF9zYY9YbJklh84uEzEg9j85kuRBHOCUc+5MVrnv7WPbirx6c95YFqXBQ0arA5QE9zYq
-MDO8aUYPOWEHgtrVI+kMwELYHqLDX7i9VqsXhgFPeVz1wIV7s/i3budGeHMS6hjnyIc30FqM7CTY
-fcvqVNZliErbjD1k1W1gMgvjLJowNvQC0W7K9/yoQhwTqtNMR4WZwA==
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-02a.cer
deleted file mode 100644
index c300891d..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-02a.cer
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEizCCA3OgAwIBAgIDAOSoMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJB
-VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
-bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRgwFgYDVQQLDA9BLVRydXN0LVF1
-YWwtMDIxGDAWBgNVBAMMD0EtVHJ1c3QtUXVhbC0wMjAeFw0wNDEyMTQyMzAwMDBa
-Fw0xNDEyMTMyMzAwMDBaMIGfMQswCQYDVQQGEwJBVDFIMEYGA1UECgw/QS1UcnVz
-dCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy
-a2VociBHbWJIMSIwIAYDVQQLDBlhLXNpZ24tY29ycG9yYXRlLWxpZ2h0LTAyMSIw
-IAYDVQQDDBlhLXNpZ24tY29ycG9yYXRlLWxpZ2h0LTAyMIIBIjANBgkqhkiG9w0B
-AQEFAAOCAQ8AMIIBCgKCAQEAk6V4oEauvXgEICqgjTbGHaiDhBVo2nosX23osoKM
-LTkkO/nOCgpdCYpLKgURxwrgHgVh9XT99yxhy6lDwt2rASajj0sQ1fY5BmWVyrXS
-dQ78ISMPb73XaG4M8H7PJFcsVEo9n8veVQwnMY5mSWy0r1IO8n93Bjbmmi4Zt8oS
-p9olWo5/8ByYW8S/AKZuQx+q+bFJv7geuApVjK2iVFe8yQqHhAgDsAsDlMvxDAQ/
-vhrGwHRv8N3sLsjirnbf5S2dGLDjASOMUFvwfLQd7gHH7PV37Xa+aQqa97eE6O4O
-sIhcGRYhoLk/tWTBDapcgHJ0yTtrftuwORVteLUAy0gBNwIDAQABo4HhMIHeMA8G
-A1UdEwEB/wQFMAMBAf8wEQYDVR0OBAoECEkcWDpP6A0DMBMGA1UdIwQMMAqACEI9
-KySmwUXOMA4GA1UdDwEB/wQEAwIBBjCBkgYDVR0fBIGKMIGHMIGEoIGBoH+GfWxk
-YXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1RdWFsLTAyLG89QS1UcnVz
-dCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/YmFzZT9vYmplY3RjbGFz
-cz1laWRDZXJ0aWZpY2F0aW9uQXV0aG9yaXR5MA0GCSqGSIb3DQEBBQUAA4IBAQBH
-opWG7LKmPBvuGjZnRV4KGKzzUYVuxSRS1E0VIUPbVLf5xW2r5uUpR8ud5EpiPrcw
-k6K0dzu2Vb4ZbMIP+6J16S/0qvTp/3A/3q87+nJ+ot+IT8GZFJfSw18th2WmZdzR
-ShbM6sgViPtGsFROCdWeiHl248w2+zG+09sf8Bu3UyvwLRAiiKaxuwVdQ9kc0TL3
-gvv+K5eisWWthQOX2IF2jGSEqoAVwfHhl7bc9Vt7XnJSpQFebHnsIVuV4Mv6w4ww
-86hQPCLLvvV7wWDiBQ8l2FWneX0pNH3Wg+A1TRUoptc+pPDdpoP272MDm4fXyPKV
-7QgIaIK+gXNUj2GGt1K9
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-03.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-03.cer
deleted file mode 100644
index 2251ca22..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-light-03.cer
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEjzCCA3egAwIBAgIDAartMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB
-VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
-bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R
-dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MTExMzIzMDAw
-MFoXDTE1MTExMzIzMDAwMFowgZ8xCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy
-dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52
-ZXJrZWhyIEdtYkgxIjAgBgNVBAsMGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDMx
-IjAgBgNVBAMMGWEtc2lnbi1jb3Jwb3JhdGUtbGlnaHQtMDMwggEiMA0GCSqGSIb3
-DQEBAQUAA4IBDwAwggEKAoIBAQC359oitbHkkEgdErRPeBdkcYRK2DLdxfcnn+SI
-umSEYzWVscRTchPKSzb7f1a6EHPbB5WZsGJaUDX9KfTqsJNMo+7bASKk3gsLVxNZ
-qY2t2G+y8HvREYYejDOIzjAkcBQrt+nvuBUlGYVJQjEuyAn18f2vG0Y3VNvZFGKn
-PK8AVycUMk0Uw21RbK3vX5tbbPgQ/kcZkN4czi5VHepMvf6hAwwLoJj+KL9zxm8j
-yPK88qCBKAjMNCpZKsEhyanw1CjYbVmHs45Q5W6FBtqDcS6Iq4mC6TtUPGtCTuoH
-7/JLuhEp075ohp87v3fSlzeLJjBpkUDP9U8Tv7l2euD0t1UVAgMBAAGjgeMwgeAw
-DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQIQZFpHL+t2JgwEwYDVR0jBAwwCoAI
-RGqVZ1V5EU8wDgYDVR0PAQH/BAQDAgEGMIGUBgNVHR8EgYwwgYkwgYaggYOggYCG
-fmxkYXA6Ly9sZGFwLmEtdHJ1c3QuYXQvb3U9QS1UcnVzdC1uUXVhbC0wMyxvPUEt
-VHJ1c3QsYz1BVD9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0P2Jhc2U/b2JqZWN0
-Y2xhc3M9ZWlkQ2VydGlmaWNhdGlvbkF1dGhvcml0eTANBgkqhkiG9w0BAQUFAAOC
-AQEADTRIaQtPwoPS6/TpyBhOw4wAHk/RM4gkLT76URPY2sUHihxqy+8qEElN+f5l
-I61myCP3IFTClflcHVR1QCoMg0ZI5/EcQTI8Dgd5iQkXuVjh3wCj87Ka2Tu7d1K+
-i9VJ4BR/ph/qmPKR7Lx/PtATw/vWo4k2rbt5o1QwixZ7CPt+BF9xCaAC4uL0bB0M
-9M3i9W2ePmqX6WIB3jMkT9FQC0KihPPfw/17KddNi4rFMMEiTyKvJTtTqDnIAwWW
-TqsL1G7oxMMtnnYaKWMQ6gQiOiRzCY7efcAi/3YwUX6ULW5zxqapNs1vqEbSGsQE
-l1eFl67HBZHYAPdoHGUnZF0KaQ==
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-01a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-01a.cer
deleted file mode 100644
index 2d7f1a03..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-01a.cer
+++ /dev/null
@@ -1,21 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEKDCCAxCgAwIBAgIDAOKKMA0GCSqGSIb3DQEBBQUAMFUxCzAJBgNVBAYTAkFUMRAwDgYDVQQK
-EwdBLVRydXN0MRkwFwYDVQQLExBBLVRydXN0LW5RdWFsLTAxMRkwFwYDVQQDExBBLVRydXN0LW5R
-dWFsLTAxMB4XDTA0MTIwNTIzMDAwMFoXDTA4MTEzMDIzMDAwMFowgaExCzAJBgNVBAYTAkFUMUgw
-RgYDVQQKEz9BLVRydXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0
-ZW52ZXJrZWhyIEdtYkgxIzAhBgNVBAsTGmEtc2lnbi1jb3Jwb3JhdGUtbWVkaXVtLTAxMSMwIQYD
-VQQDExphLXNpZ24tY29ycG9yYXRlLW1lZGl1bS0wMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC
-AQoCggEBANEbZyIMIXZYBjTj/+3TrNGssRKNNdTedQlWB3vJQWLzeG89Kzmhy1WDX8IqDrMtvpXH
-5w6urK3ZT7HGu2Jldrib8rkEOdE9+uNGRtkP8Kuz//CvdXCbIDvBLqgvWn9a3Sl/rUicPqKwcEcN
-bP2Q0iU6NvvALmoqs93PymfTZlkGOwzUe+O88huXkauGWT/DkJd4JYDNJ0wlaGrJa+OorT4Izk1J
-EipqqedUjsAj4Gq3SKrZKG/H/CkoH9uWTzrzFgg8zQhCES4AClo84XVk//EIv3ABDw4hr+lqV1nF
-eXch9o4mLIe5u045471YLJLmyuCPDopb8U2VUoyldpMx+Y8CAwEAAaOBszCBsDAPBgNVHRMBAf8E
-BTADAQH/MBEGA1UdDgQKBAhOuHKxmCmfZDATBgNVHSMEDDAKgAhOWc7HAjKHMDAOBgNVHQ8BAf8E
-BAMCAQYwZQYDVR0fBF4wXDBaoFigVoZUbGRhcDovL2xkYXAuYS10cnVzdC5hdC9vdT1BLVRydXN0
-LW5RdWFsLTAxLG89QS1UcnVzdCxjPUFUP2NlcnRpZmljYXRlcmV2b2NhdGlvbmxpc3Q/MA0GCSqG
-SIb3DQEBBQUAA4IBAQDaukYSeJVxWAh8QShqGqA6Plp9aXCTzwl9hE2gb+/xGPASo+NVQi/sUa0+
-bx29oSJaW6lKzdHQLAx4dwW9XTpJ+0mebB4fQfYHH0lGc1O4au/4O9k+C3SrD6x4WeY9k/SpUFu1
-qjzH+tjta81UWtU7Jve1BhckNwdOFx7cR8fdW+pUQSDV9XnPJfyb+gb9KWhvX+XAbgJoXW1HjJOO
-P5sx6mFhMb3UqAfKQVoAuGbl4+uxIThBTqpICkaaD8WLdukqQjomUMDRbWIf6SblPuOEpPi1G/WM
-qkTkpqX77Wkj08QY/yj5DDrsYJ5NymnWvu7jcoxCFCKvEQ8Q4g7AYKnG
------END CERTIFICATE-----
diff --git a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-02a.cer b/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-02a.cer
deleted file mode 100644
index 194d4d7c..00000000
--- a/BKUOnline/src/main/resources/at/gv/egiz/bku/online/conf/certs/certStore/tobeadded/a-sign-corporate-medium-02a.cer
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEjTCCA3WgAwIBAgIDAOSpMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYDVQQGEwJB
-VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp
-bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRgwFgYDVQQLDA9BLVRydXN0LVF1
-YWwtMDIxGDAWBgNVBAMMD0EtVHJ1c3QtUXVhbC0wMjAeFw0wNDEyMTQyMzAwMDBa
-Fw0xNDEyMTMyMzAwMDBaMIGhMQswCQYDVQQGEwJBVDFIMEYGA1UECgw/QS1UcnVz
-dCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBpbSBlbGVrdHIuIERhdGVudmVy
-a2VociBHbWJIMSMwIQYDVQQLDBphLXNpZ24tY29ycG9yYXRlLW1lZGl1bS0wMjEj
-MCEGA1UEAwwaYS1zaWduLWNvcnBvcmF0ZS1tZWRpdW0tMDIwggEiMA0GCSqGSIb3
-DQEBAQUAA4IBDwAwggEKAoIBAQCuaTBb6rHd5JZqAdvpmGIl5ne0Hg6GbpJvBeCI
-U6l9Rs8ebMY6aIS++qJOE9rnJHdfZNzLzduuoWEzEuwm9a/azQThM+eT+xlG/Vcf
-NuOQTTjAuXHLvYQ7WxSrBIT/kmAyqJgq/DEPvdX4jmCtVkuZ1gbxYIChLOVBWkVC
-FCK49BuXECtNy5fzK/GyfouZOVoQgiQ1YfecqzibcwO0t+f68Pvp/s6HESAH5tXY
-PdENDw4c/W/qKaeR87jPq98AJ8Lr4bmjWLjK8/ITtGglnJy8osFz22oR7f6fbWl6
-5LdhJ3giM68WEabQcZkw8cx3RDOzbnL2Kn+PVNHHyp3Wh849AgMBAAGjgeEwgd4w
-DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISoLnpz/+q98wEwYDVR0jBAwwCoAI
-Qj0rJKbBRc4wDgYDVR0PAQH/BAQDAgEGMIGSBgNVHR8EgYowgYcwgYSggYGgf4Z9
-bGRhcDovL2xkYXAuYS10cnVzdC5hdC9vdT1BLVRydXN0LVF1YWwtMDIsbz1BLVRy
-dXN0LGM9QVQ/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdD9iYXNlP29iamVjdGNs
-YXNzPWVpZENlcnRpZmljYXRpb25BdXRob3JpdHkwDQYJKoZIhvcNAQEFBQADggEB
-ABqg1oRs/TZ0hJLJRV/xJglFzgn2fDAXeoVvWnAE09F1d0n+ZorKAKbMfiZ2CuKs
-M0AhU23/5zM90DdrtYWXpa+P8ONALZtHJIqGfVuRKYJq7jY5TpE3yRkTcrp47smp
-WqTwUgG+0aBeU9m+ZtGUFOsBkq+MudD8IZGc7VcLd1n4ltND9ITjX20hu01ju56c
-YC69vFa5hmIccXg/Q3dGEV5Amx8MTQJluG3QvqBOY74yrAFICvK1zsvu+vOGvJQj
-i+PxKlbQdehrV82VDxyfSjpEUADWMGRfE5vg4YBGgfRosh4w7a6ThD2LMLFPmIhy
-P6+VGUBCm2tMDDOo9DVkXFs=
------END CERTIFICATE-----
--
cgit v1.2.3
From d7a3b8fdb62c881afb87838f2bb03b4c4b58e16d Mon Sep 17 00:00:00 2001
From: clemenso
Date: Wed, 8 Oct 2008 15:59:43 +0000
Subject: simpleGUI (header,chipperling removed)
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@87 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/appletPage.jsp | 16 +-
.../finanzonline/FinanzOnlineLogin/award.gif | Bin 0 -> 8717 bytes
.../finanzonline/FinanzOnlineLogin/bmf_01.gif | Bin 0 -> 2479 bytes
.../finanzonline/FinanzOnlineLogin/bmf_02.gif | Bin 0 -> 5583 bytes
.../finanzonline/FinanzOnlineLogin/browser.js | 165 ++++++
.../FinanzOnlineLogin/buergerkarte.gif | Bin 0 -> 1219 bytes
.../finanzonline/FinanzOnlineLogin/eps-logo.gif | Bin 0 -> 4557 bytes
.../finanzonline/FinanzOnlineLogin/epsa-award.jpg | Bin 0 -> 24106 bytes
.../webapp/finanzonline/FinanzOnlineLogin/fon.css | 553 +++++++++++++++++++++
.../finanzonline/FinanzOnlineLogin/index.css | 101 ++++
BKUOnline/src/main/webapp/finanzonline/iframe.html | 22 +
BKUOnline/src/main/webapp/finanzonline/index.html | 192 +++++++
BKUOnline/src/main/webapp/index.html | 2 +
BKUOnline/src/test/resources/appletTest.html | 2 +-
14 files changed, 1044 insertions(+), 9 deletions(-)
create mode 100644 BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/award.gif
create mode 100644 BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/bmf_01.gif
create mode 100644 BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/bmf_02.gif
create mode 100644 BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/browser.js
create mode 100644 BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/buergerkarte.gif
create mode 100644 BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/eps-logo.gif
create mode 100644 BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/epsa-award.jpg
create mode 100644 BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/fon.css
create mode 100644 BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/index.css
create mode 100644 BKUOnline/src/main/webapp/finanzonline/iframe.html
create mode 100644 BKUOnline/src/main/webapp/finanzonline/index.html
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/appletPage.jsp b/BKUOnline/src/main/webapp/appletPage.jsp
index 5f208a2a..b9225e56 100644
--- a/BKUOnline/src/main/webapp/appletPage.jsp
+++ b/BKUOnline/src/main/webapp/appletPage.jsp
@@ -19,12 +19,12 @@
-
-MOCCA Appletpage
-
+
+ MOCCA Appletpage
+
+
-
-
+
diff --git a/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/award.gif b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/award.gif
new file mode 100644
index 00000000..8807fcf6
Binary files /dev/null and b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/award.gif differ
diff --git a/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/bmf_01.gif b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/bmf_01.gif
new file mode 100644
index 00000000..dd7697a4
Binary files /dev/null and b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/bmf_01.gif differ
diff --git a/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/bmf_02.gif b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/bmf_02.gif
new file mode 100644
index 00000000..961d511e
Binary files /dev/null and b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/bmf_02.gif differ
diff --git a/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/browser.js b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/browser.js
new file mode 100644
index 00000000..6fbf74f0
--- /dev/null
+++ b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/browser.js
@@ -0,0 +1,165 @@
+var BrowserDetect = {
+ init: function () {
+ this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
+ this.version = this.searchVersion(navigator.userAgent)
+ || this.searchVersion(navigator.appVersion)
+ || "an unknown version";
+ this.OS = this.searchString(this.dataOS) || "an unknown OS";
+ },
+ searchString: function (data) {
+ for (var i=0;i");
+ document.write("Sehr geehrter FinanzOnline-Teilnehmer!Die Menüführung in FinanzOnline wurde aus technischen Gründen geändert. Da Sie möglicherweise eine veraltete und nicht mehr dem letzten Sicherheitsstandard entsprechende Version Ihres Webbrowsers verwenden, besteht ab diesem Zeitpunkt die Möglichkeit, dass das Menü in FinanzOnline nicht richtig angezeigt werden kann.
Wir empfehlen daher bereits heute auch zu Ihrer Sicherheit, ein Update auf die aktuell gültige Browserversion durchzuführen. Die unterstützten Webbrowser finden Sie auf der BMF-Homepage unter 'E-Government'/'FinanzOnline'/'Browsereinstellungen' .
");
+
+
+/* document.write("Verwendeter Browser: " + BrowserDetect.browser + " " + BrowserDetect.version + " / " + BrowserDetect.OS);
+ if(BrowserDetect.browser.toLowerCase() == "explorer") {
+ if(eval(BrowserDetect.version) < 6) {
+ document.write(" *** nicht supported *** ");
+ } else {
+ //document.write(" *** supported *** ");
+ }
+ }
+ if(BrowserDetect.browser.toLowerCase() == "opera") {
+ if(eval(BrowserDetect.version) < 9) {
+ document.write(" *** nicht supported *** ");
+ } else {
+ //document.write(" *** supported *** ");
+ }
+ }
+ if(BrowserDetect.browser.toLowerCase() == "firefox") {
+ if(eval(BrowserDetect.version) < 1.5) {
+ document.write(" *** nicht supported *** ");
+ } else {
+ //document.write(" *** supported *** ");
+ }
+ }
+// document.write(" Vorschlag für unterstütze Browser: ");
+// document.write("Internet Explorer 6, PC ");
+// document.write("Internet Explorer 7, PC ");
+// document.write("Firefox (>= 1.5), PC + Mac + Linux ");
+// document.write("Safari (>= 1.3+), Mac (<- WIE TESTEN??) ");
+// document.write("Opera (>= 9), PC + Mac + Linux ");
+// document.write(" ");
+*/
+ document.write("
");
+
+ }
+}
\ No newline at end of file
diff --git a/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/buergerkarte.gif b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/buergerkarte.gif
new file mode 100644
index 00000000..99d5f37e
Binary files /dev/null and b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/buergerkarte.gif differ
diff --git a/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/eps-logo.gif b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/eps-logo.gif
new file mode 100644
index 00000000..6f4ee65c
Binary files /dev/null and b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/eps-logo.gif differ
diff --git a/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/epsa-award.jpg b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/epsa-award.jpg
new file mode 100644
index 00000000..0e68626d
Binary files /dev/null and b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/epsa-award.jpg differ
diff --git a/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/fon.css b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/fon.css
new file mode 100644
index 00000000..f9b7b229
--- /dev/null
+++ b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/fon.css
@@ -0,0 +1,553 @@
+BODY {
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 0px;
+ color : black;
+ background-color : #E8F4FE;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif, sans-serif;
+ font-size:13px;
+ font-weight: normal;
+}
+table.user {
+ background-color: #D6E6F9;
+ width: 100%;
+ font-family:Verdana,Arial,Helv;
+ font-size:13px;
+}
+
+.BUT {
+ HEIGHT: 20px;
+ BORDER:1px solid #000000;
+ TEXT-DECORATION:none;
+ BACKGROUND-IMAGE:url(../graphics/butback.gif);
+}
+
+A {
+ color : #000000;
+}
+
+
+TH.label {
+ padding: 10px;
+ margin-left: 10px;
+ font-size: 13px;
+ font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-weight: bold;
+ color: #D6E6F9;
+ background-color: #006699;
+ vertical-align: top
+}
+
+TH.label_hell {
+ padding : 5px;
+ margin-left : 10px;
+ font-size : 13px;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-weight : bold;
+ color : #000000;
+ background-color : #D6E6F9;
+ vertical-align : top;
+ text-align : left;
+}
+TD.input {
+ padding : 5px;
+ margin-left : 10px;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color : #000000;
+ background-color : #D6E6F9;
+ vertical-align : middle;
+ text-align : right;
+ font-size: 13px;
+}
+
+TD.input_links {
+ padding: 5px;
+ margin-left: 10px;
+ font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color: #000000;
+ background-color: #D6E6F9;
+ vertical-align: bottom;
+ text-align: left;
+ font-size: 13px;
+}
+
+TD.input_center {
+ padding: 5px;
+ margin-left: 10px;
+ font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color: #000000;
+ background-color: #D6E6F9;
+ vertical-align: bottom;
+ text-align: center;
+ font-size: 13px;
+}
+
+TD.input_mitte {
+ padding : 5px;
+ margin-left : 10px;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color : #000000;
+ background-color : #D6E6F9;
+ vertical-align : middle;
+ text-align : left;
+ font-size: 13px;
+}
+
+TD.spacer {
+ padding : 5px;
+ margin-left : 10px;
+ background-color : #D6E6F9;
+ vertical-align : top;
+ font-size: 50%;
+}
+TD.erlaeut2 {
+ padding : 5px;
+ margin-left : 5px;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color : #000000;
+ background-color : #D6E6F9;
+ vertical-align : top;
+ font-size: 13px;
+}
+TD.erlaeut {
+ padding : 5px;
+ margin-left : 10px;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color : #000000;
+ background-color : #D6E6F9;
+ vertical-align : top;
+ font-size: 13px;
+}
+TD.erlaeut_white {
+ margin-left : 10px;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color : #000000;
+ background-color : #D6E5F8;
+ vertical-align : top;
+ font-size: 13px;
+}
+TD.login {
+ padding : 5px;
+ margin-left : 10px;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color : #000000;
+ vertical-align : top;
+ font-size: 13px;
+}
+.tabcap {
+ margin-left : 10px;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-weight : bold;
+ color : #D6E6F9;
+ background-color : #6699CC;
+ font-size : 13px;
+ font-weight : bold;
+ padding : 5px;
+ padding-top:1px;
+ padding-bottom:1px;
+}
+
+INPUT {
+ font-family : Verdana,Arial,Helv;
+ font-size : 8pt;
+ color : #000000;
+}
+
+TD.erlaeut_fett {
+ padding : 5px;
+ margin-left : 10px;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color : #000000;
+ background-color : #D6E6F9;
+ vertical-align : top;
+ font-size : 13px;
+ font-weight : bold;
+}
+
+
+TABLE.normal {
+ width : 100%;
+}
+CAPTION.cap {
+ width : 100%;
+ padding : 10px;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ color : black;
+ background-color : #E8FDFD;
+ font-size : 11pt;
+ font-weight : bold;
+}
+
+H1{
+ color : #D6E6F9;
+ text-align : center;
+ border-left-color: #996666;
+ padding-top: 0px;
+ padding-right: 0px;
+ padding-bottom: 0px;
+ padding-left: 10px;
+ ;
+ border-style: solid;
+ border-top-width: 0px;
+ border-right-width: 0px;
+ border-bottom-width: 0px;
+ border-left-width : 0px;
+ background-color : #006699;
+}
+H2{
+ color : #006699;
+ text-align : center;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ padding-top: 0px;
+ padding-right: 0px;
+ padding-bottom: 0px;
+ padding-left: 10px;
+ font-size : 25px;
+}
+H3{
+ color : #006699;;
+ text-align : center;
+ border-left-color: #996666;
+ padding-top: 0px;
+ padding-right: 0px;
+ padding-bottom: 0px;
+ padding-left: 10px;
+ border-style: solid;
+ border-top-width: 0px;
+ border-right-width: 0px;
+ border-bottom-width: 0px;
+ border-left-width : 0px;
+}
+H3.info_center{
+ color : #006699;
+ text-align : center;
+ padding-top: 0px;
+ padding-right: 0px;
+ padding-bottom: 0px;
+ padding-left: 10px;
+ border-style: solid;
+ border-top-width: 0px;
+ border-right-width: 0px;
+ border-bottom-width: 0px;
+ border-left-width : 0px;
+}
+.inv{
+ color : #D6E6F9;
+ text-align : left;
+ background-color : #006699;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-size : 13px;
+ width: 100%;
+}
+.inv2{
+ color : #D6E6F9;
+ text-align : left;
+ background-color : #006699;
+ font-family : Verdana, Geneva, Arial, Helvetica, sans-serif;
+ font-size : 13px;
+ width: 100%;
+ font-weight: bold;
+}
+H4{
+ color : #006699;
+ text-align : center;
+ border-left-color: #996666;
+ padding-top: 0px;
+ padding-right: 0px;
+ padding-bottom: 0px;
+ padding-left: 10px;
+ border-style: solid;
+ border-top-width: 0px;
+ border-right-width: 0px;
+ border-bottom-width: 0px;
+ border-left-width : 0px;
+}
+H5{
+ color : #006699;
+ text-align : center;
+ border-left-color: #996666;
+ padding-top: 0px;
+ padding-right: 0px;
+ padding-bottom: 0px;
+ padding-left: 10px;
+ border-style: solid;
+ border-top-width: 0px;
+ border-right-width: 0px;
+ border-bottom-width: 0px;
+ border-left-width : 0px;
+}
+
+HR{
+ height: 3px;
+}
+#erlauet{
+ color : #006699;
+ text-align : left;
+ border-left-color: #996666;
+ padding: 5px 5px 5px 5px;
+
+}
+#darkblock{
+ background-color : #99CCFF;
+ text-align : left;
+ padding : 5px 5px 5px 5px;
+font-size : 13px;
+}
+#lightblock{
+ background-color : #D6E6F9;
+ text-align : left;
+ padding : 5px 5px 5px 5px;
+font-size : 13px;
+}
+.versiontext {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 6pt;
+ color: #6b6b6b;
+ font-style: normal;
+ text-decoration: none;
+ text-align: right;
+ padding-right : 5px;
+}
+.navitext {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 7pt;
+ font-weight: bold;
+ color: #000000;
+ font-style: normal;
+ text-decoration: underline;
+}
+.navitext:hover {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 7pt;
+ font-weight: bold;
+ color: black;
+ font-style: normal;
+ text-decoration: underline;
+}
+a.pagelinks {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 9pt;
+ color: #000000;
+}
+a.pagelinks:hover {
+ color: gray;
+}
+
+a.menulinks {
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-size: 10pt;
+ font-weight: normal;
+ color: #000000;
+ font-style: normal;
+ text-decoration: underline;
+}
+a.menulinks:hover {
+ text-decoration: underline;
+}
+.link_dbx
+{
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-weight: normal;
+ text-decoration: underline;
+ color: #000000;
+}
+.link_dbx:hover
+{
+ color: #000000;
+ text-decoration: underline;
+}
+.link_nav
+{
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-weight: normal;
+ text-decoration: underline;
+ color: #000000;
+}
+
+.link_nav:hover
+{
+ color : gray;
+ text-decoration: underline;
+}
+
+.link
+{
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-weight: bold;
+ text-decoration: underline;
+ color: #D6E5F8;
+}
+
+.link:hover
+{
+ color: white;
+}
+
+.link_fett
+{
+ font-family: Verdana, Arial, Helvetica, sans-serif;
+ font-weight: bold;
+ text-decoration: underline;
+ color: #D6E5F8;
+}
+.link_fett:hover
+{
+ color: #000000;
+ text-decoration: underline;
+}
+.header { font-family:Verdana,Arial,Helv; font-size:12px; margin-left:5px; font-weight:bold; text-decoration:none; color:#D6E5F8;}
+
+/* Definitionen für die Meldungen (hostmeld.inc) */
+.meld {
+background-color: white;
+color : black;
+padding: 5px;
+margin: 2px;
+margin-bottom: 10px;
+border: 6px solid;
+}
+.ok {
+border-color: #199919;
+}
+.fehler {
+border-color: #ff4c4c;
+}
+.hinweis {
+border-color: #003399;
+}
+.fehlerfeld {
+color: red;
+font-weight: bolder;
+}
+
+#tabheader {
+ color : #D6E6F9;
+ background-color : #6699CC;
+ font-size : 13px;
+ font-weight : bold;
+ padding : 5px;
+ padding-top:1px;
+ padding-bottom:1px;
+}
+#tab {
+ background-color : #D6E6F9;
+ margin-top: 2px;
+ padding : 5px;
+}
+
+
+/* ================================================================
+This copyright notice must be untouched at all times.
+
+The original version of this stylesheet and the associated (x)html
+is available at http://www.cssplay.co.uk/menus/simple_vertical.html
+Copyright (c) 2005-2007 Stu Nicholls. All rights reserved.
+This stylesheet and the associated (x)html may be modified in any
+way to fit your requirements.
+=================================================================== */
+
+/* Add a margin - for this demo only - and a relative position with a high z-index to make it appear over any element below */
+#menu_container {width:100%; height:22px; z-index:100; background-color: #cccccc;}
+
+/* Get rid of the margin, padding and bullets in the unordered lists */
+#pmenu, #pmenu ul {padding:0; margin:0; list-style-type: none;}
+
+/* Set up the link size, color and borders */
+#pmenu a, #pmenu a:visited {display:block; font-size:10pt; color:#000000; text-decoration:none; text-indent:5px;
+ border:1px solid; border-width:1px 0 1px 1px; border-bottom-color: gray; border-top-color: white;
+ border-left-color: white; border-right-color: gray;
+ min-height:20px;
+ line-height:20px;
+ height:20px;
+ height:auto !important;
+ }
+
+/* Breitenangaben mit child selector: funkt nicht mit IE < 7. */
+#pmenu > li > ul a {width:170px;} /* LVL 1 Diese Selektion haut im IE6 nicht hin */
+#pmenu > li > ul > li > ul a {width:200px;} /* LVL 2 Diese Selektion haut im IE6 nicht hin */
+/* Breitenangaben ohne child selector: für IE6 */
+#pmenu * a { width:100px; }
+#pmenu * * a { width:200px; }
+
+/* Set up the sub level borders */
+#pmenu li ul li a, #pmenu li ul li a:visited {border-width:0 1px 1px 1px;}
+#pmenu li a.enclose, #pmenu li a.enclose:visited {border-width:1px;}
+
+/* Set up the list items */
+#pmenu li {float:left; background:#cccccc;} /* orig: #7484ad;*/
+
+/* For Non-IE browsers and IE7 */
+#pmenu li:hover {position:relative;}
+/* Make the hovered list color persist */
+#pmenu li:hover > a {background:#006699; color:#ffffff;} /* orig: #dfd7ca;*/
+/* Set up the sublevel lists with a position absolute for flyouts and overrun padding. The transparent gif is for IE to work */
+#pmenu li ul {display:none;}
+/* For Non-IE and IE7 make the sublevels visible on list hover. This is all it needs */
+#pmenu li:hover > ul {display:block; position:absolute; top:-11px; left:80px; padding:10px 30px 30px 30px; background:transparent url('../graphics/transparent.gif'); width:120px;}
+/* Position the first sub level beneath the top level liinks */
+#pmenu > li:hover > ul {left:-30px; top:12px;}
+
+/* get rid of the table */
+#pmenu table {position:absolute; border-collapse:collapse; top:0; left:0; z-index:100; font-size:1em;}
+
+/* For IE5.5 and IE6 give the hovered links a position relative and a change of background and foreground color. This is needed to trigger IE to show the sub levels */
+* html #pmenu li a:hover {position:relative; background:#006699; color:#ffffff;} /* IE6: aktiv wenn Link hoovert */
+
+/* For accessibility of the top level menu when tabbing */
+#pmenu li a:active, #pmenu li a:focus {background:#006699; color:#ffffff;} /* IE6: aktiv wenn Link hoovert */
+
+/* Set up the pointers for the sub level indication */
+#pmenu li.fly {background:#cccccc url('../graphics/fly.gif') no-repeat right center;} /* orig: #7484ad;*/
+#pmenu li.drop {background:#cccccc url('../graphics/drop.gif') no-repeat right center;} /* orig: #7484ad;*/
+
+
+/* This lot is for IE5.5 and IE6 ONLY and is necessary to make the sublevels appear */
+
+/* change the drop down levels from display:none; to visibility:hidden; */
+* html #pmenu li ul { visibility:hidden; display:block; position:absolute; top:-11px; left:80px; padding:10px 30px 30px 30px; background:transparent url('../graphics/transparent.gif');}
+
+/* keep the third level+ hidden when you hover on first level link */
+#pmenu li a:hover ul ul{
+visibility:hidden;
+}
+/* keep the fourth level+ hidden when you hover on second level link */
+#pmenu li a:hover ul a:hover ul ul{
+visibility:hidden;
+}
+/* keep the fifth level hidden when you hover on third level link */
+#pmenu li a:hover ul a:hover ul a:hover ul ul{
+visibility:hidden;
+}
+/* keep the sixth level hidden when you hover on fourth level link */
+#pmenu li a:hover ul a:hover ul a:hover ul a:hover ul ul {
+visibility:hidden;
+}
+
+/* make the second level visible when hover on first level link and position it */
+#pmenu li a:hover ul {
+visibility:visible; left:-30px; top:14px; lef\t:-31px; to\p:15px;
+}
+
+/* make the third level visible when you hover over second level link and position it and all further levels */
+#pmenu li a:hover ul a:hover ul{
+visibility:visible; top:-11px; left:80px;
+}
+/* make the fourth level visible when you hover over third level link */
+#pmenu li a:hover ul a:hover ul a:hover ul {
+visibility:visible;
+}
+/* make the fifth level visible when you hover over fourth level link */
+#pmenu li a:hover ul a:hover ul a:hover ul a:hover ul {
+visibility:visible;
+}
+/* make the sixth level visible when you hover over fifth level link */
+#pmenu li a:hover ul a:hover ul a:hover ul a:hover ul a:hover ul {
+visibility:visible;
+}
+/* If you can see the pattern in the above IE5.5 and IE6 style then you can add as many sub levels as you like */
+
+@media print {
+ #menu_container, #hd, #np {display: none;}
+ #div_teiln {min-width: 20%;}
+ h1, h2, h3, h4, h5 {color: black;}
+}
diff --git a/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/index.css b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/index.css
new file mode 100644
index 00000000..2b7cee82
--- /dev/null
+++ b/BKUOnline/src/main/webapp/finanzonline/FinanzOnlineLogin/index.css
@@ -0,0 +1,101 @@
+ #leftcontent {
+ position: absolute;
+ left:10px;
+ top:120px;
+ width:210px;
+ border:0px solid #000;
+ }
+ #centercontent {
+ margin-left: 229px;
+ margin-right:229px;
+ margin-top: -2px;
+ /*
+ IE5x PC mis-implements the box model. Because of that we sometimes have
+ to perform a little CSS trickery to get pixel-perfect display across browsers.
+ The following bit of code was proposed by Tantek Celik, and it preys upon a CSS
+ parsing bug in IE5x PC that will prematurly close a style rule when it runs
+ into the string "\"}\"". After that string appears in a rule, then, we can override
+ previously set attribute values and only browsers without the parse bug will
+ recognize the new values. So any of the name-value pairs above this comment
+ that we need to override for browsers with correct box-model implementations
+ will be listed below.
+
+ We use the voice-family property because it is likely to be used very infrequently,
+ and where it is used it will be set on the body tag. So the second voice-family value
+ of "inherit" will override our bogus "\"}\"" value and allow the proper value to
+ cascade down from the body tag.
+
+ The style rule immediately following this rule offers another chance for CSS2
+ aware browsers to pick up the values meant for correct box-model implementations.
+ It uses a CSS2 selector that will be ignored by IE5x PC.
+
+ Read more at http://www.glish.com/css/hacks.asp
+
+
+ voice-family: "\"}\"";
+ voice-family: inherit;
+ margin-left: 201px;
+ margin-right:201px;*/
+ }
+ html>body #centercontent {
+ margin-left: 231px;
+ margin-right:231px;
+ }
+ #rightcontent {
+ position: absolute;
+ right:10px;
+ top:120px;
+ width:210px;
+ }
+ #banner {
+ height:120px;
+ }
+ html>body #banner {
+ height:120px;
+ }
+ #rightcontent p {
+ font-size:10px
+ }
+ #tabheader {
+ color : #D6E6F9;
+ background-color : #6699CC;
+ font-size : 13px;
+ font-weight : bold;
+ padding : 5px;
+ padding-top:1px;
+ padding-bottom:1px;
+ }
+ #tab {
+ background-color : #D6E6F9;
+ margin-top: 2px;
+ padding : 5px;
+ }
+ #navlist {
+ padding: 0px;
+ margin: 0px;
+ width: 100%;
+ background-color: #6699cc;
+ }
+ #navlist li {
+ list-style: none;
+ margin: 0;
+ padding: 0.25em;
+ padding-top: 0.3em;
+ padding-bottom: 0.3em;
+ border-bottom: 1px solid white;
+ }
+ a.nb {
+ font-family:Verdana,Arial,Helv;
+ font-size:12px;
+ margin-left:5px;
+ font-weight:bold;
+ text-decoration:underline;
+ color:#D6E6F9;
+ }
+ a.nb:hover {
+ color:white;
+ }
+
+ @media print {
+ #rightcontent {display: none;}
+ }
diff --git a/BKUOnline/src/main/webapp/finanzonline/iframe.html b/BKUOnline/src/main/webapp/finanzonline/iframe.html
new file mode 100644
index 00000000..ac2f6c93
--- /dev/null
+++ b/BKUOnline/src/main/webapp/finanzonline/iframe.html
@@ -0,0 +1,22 @@
+
+
+
+ bkuiframe
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/finanzonline/index.html b/BKUOnline/src/main/webapp/finanzonline/index.html
new file mode 100644
index 00000000..d47e8e63
--- /dev/null
+++ b/BKUOnline/src/main/webapp/finanzonline/index.html
@@ -0,0 +1,192 @@
+
+
+
+ FinanzOnline Login
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/BKUOnline/src/main/webapp/index.html b/BKUOnline/src/main/webapp/index.html
index 8f1a338e..bf8b3ae0 100644
--- a/BKUOnline/src/main/webapp/index.html
+++ b/BKUOnline/src/main/webapp/index.html
@@ -49,6 +49,8 @@
TestRequest
Security Layer Request
+FinanzOnline
+FinanzOnline Demo Integration
STAL Service
STAL Service Endpoint Information
diff --git a/BKUOnline/src/test/resources/appletTest.html b/BKUOnline/src/test/resources/appletTest.html
index bf24a2c9..71f09a93 100644
--- a/BKUOnline/src/test/resources/appletTest.html
+++ b/BKUOnline/src/test/resources/appletTest.html
@@ -22,7 +22,7 @@
width=380 height=160>
-
+
--
cgit v1.2.3
From 144c0133dcb107b30799a310ba51460d6479358d Mon Sep 17 00:00:00 2001
From: wbauer
Date: Thu, 9 Oct 2008 13:14:45 +0000
Subject: Added an smcc retry function to make smartcard access more robust.
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@89 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../bku/online/webapp/HashDataInputServlet.java | 13 +++++++-
BKUOnline/src/main/webapp/finanzonline/iframe.html | 2 +-
BKUOnline/src/main/webapp/multiHashDataInput.html | 37 ++++++++++++++++++++++
3 files changed, 50 insertions(+), 2 deletions(-)
create mode 100644 BKUOnline/src/main/webapp/multiHashDataInput.html
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java
index 59766586..df338c4a 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java
@@ -5,11 +5,15 @@ import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.Reader;
import java.io.Writer;
+import java.net.MalformedURLException;
+import java.net.URL;
import java.util.List;
+import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.xml.namespace.QName;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -17,10 +21,12 @@ import org.apache.commons.logging.LogFactory;
import at.gv.egiz.bku.binding.BindingProcessor;
import at.gv.egiz.bku.binding.Id;
import at.gv.egiz.bku.binding.IdFactory;
+import at.gv.egiz.bku.online.applet.BKUApplet;
import at.gv.egiz.bku.slexceptions.SLRuntimeException;
import at.gv.egiz.bku.utils.StreamUtil;
import at.gv.egiz.stal.HashDataInput;
import at.gv.egiz.stal.STAL;
+import at.gv.egiz.stal.service.STALService;
import at.gv.egiz.stal.service.impl.STALRequestBroker;
import at.gv.egiz.stal.service.impl.STALRequestBrokerImpl;
import at.gv.egiz.stal.service.impl.STALServiceImpl;
@@ -30,6 +36,7 @@ public class HashDataInputServlet extends SpringBKUServlet {
private static Log log = LogFactory.getLog(HashDataInputServlet.class);
public HashDataInputServlet() {
+
}
private STALRequestBroker getSTAL(Id id) {
@@ -64,12 +71,16 @@ public class HashDataInputServlet extends SpringBKUServlet {
List hdi = rb.getHashDataInput();
log.debug("Got hashdata list with " + hdi.size() + " entries");
String param = req.getParameter("number");
+ if ((param == null) && (hdi.size() > 1)) {
+ resp.sendRedirect("multiHashDataInput.html");
+ return;
+ }
int num = 0;
if (param != null) {
log.debug("Got request for hashdata#" + num);
num = Integer.parseInt(param);
}
- if ((hdi.size() <= num) || (num < 0)){
+ if ((hdi.size() <= num) || (num < 0)) {
log.warn("Requested hashdatainput exceeds listsize");
resp.sendError(-1);
return;
diff --git a/BKUOnline/src/main/webapp/finanzonline/iframe.html b/BKUOnline/src/main/webapp/finanzonline/iframe.html
index ac2f6c93..144640ce 100644
--- a/BKUOnline/src/main/webapp/finanzonline/iframe.html
+++ b/BKUOnline/src/main/webapp/finanzonline/iframe.html
@@ -12,7 +12,7 @@
-
+
diff --git a/BKUOnline/src/main/webapp/multiHashDataInput.html b/BKUOnline/src/main/webapp/multiHashDataInput.html
new file mode 100644
index 00000000..bb03f8ce
--- /dev/null
+++ b/BKUOnline/src/main/webapp/multiHashDataInput.html
@@ -0,0 +1,37 @@
+
+
+
+
+
+
Mehrere Signaturedaten
+
+
+
+
+
Diese Signatur enthält mehrere Datenobjekte.
+Die Anzeige dieser wird derzeit nicht unterstützt !
+
+
+
\ No newline at end of file
--
cgit v1.2.3
From 32d579c45b0fc8a99e4f9b71164415fa09e2d79f Mon Sep 17 00:00:00 2001
From: wbauer
Date: Thu, 9 Oct 2008 15:18:40 +0000
Subject: Introduced SL Request parameters to customize Applet layout
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@92 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../egiz/bku/online/webapp/BKURequestHandler.java | 136 ++++++++++++++-------
BKUOnline/src/main/webapp/HTTP-ohne.html | 6 +
BKUOnline/src/main/webapp/appletPage.jsp | 9 +-
3 files changed, 107 insertions(+), 44 deletions(-)
(limited to 'BKUOnline')
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 544bbc99..6f3b9d7f 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
@@ -16,6 +16,9 @@
*/
package at.gv.egiz.bku.online.webapp;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Locale;
@@ -32,6 +35,7 @@ import org.apache.commons.logging.LogFactory;
import at.gv.egiz.bku.binding.HTTPBindingProcessor;
import at.gv.egiz.bku.binding.HttpUtil;
import at.gv.egiz.bku.binding.IdFactory;
+import at.gv.egiz.bku.utils.StreamUtil;
import at.gv.egiz.org.apache.tomcat.util.http.AcceptLanguage;
/**
@@ -40,51 +44,99 @@ import at.gv.egiz.org.apache.tomcat.util.http.AcceptLanguage;
*/
public class BKURequestHandler extends SpringBKUServlet {
- public final static String REDIRECT_URL = "appletPage.jsp";
+ public final static String REDIRECT_URL = "appletPage.jsp";
- protected Log log = LogFactory.getLog(BKURequestHandler.class);
+ protected Log log = LogFactory.getLog(BKURequestHandler.class);
- protected void doPost(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, java.io.IOException {
- log.debug("Got new request");
- String lang = req.getHeader("Accept-Language");
- Locale locale = AcceptLanguage.getLocale(lang);
- log.debug("Using locale: " + locale);
- HttpSession session = req.getSession();
- if (session != null) {
- log.warn("Already a session with id: "+session.getId()+ " active, deleting this one");
- getBindingProcessorManager().removeBindingProcessor(IdFactory.getInstance().createId(session.getId()));
- }
- String id = req.getSession(true).getId();
- log.debug("Using session id: " + id);
- HTTPBindingProcessor bindingProcessor;
+ private static String getStringFromStream(InputStream is, String encoding) throws IOException {
+ if (is == null) {
+ return null;
+ }
+ if (encoding == null) {
+ encoding = HttpUtil.DEFAULT_CHARSET;
+ }
+ ByteArrayOutputStream os = new ByteArrayOutputStream();
+ StreamUtil.copyStream(is, os);
+ return new String(os.toByteArray(), encoding);
+ }
+
+
+ protected void doPost(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, java.io.IOException {
+ log.debug("Got new request");
+ HttpSession session = req.getSession();
+ String lang = req.getHeader("Accept-Language");
+ Locale locale = AcceptLanguage.getLocale(lang);
+ log.debug("Using locale: " + locale);
- bindingProcessor = (HTTPBindingProcessor) getBindingProcessorManager()
- .createBindingProcessor(req.getRequestURL().toString(), id, locale);
+ if (session != null) {
+ log.warn("Already a session with id: " + session.getId()
+ + " active, deleting this one");
+ getBindingProcessorManager().removeBindingProcessor(
+ IdFactory.getInstance().createId(session.getId()));
+ }
+ String id = req.getSession(true).getId();
+ log.debug("Using session id: " + id);
+ HTTPBindingProcessor bindingProcessor;
- Map headerMap = new HashMap();
- for (Enumeration headerName = req.getHeaderNames(); headerName
- .hasMoreElements();) {
- String header = headerName.nextElement();
- if (header != null) {
- headerMap.put(header, req.getHeader(header));
- }
- }
- String charset = req.getCharacterEncoding();
- String contentType = req.getContentType();
- if (charset != null) {
- contentType += ";" + charset;
- }
- headerMap.put(HttpUtil.HTTP_HEADER_CONTENT_TYPE, contentType);
- bindingProcessor.setHTTPHeaders(headerMap);
- bindingProcessor.consumeRequestStream(req.getInputStream());
- req.getInputStream().close();
- getBindingProcessorManager().process(bindingProcessor);
- resp.sendRedirect(REDIRECT_URL);
- }
+ bindingProcessor = (HTTPBindingProcessor) getBindingProcessorManager()
+ .createBindingProcessor(req.getRequestURL().toString(), id, locale);
- protected void doGet(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, java.io.IOException {
- doPost(req, resp);
- }
+ Map headerMap = new HashMap();
+ for (Enumeration headerName = req.getHeaderNames(); headerName
+ .hasMoreElements();) {
+ String header = headerName.nextElement();
+ if (header != null) {
+ headerMap.put(header, req.getHeader(header));
+ }
+ }
+ String charset = req.getCharacterEncoding();
+ String contentType = req.getContentType();
+ if (charset != null) {
+ contentType += ";" + charset;
+ }
+ headerMap.put(HttpUtil.HTTP_HEADER_CONTENT_TYPE, contentType);
+ bindingProcessor.setHTTPHeaders(headerMap);
+ bindingProcessor.consumeRequestStream(req.getInputStream());
+ req.getInputStream().close();
+ getBindingProcessorManager().process(bindingProcessor);
+
+ log.trace("Trying to find applet parameters in request");
+ String width = getStringFromStream(bindingProcessor.getFormData("appletWidth"), charset);
+ String height = getStringFromStream(bindingProcessor.getFormData("appletHeight"), charset);
+ String background = getStringFromStream(bindingProcessor.getFormData("appletBackground"), charset);
+ if (width != null) {
+ try {
+ log.trace("Found applet width parameter: " + width);
+ int wI = Integer.parseInt(width);
+ session.setAttribute("appletWidth", wI);
+ } catch (NumberFormatException nfe) {
+ log.warn(nfe);
+ }
+ }
+ if (height != null) {
+ try {
+ log.trace("Found applet height parameter: " + height);
+ int hI = Integer.parseInt(height);
+ session.setAttribute("appletHeight", hI);
+ } catch (NumberFormatException nfe) {
+ log.warn(nfe);
+ }
+ }
+ if (background != null) {
+ try {
+ log.trace("Found applet background parameter: " + background);
+ session.setAttribute("appletBackground", background);
+ } catch (NumberFormatException nfe) {
+ log.warn(nfe);
+ }
+ }
+
+ resp.sendRedirect(REDIRECT_URL);
+ }
+
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, java.io.IOException {
+ doPost(req, resp);
+ }
}
diff --git a/BKUOnline/src/main/webapp/HTTP-ohne.html b/BKUOnline/src/main/webapp/HTTP-ohne.html
index f61081cc..1923113e 100644
--- a/BKUOnline/src/main/webapp/HTTP-ohne.html
+++ b/BKUOnline/src/main/webapp/HTTP-ohne.html
@@ -86,6 +86,12 @@ legend {
-->
+Applet Width
+
Applet Height
+
Applet Background
+
diff --git a/BKUOnline/src/main/webapp/appletPage.jsp b/BKUOnline/src/main/webapp/appletPage.jsp
index 59dc2ad5..11f46dca 100644
--- a/BKUOnline/src/main/webapp/appletPage.jsp
+++ b/BKUOnline/src/main/webapp/appletPage.jsp
@@ -42,7 +42,7 @@
height :<%= height %>
};
var parameters = {
- background : <%= backgroundImg %>,
+ background : '<%= backgroundImg %>',
WSDL_URL :'../stal?wsdl',
SessionID : '<%= session.getId() %>',
redirectURL : '../bkuResult'
diff --git a/BKUOnline/src/main/webapp/index.html b/BKUOnline/src/main/webapp/index.html
index bf8b3ae0..8f1a338e 100644
--- a/BKUOnline/src/main/webapp/index.html
+++ b/BKUOnline/src/main/webapp/index.html
@@ -49,8 +49,6 @@
TestRequest
Security Layer Request
-FinanzOnline
-FinanzOnline Demo Integration
STAL Service
STAL Service Endpoint Information
--
cgit v1.2.3
From 520f2a4ee9ae69a06e5355028f5d62ee173cd484 Mon Sep 17 00:00:00 2001
From: wbauer
Date: Fri, 10 Oct 2008 09:42:51 +0000
Subject: git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@98
8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/appletPage.jsp | 31 ++++++++++++++++++++-----------
1 file changed, 20 insertions(+), 11 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/appletPage.jsp b/BKUOnline/src/main/webapp/appletPage.jsp
index 11f46dca..6c4aee58 100644
--- a/BKUOnline/src/main/webapp/appletPage.jsp
+++ b/BKUOnline/src/main/webapp/appletPage.jsp
@@ -19,15 +19,24 @@
-
- MOCCA Appletpage
-
-
+
+MOCCA Appletpage
+
+
+
+
+
-<% int width= session.getAttribute("appletWidth") == null ? 190 : (Integer)session.getAttribute("appletWidth");
- int height=session.getAttribute("appletHeight") == null ? 130 : (Integer)session.getAttribute("appletHeight");
- String backgroundImg = (String) session.getAttribute("appletBackground");
+<%
+ int width = session.getAttribute("appletWidth") == null
+ ? 190
+ : (Integer) session.getAttribute("appletWidth");
+ int height = session.getAttribute("appletHeight") == null
+ ? 130
+ : (Integer) session.getAttribute("appletHeight");
+ String backgroundImg = (String) session
+ .getAttribute("appletBackground");
%>
@@ -29,19 +29,18 @@
<%
- int width = session.getAttribute("appletWidth") == null
- ? 190
- : (Integer) session.getAttribute("appletWidth");
- int height = session.getAttribute("appletHeight") == null
- ? 130
- : (Integer) session.getAttribute("appletHeight");
- String backgroundImg = (String) session
- .getAttribute("appletBackground");
+ int width = session.getAttribute("appletWidth") == null ? 190
+ : (Integer) session.getAttribute("appletWidth");
+ int height = session.getAttribute("appletHeight") == null ? 130
+ : (Integer) session.getAttribute("appletHeight");
+ String backgroundImg = (String) session.getAttribute("appletBackground");
+ String guiStyle = (String) session.getAttribute("appletGuiStyle");
+ String hashDataDisplay = (String) session.getAttribute("appletHashDataDisplay");
%>
--
cgit v1.2.3
From 036dd1a8054c5dc818d01e238eb9480d67da478d Mon Sep 17 00:00:00 2001
From: clemenso
Date: Thu, 30 Oct 2008 17:43:40 +0000
Subject: Help Icon
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@130 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/appletPage.jsp | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/appletPage.jsp b/BKUOnline/src/main/webapp/appletPage.jsp
index ffb67828..8ddbed13 100644
--- a/BKUOnline/src/main/webapp/appletPage.jsp
+++ b/BKUOnline/src/main/webapp/appletPage.jsp
@@ -52,9 +52,10 @@
var parameters = {
GuiStyle : '<%=guiStyle%>',
Background : '<%=backgroundImg%>',
- WSDL_URL : '../stal?wsdl',
- HashDataDisplay : '<%=hashDataDisplay%>',
- HashDataURL : '../hashDataInput',
+ WSDL_URL :'../stal?wsdl',
+ HelpURL : '../help',
+ HashDataDisplay : 'external',
+ HashDataURL : '../hashDataInput',
SessionID : '<%=session.getId()%>',
RedirectURL : '../bkuResult'
};
--
cgit v1.2.3
From 303785457ead44437f357910cd46f03865095c3a Mon Sep 17 00:00:00 2001
From: clemenso
Date: Fri, 31 Oct 2008 12:33:52 +0000
Subject: License
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@133 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../bku/online/webapp/HashDataInputServlet.java | 271 +++++++++++----------
.../gv/egiz/bku/online/webapp/ShutdownHandler.java | 17 ++
.../service/impl/RequestBrokerSTALFactory.java | 4 -
.../egiz/stal/service/impl/STALRequestBroker.java | 5 +-
.../stal/service/impl/STALRequestBrokerImpl.java | 5 +-
.../gv/egiz/stal/service/impl/STALServiceImpl.java | 5 +-
6 files changed, 164 insertions(+), 143 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java
index b2d6c21f..c095fcc8 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/HashDataInputServlet.java
@@ -1,127 +1,144 @@
-package at.gv.egiz.bku.online.webapp;
-
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
-import java.io.Reader;
-import java.io.Writer;
-import java.util.List;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import at.gv.egiz.bku.binding.BindingProcessor;
-import at.gv.egiz.bku.binding.Id;
-import at.gv.egiz.bku.binding.IdFactory;
-import at.gv.egiz.bku.slexceptions.SLRuntimeException;
-import at.gv.egiz.bku.utils.StreamUtil;
-import at.gv.egiz.stal.HashDataInput;
-import at.gv.egiz.stal.STAL;
-import at.gv.egiz.stal.service.impl.STALRequestBroker;
-
-public class HashDataInputServlet extends SpringBKUServlet {
-
- private static Log log = LogFactory.getLog(HashDataInputServlet.class);
-
- public HashDataInputServlet() {
-
- }
-
- private STALRequestBroker getSTAL(Id id) {
- BindingProcessor bp = getBindingProcessorManager().getBindingProcessor(id);
- if (bp == null) {
- return null;
- }
- STAL stal = bp.getSTAL();
- if (stal instanceof STALRequestBroker) {
- return (STALRequestBroker) stal;
- } else {
- throw new SLRuntimeException("Unexpected STAL type");
- }
- }
-
- private static boolean isMSIE(HttpServletRequest req) {
- String useragent = req.getHeader("User-Agent");
- String user = useragent.toLowerCase();
- return (user.indexOf("msie") != -1);
- }
-
- @Override
- protected void doGet(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, IOException {
- if ((req.getSession() == null) && (req.getSession().getId() != null)) {
- log.warn("Got request for hashdatainput without session info");
- resp.sendRedirect("expired.html");
- return;
- }
- Id sessionId = IdFactory.getInstance().createId(req.getSession().getId());
- log.debug("Got request for hashdata for session " + sessionId);
- STALRequestBroker rb = getSTAL(sessionId);
- if (rb == null) {
- log.info("STAL instance not found for session: " + sessionId);
- resp.sendRedirect("expired.html");
- return;
- }
- List hdi = rb.getHashDataInput();
- log.debug("Got hashdata list with " + hdi.size() + " entries");
- String param = req.getParameter("refId");
- log.debug("Got request for refId:" + param);
- if ((param == null) && (hdi.size() > 1)) {
- resp.sendRedirect("multiHashDataInput.html");
- return;
- }
-
- if ((param == null) && (hdi.size() == 1)) {
- param = hdi.get(0).getReferenceId();
- log.debug("Request parameter not set, setting to: " + param);
- }
- for (HashDataInput hd : hdi) {
- if (hd.getReferenceId().equals(param)) {
- log.debug("Found hashdatainput for refId:" + param);
- resp.setContentType(hd.getMimeType());
-
- String charSet = hd.getEncoding();
- if (charSet == null) {
- charSet = "UTF-8";
- }
- resp.setCharacterEncoding(charSet);
- if (isMSIE(req)) {
- String fileExt = hd.getMimeType().equalsIgnoreCase("text/plain") ? ".txt"
- : ".xhtml";
- if (fileExt.equals(".xhtml")) {
- if (req.getParameter("ieCType") == null) {
- resp.sendRedirect("ieView.html");
- return;
- } else {
- resp.setContentType(req.getParameter("ieCType"));
- if (req.getParameter("ieCType").equals("application/xhtml+xml")) {
- resp.addHeader("content-disposition", "attachment; filename="
- + param + ".xhtml");
- }
- }
- }
- }
- Reader r = new InputStreamReader(hd.getHashDataInput(), charSet);
- Writer w = new OutputStreamWriter(resp.getOutputStream(), charSet);
- StreamUtil.copyStream(r, w);
- w.flush();
- return;
-
- }
- }
- log.error("Cannot find hashdata for id:" + param);
- resp.sendError(404);
- return;
- }
-
- @Override
- protected void doPost(HttpServletRequest req, HttpServletResponse resp)
- throws ServletException, IOException {
- doGet(req, resp);
- }
-
-}
+/*
+ * 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.online.webapp;
+
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.OutputStreamWriter;
+import java.io.Reader;
+import java.io.Writer;
+import java.util.List;
+
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import at.gv.egiz.bku.binding.BindingProcessor;
+import at.gv.egiz.bku.binding.Id;
+import at.gv.egiz.bku.binding.IdFactory;
+import at.gv.egiz.bku.slexceptions.SLRuntimeException;
+import at.gv.egiz.bku.utils.StreamUtil;
+import at.gv.egiz.stal.HashDataInput;
+import at.gv.egiz.stal.STAL;
+import at.gv.egiz.stal.service.impl.STALRequestBroker;
+
+public class HashDataInputServlet extends SpringBKUServlet {
+
+ private static Log log = LogFactory.getLog(HashDataInputServlet.class);
+
+ public HashDataInputServlet() {
+
+ }
+
+ private STALRequestBroker getSTAL(Id id) {
+ BindingProcessor bp = getBindingProcessorManager().getBindingProcessor(id);
+ if (bp == null) {
+ return null;
+ }
+ STAL stal = bp.getSTAL();
+ if (stal instanceof STALRequestBroker) {
+ return (STALRequestBroker) stal;
+ } else {
+ throw new SLRuntimeException("Unexpected STAL type");
+ }
+ }
+
+ private static boolean isMSIE(HttpServletRequest req) {
+ String useragent = req.getHeader("User-Agent");
+ String user = useragent.toLowerCase();
+ return (user.indexOf("msie") != -1);
+ }
+
+ @Override
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, IOException {
+ if ((req.getSession() == null) && (req.getSession().getId() != null)) {
+ log.warn("Got request for hashdatainput without session info");
+ resp.sendRedirect("expired.html");
+ return;
+ }
+ Id sessionId = IdFactory.getInstance().createId(req.getSession().getId());
+ log.debug("Got request for hashdata for session " + sessionId);
+ STALRequestBroker rb = getSTAL(sessionId);
+ if (rb == null) {
+ log.info("STAL instance not found for session: " + sessionId);
+ resp.sendRedirect("expired.html");
+ return;
+ }
+ List hdi = rb.getHashDataInput();
+ log.debug("Got hashdata list with " + hdi.size() + " entries");
+ String param = req.getParameter("refId");
+ log.debug("Got request for refId:" + param);
+ if ((param == null) && (hdi.size() > 1)) {
+ resp.sendRedirect("multiHashDataInput.html");
+ return;
+ }
+
+ if ((param == null) && (hdi.size() == 1)) {
+ param = hdi.get(0).getReferenceId();
+ log.debug("Request parameter not set, setting to: " + param);
+ }
+ for (HashDataInput hd : hdi) {
+ if (hd.getReferenceId().equals(param)) {
+ log.debug("Found hashdatainput for refId:" + param);
+ resp.setContentType(hd.getMimeType());
+
+ String charSet = hd.getEncoding();
+ if (charSet == null) {
+ charSet = "UTF-8";
+ }
+ resp.setCharacterEncoding(charSet);
+ if (isMSIE(req)) {
+ String fileExt = hd.getMimeType().equalsIgnoreCase("text/plain") ? ".txt"
+ : ".xhtml";
+ if (fileExt.equals(".xhtml")) {
+ if (req.getParameter("ieCType") == null) {
+ resp.sendRedirect("ieView.html");
+ return;
+ } else {
+ resp.setContentType(req.getParameter("ieCType"));
+ if (req.getParameter("ieCType").equals("application/xhtml+xml")) {
+ resp.addHeader("content-disposition", "attachment; filename="
+ + param + ".xhtml");
+ }
+ }
+ }
+ }
+ Reader r = new InputStreamReader(hd.getHashDataInput(), charSet);
+ Writer w = new OutputStreamWriter(resp.getOutputStream(), charSet);
+ StreamUtil.copyStream(r, w);
+ w.flush();
+ return;
+
+ }
+ }
+ log.error("Cannot find hashdata for id:" + param);
+ resp.sendError(404);
+ return;
+ }
+
+ @Override
+ protected void doPost(HttpServletRequest req, HttpServletResponse resp)
+ throws ServletException, IOException {
+ doGet(req, resp);
+ }
+
+}
diff --git a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/ShutdownHandler.java b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/ShutdownHandler.java
index 86da6c06..741b5e32 100644
--- a/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/ShutdownHandler.java
+++ b/BKUOnline/src/main/java/at/gv/egiz/bku/online/webapp/ShutdownHandler.java
@@ -1,3 +1,20 @@
+/*
+ * 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.online.webapp;
import org.apache.commons.logging.Log;
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 9c4aca28..305d8c1c 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
@@ -14,10 +14,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
package at.gv.egiz.stal.service.impl;
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 63eac311..d1fe045a 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
@@ -14,10 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
+
package at.gv.egiz.stal.service.impl;
import at.gv.egiz.stal.HashDataInput;
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 7f4a9273..e7fb928a 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
@@ -14,10 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
+
package at.gv.egiz.stal.service.impl;
import at.gv.egiz.stal.ErrorResponse;
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 99398fe6..13ec73aa 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
@@ -14,10 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-/*
- * To change this template, choose Tools | Templates
- * and open the template in the editor.
- */
+
package at.gv.egiz.stal.service.impl;
import at.gv.egiz.bku.binding.BindingProcessor;
--
cgit v1.2.3
From 4032e46810c24dc3f013de296a2133f4651696b9 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Fri, 31 Oct 2008 15:30:34 +0000
Subject: local HelpListener card locked/not activated
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@137 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/HTTP-ohne.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/HTTP-ohne.html b/BKUOnline/src/main/webapp/HTTP-ohne.html
index 044432ce..47c059f2 100644
--- a/BKUOnline/src/main/webapp/HTTP-ohne.html
+++ b/BKUOnline/src/main/webapp/HTTP-ohne.html
@@ -98,7 +98,7 @@ legend {
advanced
- GUI Style
+ HashData Display
external
internal
--
cgit v1.2.3
From 1546694a865fb0e3fa2593efdd97d1a0ef47fd3e Mon Sep 17 00:00:00 2001
From: wbauer
Date: Wed, 5 Nov 2008 09:44:32 +0000
Subject: git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@147
8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../main/java/at/gv/egiz/bku/online/webapp/BKURequestHandler.java | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
(limited to 'BKUOnline')
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 9092e3f9..660fee78 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
@@ -139,8 +139,9 @@ public class BKURequestHandler extends SpringBKUServlet {
log.trace("Found applet hash data display parameter: " + hashDataDisplay);
session.setAttribute("appletHashDataDisplay", hashDataDisplay);
}
-
- resp.sendRedirect(REDIRECT_URL);
+ String redirectUrl = REDIRECT_URL+";jsessionid="+session.getId();
+ log.debug("Redirecting to: "+redirectUrl);
+ resp.sendRedirect(redirectUrl);
}
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
--
cgit v1.2.3
From 2cf6fcb31e85b0e3b367121219932ec86b205da8 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Wed, 5 Nov 2008 14:42:05 +0000
Subject: help jsp
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@151 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/WEB-INF/web.xml | 11 ++++++++---
BKUOnline/src/main/webapp/appletPage.jsp | 2 +-
BKUOnline/src/main/webapp/help.jsp | 7 +++++++
BKUOnline/src/main/webapp/helpfiles/index.html | 17 +++++++++++++++++
4 files changed, 33 insertions(+), 4 deletions(-)
create mode 100644 BKUOnline/src/main/webapp/help.jsp
create mode 100644 BKUOnline/src/main/webapp/helpfiles/index.html
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/WEB-INF/web.xml b/BKUOnline/src/main/webapp/WEB-INF/web.xml
index 6b2ec35c..f6fdbefc 100644
--- a/BKUOnline/src/main/webapp/WEB-INF/web.xml
+++ b/BKUOnline/src/main/webapp/WEB-INF/web.xml
@@ -52,6 +52,10 @@
HashDataInputServlet
at.gv.egiz.bku.online.webapp.HashDataInputServlet
+
+ help
+ /help.jsp
+
BKUServlet
/http-security-layer-request
@@ -68,9 +72,10 @@
HashDataInputServlet
/hashDataInput
-
-
-
+
+ help
+ /help/*
+
diff --git a/BKUOnline/src/main/webapp/appletPage.jsp b/BKUOnline/src/main/webapp/appletPage.jsp
index 8ddbed13..ff52fe51 100644
--- a/BKUOnline/src/main/webapp/appletPage.jsp
+++ b/BKUOnline/src/main/webapp/appletPage.jsp
@@ -53,7 +53,7 @@
GuiStyle : '<%=guiStyle%>',
Background : '<%=backgroundImg%>',
WSDL_URL :'../stal?wsdl',
- HelpURL : '../help',
+ HelpURL : '../help/',
HashDataDisplay : 'external',
HashDataURL : '../hashDataInput',
SessionID : '<%=session.getId()%>',
diff --git a/BKUOnline/src/main/webapp/help.jsp b/BKUOnline/src/main/webapp/help.jsp
new file mode 100644
index 00000000..29343171
--- /dev/null
+++ b/BKUOnline/src/main/webapp/help.jsp
@@ -0,0 +1,7 @@
+<%--
+ Document : help
+ Created on : 05.11.2008, 10:55:52
+ Author : Clemens Orthacker
+--%>
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/index.html b/BKUOnline/src/main/webapp/helpfiles/index.html
new file mode 100644
index 00000000..84db59c6
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/index.html
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+ No help item provided
+
+
+
--
cgit v1.2.3
From 8171050e1b21733a5e55ce97ebc9134f6afb1abb Mon Sep 17 00:00:00 2001
From: clemenso
Date: Wed, 5 Nov 2008 17:22:51 +0000
Subject: java.awt.Desktop BROWSE for help and hashdatadisplay
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@152 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/helpfiles/index.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/helpfiles/index.html b/BKUOnline/src/main/webapp/helpfiles/index.html
index 84db59c6..49aaed66 100644
--- a/BKUOnline/src/main/webapp/helpfiles/index.html
+++ b/BKUOnline/src/main/webapp/helpfiles/index.html
@@ -11,7 +11,7 @@
- No help item provided
+ Default help page if no help item is provided
--
cgit v1.2.3
From ff30f2506f1a5942ee60181f4aeffae68722f624 Mon Sep 17 00:00:00 2001
From: mcentner
Date: Thu, 6 Nov 2008 15:40:07 +0000
Subject: Added help files.
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@154 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../webapp/helpfiles/de/error.card.locked.html | 46 +++++++++++
.../main/webapp/helpfiles/de/error.card.locked.png | Bin 0 -> 1325 bytes
.../helpfiles/de/error.card.notactivated.html | 43 +++++++++++
.../helpfiles/de/error.card.notactivated.png | Bin 0 -> 1419 bytes
.../webapp/helpfiles/de/error.cardterminal.html | 42 +++++++++++
.../webapp/helpfiles/de/error.cardterminal.png | Bin 0 -> 1490 bytes
.../src/main/webapp/helpfiles/de/error.pcsc.html | 40 ++++++++++
.../src/main/webapp/helpfiles/de/error.pcsc.png | Bin 0 -> 3684 bytes
.../webapp/helpfiles/de/error.ws.unreachable.html | 39 ++++++++++
.../webapp/helpfiles/de/error.ws.unreachable.png | Bin 0 -> 2561 bytes
.../webapp/helpfiles/de/help.cardnotsupported.html | 47 ++++++++++++
.../webapp/helpfiles/de/help.cardnotsupported.png | Bin 0 -> 1113 bytes
.../src/main/webapp/helpfiles/de/help.cardpin.html | 40 ++++++++++
.../src/main/webapp/helpfiles/de/help.cardpin1.png | Bin 0 -> 1334 bytes
.../src/main/webapp/helpfiles/de/help.cardpin2.png | Bin 0 -> 1324 bytes
BKUOnline/src/main/webapp/helpfiles/de/help.css | 84 +++++++++++++++++++++
.../main/webapp/helpfiles/de/help.insertcard.html | 42 +++++++++++
.../main/webapp/helpfiles/de/help.insertcard.png | Bin 0 -> 1207 bytes
.../src/main/webapp/helpfiles/de/help.retry.html | 40 ++++++++++
.../src/main/webapp/helpfiles/de/help.retry.png | Bin 0 -> 1711 bytes
.../main/webapp/helpfiles/de/help.signpin-1.png | Bin 0 -> 12818 bytes
.../src/main/webapp/helpfiles/de/help.signpin.html | 45 +++++++++++
.../src/main/webapp/helpfiles/de/help.signpin.png | Bin 0 -> 1511 bytes
.../src/main/webapp/helpfiles/de/help.wait.html | 39 ++++++++++
.../src/main/webapp/helpfiles/de/help.wait.png | Bin 0 -> 981 bytes
.../src/main/webapp/helpfiles/de/help.welcome.html | 40 ++++++++++
.../src/main/webapp/helpfiles/de/help.welcome.png | Bin 0 -> 2152 bytes
BKUOnline/src/main/webapp/helpfiles/help.css | 82 ++++++++++++++++++++
28 files changed, 669 insertions(+)
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/error.pcsc.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/error.pcsc.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/error.ws.unreachable.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/error.ws.unreachable.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.cardpin1.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.cardpin2.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.css
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.insertcard.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.insertcard.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.retry.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.retry.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.signpin-1.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.signpin.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.signpin.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.wait.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.wait.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.welcome.html
create mode 100644 BKUOnline/src/main/webapp/helpfiles/de/help.welcome.png
create mode 100644 BKUOnline/src/main/webapp/helpfiles/help.css
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html b/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html
new file mode 100644
index 00000000..6779a27d
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html
@@ -0,0 +1,46 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Fehler: Bürgerkarte ist gesperrt
+
Es stehen keine weiteren Versuche zur Eingabe eines PINs zur Verfügung. Die Bürgerkartenfunktion auf der gesteckten Chipkarte ist gesperrt.
+
Bitte wenden sie sich an den Aussteller der Karte.
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.png b/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.png
new file mode 100644
index 00000000..ed0c7eb1
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.html b/BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.html
new file mode 100644
index 00000000..1dedc7d7
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.html
@@ -0,0 +1,43 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Fehler: Bürgerkartenfunktion ist nicht aktiviert.
+
Die im Kartenleser gesteckte Chipkarte wird unterstützt, jedoch ist die Bürgerkartenfunktion auf der Chipkarte noch nicht aktiviert.
+
Um die gesteckte Chipkarte als Bürgerkate verwenden zu können
+ muss zuerst die
+ Bürgerkartenfunktion auf der Chipkarte aktiviert werden. Für Informationen dazu siehe Aktivierung der Bürgerkartenfunktion auf www.buergerkarte.at .
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.png b/BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.png
new file mode 100644
index 00000000..dd48f92b
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html b/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html
new file mode 100644
index 00000000..f13eb0d8
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html
@@ -0,0 +1,42 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Fehler: Es konnte kein Kartenleser gefunden werden.
+
Für den Zugriff auf die Bürgerkarte ist ein Chipkartenleser erforderlich. Von der Software für den Zugriff auf die Bürgerkarte werden grundsätzlich alle Kartenleser unterstützt, die über die PC/SC-Schnittstelle angesprochen werden können und im Betriebssystem erfolgreich installiert wurden. Es können mehrere unterstützte Kartenleser gleichzeitig angeschlossen werden.
+
Kartenleser die, die nicht über die PC/SC-Schnittstelle angesprochen werden können (z.B. Kartenleser für die nur CT-API-Treiber verfügbar sind) werden nicht unterstützt.
+
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.png b/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.png
new file mode 100644
index 00000000..4276347d
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.pcsc.html b/BKUOnline/src/main/webapp/helpfiles/de/error.pcsc.html
new file mode 100644
index 00000000..da686fec
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/error.pcsc.html
@@ -0,0 +1,40 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Fehler: Es konnte keine PC/SC-Schnittstelle gefunden werden
+
Die Software für den Zugriff auf die Bürgerkarte konnte keine PC/SC-Schnittstelle für den Zugriff auf Kartenleser erkennen. Das Betriebssystem scheint keine PC/SC-Schnittstelle zur Verfügung zu stellen.
+
Unter Betriebssystemen die PCSC-Lite verwenden (Linux u.a.) tritt dieses Problem auch auf, wenn kein Kartenleser angeschlossen ist und daher der entsprechende Dienst nicht gestartet wurde oder wenn die entsprechende Bibliothek nicht zur Verfügung steht (weitere Informationen ).
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.pcsc.png b/BKUOnline/src/main/webapp/helpfiles/de/error.pcsc.png
new file mode 100644
index 00000000..94940733
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/error.pcsc.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.ws.unreachable.html b/BKUOnline/src/main/webapp/helpfiles/de/error.ws.unreachable.html
new file mode 100644
index 00000000..cda5fbe6
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/error.ws.unreachable.html
@@ -0,0 +1,39 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Fehler: Der Server ist nicht erreichbar
+
Die Software zum Zugriff auf die Bürgerkarte konnte den Server nicht erreichen. Möglicherweise besteht derzeit ein Problem mit dem Dienst. Probieren Sie es daher zu einem späteren Zeitpunkt nochmal. Sollte das Problem dauerhaft bestehen, wenden Sie sich bitte an den Betreiber der Anwendung.
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.ws.unreachable.png b/BKUOnline/src/main/webapp/helpfiles/de/error.ws.unreachable.png
new file mode 100644
index 00000000..2570a01f
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/error.ws.unreachable.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.html b/BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.html
new file mode 100644
index 00000000..bc6b4c56
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.html
@@ -0,0 +1,47 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Die Karte wird nicht unterstützt
+
Die im Kartenleser gesteckte Chipkarte wird nicht unterstützt.
+
Bitte stecken Sie eine unterstützte Chipkarte (Bürgerkarte) in den Kartenleser. Derzeit werden die folgenden Chipkarten unterstützt:
+
+
Sind mehrere unterstützte Kartenleser angeschlossen, stecken sie eine unterstützte Chipkarte (Bürgerkarte) in einen der angeschlossenen Kartenleser. Wird die Chipkarte erkannt wechselt die Bildschirmanzeige. Wird die Chipkarte nicht erkannt, wird der Kartenleser möglicherweise nicht unterstützt. Stecken Sie die Chipkarte daher in einen anderen Kartenleser.
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.png b/BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.png
new file mode 100644
index 00000000..23f6e2af
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html b/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html
new file mode 100644
index 00000000..38842065
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html
@@ -0,0 +1,40 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Lesen von Informationen von der Karte
+
Sie werden aufgefordert ihren Karten-PIN bzw. Infobox-PIN (abhängig von der verwendeten Bürgerkarte) einzugeben um das Auslesen von Informationen zur Identifikation (Personenbindung) bzw. Vollmachten zu ermöglichen.
+
Details zu den auf der Bürgerkarte gespeicherten Informationen finden sie auf www.buergerkarte.at .
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin1.png b/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin1.png
new file mode 100644
index 00000000..4e1c2de8
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin1.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin2.png b/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin2.png
new file mode 100644
index 00000000..cc5e599e
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin2.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.css b/BKUOnline/src/main/webapp/helpfiles/de/help.css
new file mode 100644
index 00000000..813e5de4
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.css
@@ -0,0 +1,84 @@
+@charset "UTF-8";
+body {
+ font: 100% Verdana, Arial, Helvetica, sans-serif;
+ background: #666666;
+ margin: 0; /* it's good practice to zero the margin and padding of the body element to account for differing browser defaults */
+ padding: 0;
+ text-align: center; /* this centers the container in IE 5* browsers. The text is then set to the left aligned default in the #container selector */
+ color: #000000;
+}
+
+/* Tips for Elastic layouts
+1. Since the elastic layouts overall sizing is based on the user's default fonts size, they are more unpredictable. Used correctly, they are also more accessible for those that need larger fonts size since the line length remains proportionate.
+2. Sizing of divs in this layout are based on the 100% font size in the body element. If you decrease the text size overall by using a font-size: 80% on the body element or the #container, remember that the entire layout will downsize proportionately. You may want to increase the widths of the various divs to compensate for this.
+3. If font sizing is changed in differing amounts on each div instead of on the overall design (ie: #sidebar1 is given a 70% font size and #mainContent is given an 85% font size), this will proportionately change each of the divs overall size. You may want to adjust based on your final font sizing.
+*/
+.twoColElsLtHdr #container {
+ width: 46em; /* this width will create a container that will fit in an 800px browser window if text is left at browser default font sizes */
+ background: #FFFFFF;
+ margin: 0 auto; /* the auto margins (in conjunction with a width) center the page */
+ border: 1px solid #000000;
+ text-align: left; /* this overrides the text-align: center on the body element. */
+}
+.twoColElsLtHdr #header {
+ background: #DDDDDD;
+ padding: 0 10px; /* this padding matches the left alignment of the elements in the divs that appear beneath it. If an image is used in the #header instead of text, you may want to remove the padding. */
+ font-size: smaller;
+}
+.twoColElsLtHdr #header h1 {
+ margin: 0; /* zeroing the margin of the last element in the #header div will avoid margin collapse - an unexplainable space between divs. If the div has a border around it, this is not necessary as that also avoids the margin collapse */
+ padding: 10px 0; /* using padding instead of margin will allow you to keep the element away from the edges of the div */
+}
+
+/* Tips for sidebar1:
+1. Be aware that if you set a font-size value on this div, the overall width of the div will be adjusted accordingly.
+2. Since we are working in ems, it's best not to use padding on the sidebar itself. It will be added to the width for standards compliant browsers creating an unknown actual width.
+3. Space between the side of the div and the elements within it can be created by placing a left and right margin on those elements as seen in the ".twoColElsLtHdr #sidebar1 p" rule.
+*/
+.twoColElsLtHdr #sidebar1 {
+ float: left;
+ width: 210px;
+ padding: 15px 0; /* top and bottom padding create visual space within this div */
+ background-color: #FFFFFF;
+ font-size: smaller;
+}
+.twoColElsLtHdr #sidebar1 h3, .twoColElsLtHdr #sidebar1 p {
+ margin-left: 10px; /* the left and right margin should be given to every element that will be placed in the side columns */
+ margin-right: 10px;
+}
+
+/* Tips for mainContent:
+1. If you give this #mainContent div a font-size value different than the #sidebar1 div, the margins of the #mainContent div will be based on its font-size and the width of the #sidebar1 div will be based on its font-size. You may wish to adjust the values of these divs.
+2. The space between the mainContent and sidebar1 is created with the left margin on the mainContent div. No matter how much content the sidebar1 div contains, the column space will remain. You can remove this left margin if you want the #mainContent div's text to fill the #sidebar1 space when the content in #sidebar1 ends.
+3. To avoid float drop, you may need to test to determine the approximate maximum image/element size since this layout is based on the user's font sizing combined with the values you set. However, if the user has their browser font size set lower than normal, less space will be available in the #mainContent div than you may see on testing.
+4. In the Internet Explorer Conditional Comment below, the zoom property is used to give the mainContent "hasLayout." This avoids several IE-specific bugs that may occur.
+*/
+.twoColElsLtHdr #mainContent {
+ margin: 0 1.5em 0 15em; /* the right margin can be given in ems or pixels. It creates the space down the right side of the page. */
+}
+.twoColElsLtHdr #footer {
+ clear:both;
+ padding: 0 10px; /* this padding matches the left alignment of the elements in the divs that appear above it. */
+ background:#DDDDDD;
+ font-size: smaller;
+}
+.twoColElsLtHdr #footer p {
+ margin: 0; /* zeroing the margins of the first element in the footer will avoid the possibility of margin collapse - a space between divs */
+ padding: 10px 0; /* padding on this element will create space, just as the the margin would have, without the margin collapse issue */
+}
+
+/* Miscellaneous classes for reuse */
+.fltrt { /* this class can be used to float an element right in your page. The floated element must precede the element it should be next to on the page. */
+ float: right;
+ margin-left: 8px;
+}
+.fltlft { /* this class can be used to float an element left in your page */
+ float: left;
+ margin-right: 8px;
+}
+.clearfloat { /* this class should be placed on a div or break element and should be the final element before the close of a container that should fully contain a float */
+ clear:both;
+ height:0;
+ font-size: 1px;
+ line-height: 0px;
+}
\ No newline at end of file
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.insertcard.html b/BKUOnline/src/main/webapp/helpfiles/de/help.insertcard.html
new file mode 100644
index 00000000..ddaacb34
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.insertcard.html
@@ -0,0 +1,42 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Bitte die Bürgerkarte in den Kartenleser stecken
+
Die Software für den Zugriff auf die Bürgerkarte hat einen oder mehrere unterstützte Kartenleser gefunden.
+
Bitte stecken Sie nun ihre Bürgerkarte in den Kartenleser. Wird die Karte erkannt, welchselt die Bildschirmanzeige.
+
Sollten Sie mehrere Kartenleser angeschlossen haben, wählen Sie einen beliebigen aus. Wird die Karte im ausgewählten Kartenleser nicht erkannt, wird dieser Kartenleser eventuell nicht unterstützt. Probieren Sie es daher in einem anderen Kartenleser nochmal.
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.insertcard.png b/BKUOnline/src/main/webapp/helpfiles/de/help.insertcard.png
new file mode 100644
index 00000000..9930fcb4
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/help.insertcard.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.retry.html b/BKUOnline/src/main/webapp/helpfiles/de/help.retry.html
new file mode 100644
index 00000000..d080017c
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.retry.html
@@ -0,0 +1,40 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Falscher PIN
+
Die eingegebene PIN war falsch. Bitte geben Sie die korrekte PIN ein.
+
Die Anzahl der noch möglichen Versuche wird angezeigt.
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.retry.png b/BKUOnline/src/main/webapp/helpfiles/de/help.retry.png
new file mode 100644
index 00000000..4cab2430
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/help.retry.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.signpin-1.png b/BKUOnline/src/main/webapp/helpfiles/de/help.signpin-1.png
new file mode 100644
index 00000000..1c5c8570
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/help.signpin-1.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.signpin.html b/BKUOnline/src/main/webapp/helpfiles/de/help.signpin.html
new file mode 100644
index 00000000..217e4e50
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.signpin.html
@@ -0,0 +1,45 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Erstellen einer elektronischen Signatur
+
Sie werden aufgefordert ihren Signatur-PIN einzugeben, um eine elektronische Signatur zu erstellen.
+
+
+ Klicken Sie auf 'Signaturdaten anzeigen' um die zu signierenden Daten anzuzeigen.
+ Geben Sie im Formularfeld den Signatur-PIN ein.
+ Klicken Sie auf die Schaltfläche 'Signieren' um die elektronische Signatur zu erstellen.
+
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.signpin.png b/BKUOnline/src/main/webapp/helpfiles/de/help.signpin.png
new file mode 100644
index 00000000..6ffbf8df
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/help.signpin.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.wait.html b/BKUOnline/src/main/webapp/helpfiles/de/help.wait.html
new file mode 100644
index 00000000..be296326
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.wait.html
@@ -0,0 +1,39 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Bitte warten ...
+
Die Software für den Zugriff auf die Bürgerkarte ist damit beschäftigt, einen Befehl auszuführen bzw. auf einen neuen Befehl vom Server zu warten.
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.wait.png b/BKUOnline/src/main/webapp/helpfiles/de/help.wait.png
new file mode 100644
index 00000000..812da0bd
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/help.wait.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.welcome.html b/BKUOnline/src/main/webapp/helpfiles/de/help.welcome.html
new file mode 100644
index 00000000..cef333f1
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.welcome.html
@@ -0,0 +1,40 @@
+
+
+
+
+Untitled Document
+
+
+
+
+
+
+
+
+
+
+
Willkommen
+
Die Anzeige "Willkommen" erfolgt unmittelbar nachdem die Software für den Zugriff auf die Bürgerkarte erfolgreich im Browser geladen wurde.
+
Die Software versucht nun eine Verbindung mit dem Server aufzunehmen um Befehle für den Zugriff auf die Bürgerkarte zu erhalten.
+
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.welcome.png b/BKUOnline/src/main/webapp/helpfiles/de/help.welcome.png
new file mode 100644
index 00000000..0be05a78
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/help.welcome.png differ
diff --git a/BKUOnline/src/main/webapp/helpfiles/help.css b/BKUOnline/src/main/webapp/helpfiles/help.css
new file mode 100644
index 00000000..659f0d65
--- /dev/null
+++ b/BKUOnline/src/main/webapp/helpfiles/help.css
@@ -0,0 +1,82 @@
+@charset "UTF-8";
+body {
+ font: 100% Verdana, Arial, Helvetica, sans-serif;
+ background: #666666;
+ margin: 0; /* it's good practice to zero the margin and padding of the body element to account for differing browser defaults */
+ padding: 0;
+ text-align: center; /* this centers the container in IE 5* browsers. The text is then set to the left aligned default in the #container selector */
+ color: #000000;
+}
+
+/* Tips for Elastic layouts
+1. Since the elastic layouts overall sizing is based on the user's default fonts size, they are more unpredictable. Used correctly, they are also more accessible for those that need larger fonts size since the line length remains proportionate.
+2. Sizing of divs in this layout are based on the 100% font size in the body element. If you decrease the text size overall by using a font-size: 80% on the body element or the #container, remember that the entire layout will downsize proportionately. You may want to increase the widths of the various divs to compensate for this.
+3. If font sizing is changed in differing amounts on each div instead of on the overall design (ie: #sidebar1 is given a 70% font size and #mainContent is given an 85% font size), this will proportionately change each of the divs overall size. You may want to adjust based on your final font sizing.
+*/
+.twoColElsLtHdr #container {
+ width: 46em; /* this width will create a container that will fit in an 800px browser window if text is left at browser default font sizes */
+ background: #FFFFFF;
+ margin: 0 auto; /* the auto margins (in conjunction with a width) center the page */
+ border: 1px solid #000000;
+ text-align: left; /* this overrides the text-align: center on the body element. */
+}
+.twoColElsLtHdr #header {
+ background: #DDDDDD;
+ padding: 0 10px; /* this padding matches the left alignment of the elements in the divs that appear beneath it. If an image is used in the #header instead of text, you may want to remove the padding. */
+}
+.twoColElsLtHdr #header h1 {
+ margin: 0; /* zeroing the margin of the last element in the #header div will avoid margin collapse - an unexplainable space between divs. If the div has a border around it, this is not necessary as that also avoids the margin collapse */
+ padding: 10px 0; /* using padding instead of margin will allow you to keep the element away from the edges of the div */
+}
+
+/* Tips for sidebar1:
+1. Be aware that if you set a font-size value on this div, the overall width of the div will be adjusted accordingly.
+2. Since we are working in ems, it's best not to use padding on the sidebar itself. It will be added to the width for standards compliant browsers creating an unknown actual width.
+3. Space between the side of the div and the elements within it can be created by placing a left and right margin on those elements as seen in the ".twoColElsLtHdr #sidebar1 p" rule.
+*/
+.twoColElsLtHdr #sidebar1 {
+ float: left;
+ width: 210px;
+ padding: 15px 0; /* top and bottom padding create visual space within this div */
+ background-color: #FFFFFF;
+ font-size: smaller;
+}
+.twoColElsLtHdr #sidebar1 h3, .twoColElsLtHdr #sidebar1 p {
+ margin-left: 10px; /* the left and right margin should be given to every element that will be placed in the side columns */
+ margin-right: 10px;
+}
+
+/* Tips for mainContent:
+1. If you give this #mainContent div a font-size value different than the #sidebar1 div, the margins of the #mainContent div will be based on its font-size and the width of the #sidebar1 div will be based on its font-size. You may wish to adjust the values of these divs.
+2. The space between the mainContent and sidebar1 is created with the left margin on the mainContent div. No matter how much content the sidebar1 div contains, the column space will remain. You can remove this left margin if you want the #mainContent div's text to fill the #sidebar1 space when the content in #sidebar1 ends.
+3. To avoid float drop, you may need to test to determine the approximate maximum image/element size since this layout is based on the user's font sizing combined with the values you set. However, if the user has their browser font size set lower than normal, less space will be available in the #mainContent div than you may see on testing.
+4. In the Internet Explorer Conditional Comment below, the zoom property is used to give the mainContent "hasLayout." This avoids several IE-specific bugs that may occur.
+*/
+.twoColElsLtHdr #mainContent {
+ margin: 0 1.5em 0 15em; /* the right margin can be given in ems or pixels. It creates the space down the right side of the page. */
+}
+.twoColElsLtHdr #footer {
+ padding: 0 10px; /* this padding matches the left alignment of the elements in the divs that appear above it. */
+ background:#DDDDDD;
+ font-size: smaller;
+}
+.twoColElsLtHdr #footer p {
+ margin: 0; /* zeroing the margins of the first element in the footer will avoid the possibility of margin collapse - a space between divs */
+ padding: 10px 0; /* padding on this element will create space, just as the the margin would have, without the margin collapse issue */
+}
+
+/* Miscellaneous classes for reuse */
+.fltrt { /* this class can be used to float an element right in your page. The floated element must precede the element it should be next to on the page. */
+ float: right;
+ margin-left: 8px;
+}
+.fltlft { /* this class can be used to float an element left in your page */
+ float: left;
+ margin-right: 8px;
+}
+.clearfloat { /* this class should be placed on a div or break element and should be the final element before the close of a container that should fully contain a float */
+ clear:both;
+ height:0;
+ font-size: 1px;
+ line-height: 0px;
+}
\ No newline at end of file
--
cgit v1.2.3
From b32763de6d1eb184bf30303c5dd896d5ae55ce04 Mon Sep 17 00:00:00 2001
From: mcentner
Date: Thu, 6 Nov 2008 16:05:41 +0000
Subject: Changed help files.
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@155 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.html | 4 ++--
BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html | 4 ++--
BKUOnline/src/main/webapp/helpfiles/de/help.retry.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/help.signpin.html | 4 ++--
6 files changed, 9 insertions(+), 9 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html b/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html
index 6779a27d..b2cc2173 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html
@@ -26,7 +26,7 @@
Fehler: Bürgerkarte ist gesperrt
-
Es stehen keine weiteren Versuche zur Eingabe eines PINs zur Verfügung. Die Bürgerkartenfunktion auf der gesteckten Chipkarte ist gesperrt.
+
Die Bürgerkartenfunktion auf der gesteckten Chipkarte ist gesperrt. Es stehen keine weiteren Versuche zur Eingabe einer PIN zur Verfügung, da zu oft eine falsche PIN eingegeben wurde.
Bitte wenden sie sich an den Aussteller der Karte.
e-card
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.html b/BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.html
index 1dedc7d7..5a0d4235 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.html
@@ -27,9 +27,9 @@
Fehler: Bürgerkartenfunktion ist nicht aktiviert.
Die im Kartenleser gesteckte Chipkarte wird unterstützt, jedoch ist die Bürgerkartenfunktion auf der Chipkarte noch nicht aktiviert.
-
Um die gesteckte Chipkarte als Bürgerkate verwenden zu können
+
Um die gesteckte Chipkarte als Bürgerkarte verwenden zu können,
muss zuerst die
- Bürgerkartenfunktion auf der Chipkarte aktiviert werden. Für Informationen dazu siehe Aktivierung der Bürgerkartenfunktion auf www.buergerkarte.at .
+ Bürgerkartenfunktion aktiviert werden. Für Informationen dazu siehe Aktivierung der Bürgerkartenfunktion auf www.buergerkarte.at .
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html b/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html
index f13eb0d8..ab048f66 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html
@@ -26,7 +26,7 @@
Fehler: Es konnte kein Kartenleser gefunden werden.
-
Für den Zugriff auf die Bürgerkarte ist ein Chipkartenleser erforderlich. Von der Software für den Zugriff auf die Bürgerkarte werden grundsätzlich alle Kartenleser unterstützt, die über die PC/SC-Schnittstelle angesprochen werden können und im Betriebssystem erfolgreich installiert wurden. Es können mehrere unterstützte Kartenleser gleichzeitig angeschlossen werden.
+
Für den Zugriff auf die Bürgerkarte ist ein Chipkartenleser erforderlich. Es werden grundsätzlich alle Kartenleser unterstützt, die über die PC/SC-Schnittstelle angesprochen werden können und im Betriebssystem erfolgreich installiert wurden. Es können mehrere unterstützte Kartenleser gleichzeitig angeschlossen werden.
Kartenleser die, die nicht über die PC/SC-Schnittstelle angesprochen werden können (z.B. Kartenleser für die nur CT-API-Treiber verfügbar sind) werden nicht unterstützt.
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html b/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html
index 38842065..dee9629b 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html
@@ -26,8 +26,8 @@
Hinweis: Das Bildschirmfoto oben kann von der Darstellung in der Webseite abweichen.
-
Lesen von Informationen von der Karte
-
Sie werden aufgefordert ihren Karten-PIN bzw. Infobox-PIN (abhängig von der verwendeten Bürgerkarte) einzugeben um das Auslesen von Informationen zur Identifikation (Personenbindung) bzw. Vollmachten zu ermöglichen.
+
Lesen von Informationen von der Chipkarte
+
Sie werden aufgefordert ihre Karten-PIN bzw. Infobox-PIN (abhängig von der verwendeten Bürgerkarte) einzugeben um das Auslesen von Informationen zur Identifikation (Personenbindung) bzw. Vollmachten zu ermöglichen.
Details zu den auf der Bürgerkarte gespeicherten Informationen finden sie auf www.buergerkarte.at .
-
Falscher PIN
+
Falsche PIN
Die eingegebene PIN war falsch. Bitte geben Sie die korrekte PIN ein.
Die Anzahl der noch möglichen Versuche wird angezeigt.
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.signpin.html b/BKUOnline/src/main/webapp/helpfiles/de/help.signpin.html
index 217e4e50..d67d932b 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/help.signpin.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.signpin.html
@@ -26,11 +26,11 @@
Erstellen einer elektronischen Signatur
-
Sie werden aufgefordert ihren Signatur-PIN einzugeben, um eine elektronische Signatur zu erstellen.
+
Sie werden aufgefordert die Signatur-PIN einzugeben, um eine elektronische Signatur zu erstellen.
Klicken Sie auf 'Signaturdaten anzeigen' um die zu signierenden Daten anzuzeigen.
- Geben Sie im Formularfeld den Signatur-PIN ein.
+ Geben Sie im Formularfeld die Signatur-PIN ein.
Klicken Sie auf die Schaltfläche 'Signieren' um die elektronische Signatur zu erstellen.
--
cgit v1.2.3
From deb715c1cd8604de26156cf2ae709b8cc2f6e772 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Thu, 6 Nov 2008 16:08:34 +0000
Subject: hashdatadisplay
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@156 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/appletPage.jsp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/appletPage.jsp b/BKUOnline/src/main/webapp/appletPage.jsp
index ff52fe51..55b84231 100644
--- a/BKUOnline/src/main/webapp/appletPage.jsp
+++ b/BKUOnline/src/main/webapp/appletPage.jsp
@@ -54,7 +54,7 @@
Background : '<%=backgroundImg%>',
WSDL_URL :'../stal?wsdl',
HelpURL : '../help/',
- HashDataDisplay : 'external',
+ HashDataDisplay : <%=hashDataDisplay%>,
HashDataURL : '../hashDataInput',
SessionID : '<%=session.getId()%>',
RedirectURL : '../bkuResult'
--
cgit v1.2.3
From 0da7f66527121c3c218b6aa1b8592982344c60f7 Mon Sep 17 00:00:00 2001
From: mcentner
Date: Thu, 6 Nov 2008 16:30:00 +0000
Subject: git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@157
8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/help.jsp | 34 ++++++++++++++++++++++++++++------
1 file changed, 28 insertions(+), 6 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/help.jsp b/BKUOnline/src/main/webapp/help.jsp
index 29343171..72781e38 100644
--- a/BKUOnline/src/main/webapp/help.jsp
+++ b/BKUOnline/src/main/webapp/help.jsp
@@ -1,7 +1,29 @@
-<%--
- Document : help
- Created on : 05.11.2008, 10:55:52
- Author : Clemens Orthacker
---%>
+
+<%@ page language="java" contentType="text/html; charset=UTF-8"
+ pageEncoding="UTF-8"%>
+<%@ page import="java.util.Locale"%>
+<%
+ String pathInfo[] = (request.getPathInfo() != null) ? request
+ .getPathInfo().split("/") : new String[] {};
+ String language = pathInfo[1].split("_")[0];
+ String filename = pathInfo[2];
+ String path = "/helpfiles/" + language.toLowerCase() + "/" + filename;
+ System.out.println(path);
+%>
+
+
--
cgit v1.2.3
From 2158f77ded7333ad301a54dd961f9d1c1d7c7e8e Mon Sep 17 00:00:00 2001
From: mcentner
Date: Thu, 6 Nov 2008 16:37:49 +0000
Subject: Fixed css href in helpfiles.
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@158 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/error.card.notactivated.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/error.pcsc.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/error.ws.unreachable.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/help.insertcard.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/help.retry.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/help.signpin.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/help.wait.html | 2 +-
BKUOnline/src/main/webapp/helpfiles/de/help.welcome.html | 2 +-
12 files changed, 12 insertions(+), 12 deletions(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html b/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html
index b2cc2173..64899ff5 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/error.card.locked.html
@@ -3,7 +3,7 @@
Untitled Document
-
+
Fehler: Bürgerkartenfunktion ist nicht aktiviert.
-
Die im Kartenleser gesteckte Chipkarte wird unterstützt, jedoch ist die Bürgerkartenfunktion auf der Chipkarte noch nicht aktiviert.
+
Die im Kartenleser gesteckte Chipkarte wird unterstützt, jedoch ist die Bürgerkartenfunktion auf der Chipkarte noch nicht aktiviert.
Um die gesteckte Chipkarte als Bürgerkarte verwenden zu können,
muss zuerst die
- Bürgerkartenfunktion aktiviert werden. Für Informationen dazu siehe Aktivierung der Bürgerkartenfunktion auf www.buergerkarte.at .
+ Bürgerkartenfunktion aktiviert werden. Für Informationen dazu siehe Aktivierung der Bürgerkartenfunktion auf www.buergerkarte.at .
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html b/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html
index 3c8427d3..c93bba48 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/error.cardterminal.html
@@ -3,7 +3,7 @@
Untitled Document
-
+
Fehler: Es konnte kein Kartenleser gefunden werden.
-
Für den Zugriff auf die Bürgerkarte ist ein Chipkartenleser erforderlich. Es werden grundsätzlich alle Kartenleser unterstützt, die über die PC/SC-Schnittstelle angesprochen werden können und im Betriebssystem erfolgreich installiert wurden. Es können mehrere unterstützte Kartenleser gleichzeitig angeschlossen werden.
-
Kartenleser die, die nicht über die PC/SC-Schnittstelle angesprochen werden können (z.B. Kartenleser für die nur CT-API-Treiber verfügbar sind) werden nicht unterstützt.
+
Für den Zugriff auf die Bürgerkarte ist ein Chipkartenleser erforderlich. Es werden grundsätzlich alle Kartenleser unterstützt, die über die PC/SC-Schnittstelle angesprochen werden können und im Betriebssystem erfolgreich installiert wurden. Es können mehrere unterstützte Kartenleser gleichzeitig angeschlossen werden.
+
Kartenleser die, die nicht über die PC/SC-Schnittstelle angesprochen werden können (z.B. Kartenleser für die nur CT-API-Treiber verfügbar sind) werden nicht unterstützt.
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.html b/BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.html
index 5502ebf7..c647bf72 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.cardnotsupported.html
@@ -27,7 +27,7 @@
Die Karte wird nicht unterstützt
Die im Kartenleser gesteckte Chipkarte wird nicht unterstützt.
-
Bitte stecken Sie eine unterstützte Chipkarte (Bürgerkarte) in den Kartenleser. Derzeit werden die folgenden Chipkarten unterstützt:
+
Bitte stecken Sie eine unterstützte Chipkarte (Bürgerkarte) in den Kartenleser. Derzeit werden die folgenden Chipkarten unterstützt:
e-card
Chipkarte der Österreichischen Sozialversicherung
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html b/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html
index f1c21795..dc678fd0 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.cardpin.html
@@ -3,7 +3,7 @@
Untitled Document
-
+
Lesen von Informationen von der Chipkarte
-
Sie werden aufgefordert ihre Karten-PIN bzw. Infobox-PIN (abhängig von der verwendeten Bürgerkarte) einzugeben um das Auslesen von Informationen zur Identifikation (Personenbindung) bzw. Vollmachten zu ermöglichen.
-
Details zu den auf der Bürgerkarte gespeicherten Informationen finden sie auf www.buergerkarte.at .
+
Sie werden aufgefordert ihre Karten-PIN bzw. Infobox-PIN (abhängig von der verwendeten Bürgerkarte) einzugeben um das Auslesen von Informationen zur Identifikation (Personenbindung) bzw. Vollmachten zu ermöglichen.
+
Details zu den auf der Bürgerkarte gespeicherten Informationen finden sie auf www.buergerkarte.at .
+
Falsche PIN
-
Die eingegebene PIN war falsch. Bitte geben Sie die korrekte PIN ein.
-
Die Anzahl der noch möglichen Versuche wird angezeigt.
+
Die eingegebene PIN war falsch. Bitte geben Sie die korrekte PIN ein.
+
Die Anzahl der noch möglichen Versuche wird angezeigt.
Erstellen einer elektronischen Signatur
-
Sie werden aufgefordert die Signatur-PIN einzugeben, um eine elektronische Signatur zu erstellen.
-
+
Sie werden aufgefordert die Signatur-PIN einzugeben, um eine elektronische Signatur zu erstellen.
+
Klicken Sie auf 'Signaturdaten anzeigen' um die zu signierenden Daten anzuzeigen.
Geben Sie im Formularfeld die Signatur-PIN ein.
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.wait.html b/BKUOnline/src/main/webapp/helpfiles/de/help.wait.html
index f70cb174..ed3db1b8 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/help.wait.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.wait.html
@@ -3,7 +3,7 @@
Untitled Document
-
+
+
+
+
+
+
+
+
+
+
Anzeige der Signaturdaten
+
Dieses Fenster zeigt die zu signierenden Daten an. Dies können entweder reine Textdaten oder XHTML sein. Im Falle von XHML erhalten Sie den Hinweis, dass es sich bei den dargestellten Daten nur um eine Voransicht handelt. Um die Daten gesetzeskonform darzustellen, müssen diese abgespeichert und mit einem geeigneten XHTML Betrachter geöffnen werden.
+
In jedem Fall können die zu signierenden abgespeichert werden.
+
+
+
+
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.png b/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.png
new file mode 100644
index 00000000..83004322
Binary files /dev/null and b/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.png differ
--
cgit v1.2.3
From ec2c1cbf341e6b53d60cc557944781f6c7907e1d Mon Sep 17 00:00:00 2001
From: wbauer
Date: Fri, 14 Nov 2008 10:42:03 +0000
Subject: git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@170
8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.html | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
(limited to 'BKUOnline')
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.html b/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.html
index 3a56e88a..f7cf15df 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.html
@@ -26,7 +26,7 @@
Anzeige der Signaturdaten
-
Dieses Fenster zeigt die zu signierenden Daten an. Dies können entweder reine Textdaten oder XHTML sein. Im Falle von XHML erhalten Sie den Hinweis, dass es sich bei den dargestellten Daten nur um eine Voransicht handelt. Um die Daten gesetzeskonform darzustellen, müssen diese abgespeichert und mit einem geeigneten XHTML Betrachter geöffnen werden.
+
Dieses Fenster zeigt die zu signierenden Daten an. Dies können entweder reine Textdaten oder XHTML sein. Im Falle von XHML erhalten Sie den Hinweis, dass es sich bei den dargestellten Daten nur um eine Voransicht handelt. Um die Daten standardkonform darzustellen, müssen diese abgespeichert und mit einem geeigneten XHTML Betrachter geöffnen werden.
In jedem Fall können die zu signierenden abgespeichert werden.
Fehler: Es konnte keine PC/SC-Schnittstelle gefunden werden
-
Die Software für den Zugriff auf die Bürgerkarte konnte keine PC/SC-Schnittstelle für den Zugriff auf Kartenleser erkennen. Das Betriebssystem scheint keine PC/SC-Schnittstelle zur Verfügung zu stellen.
-
Unter Betriebssystemen die PCSC-Lite verwenden (Linux u.a.) tritt dieses Problem auch auf, wenn kein Kartenleser angeschlossen ist und daher der entsprechende Dienst nicht gestartet wurde oder wenn die entsprechende Bibliothek nicht zur Verfügung steht (weitere Informationen ).
+
Die Software für den Zugriff auf die Bürgerkarte konnte keine PC/SC-Schnittstelle für den Zugriff auf Kartenleser erkennen.
+ Das Betriebssystem scheint keine PC/SC-Schnittstelle zur Verfügung zu stellen.
+
Häufige Ursachen für dieses Problem sind
+
+ Der PC/SC Dienst läuft nicht
+ Die entsprechende PC/SC Bibliothek kann von Java nicht gefunden werden
+ (weitere Informationen ).
+
+
+
Unter Betriebssystemen die PCSC-Lite verwenden (Linux u.a.) tritt dieses Problem auch auf,
+ wenn kein Kartenleser angeschlossen ist und daher der entsprechende Dienst nicht gestartet wurde.
+
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 8830a81c..9d77e53e 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
@@ -34,6 +34,7 @@ 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.ObjectFactory;
import at.gv.egiz.stal.service.types.QuitRequestType;
import at.gv.egiz.stal.service.types.RequestType;
import at.gv.egiz.stal.service.types.ResponseType;
@@ -45,6 +46,7 @@ import java.io.InputStream;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
+import javax.xml.bind.JAXBElement;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.junit.BeforeClass;
@@ -283,19 +285,25 @@ public class STALRequestBrokerTest {
@Override
public void run() {
try {
+ ObjectFactory of= new ObjectFactory();
+
log.debug("calling stal.nextRequest(oldResponse)");
- ResponseType oldResp = new InfoboxReadResponseType();
- List
requests = stal.nextRequest(Collections.singletonList(oldResp));
+ InfoboxReadResponseType oldResp = of.createInfoboxReadResponseType();
+ ArrayList> oldResponses = new ArrayList>();
+ oldResponses.add(of.createGetNextRequestTypeInfoboxReadResponse(oldResp));
+
+ List> requests = stal.nextRequest(oldResponses);
log.debug("got " + requests.size() + " requests. processing...");
Thread.sleep(1);
- List responses = new ArrayList();
- for (RequestType request : requests) {
+ List> responses = new ArrayList>();
+ for (JAXBElement extends RequestType> requestElt : requests) {
+ RequestType request = requestElt.getValue();
if (request instanceof InfoboxReadRequestType) {
log.debug("received UNEXPECTED READINFOBOX request");
- InfoboxReadResponseType r = new InfoboxReadResponseType();
+ InfoboxReadResponseType r = of.createInfoboxReadResponseType();
r.setInfoboxValue("dummyInfobox".getBytes());
- responses.add(r);
+ responses.add(of.createGetNextRequestTypeInfoboxReadResponse(r));
} else if (request instanceof SignRequestType) {
log.debug("received UNEXPECTED SIGN request");
@@ -311,9 +319,9 @@ public class STALRequestBrokerTest {
log.debug("got HashDataInput " + new String(data));
- SignResponseType r = new SignResponseType();
+ SignResponseType r = of.createSignResponseType();
r.setSignatureValue("dummySignature".getBytes());
- responses.add(r);
+ responses.add(of.createGetNextRequestTypeSignResponse(r));
} else if (request instanceof QuitRequestType) {
log.debug("received EXPECTED QUIT request");
return;
@@ -326,7 +334,8 @@ public class STALRequestBrokerTest {
// }
log.debug("calling stal.nextRequest with " + responses.size() + " responses");
requests = stal.nextRequest(responses);
- for (RequestType request : requests) {
+ for (JAXBElement extends RequestType> requestElt : requests) {
+ RequestType request = requestElt.getValue();
if (request instanceof QuitRequestType) {
log.debug("got QUIT request");
} else {
@@ -347,17 +356,19 @@ public class STALRequestBrokerTest {
@Override
public void run() {
try {
+ ObjectFactory of = new ObjectFactory();
// 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 (RequestType request : requests) {
+ List> responses = new ArrayList>();
+ for (JAXBElement extends RequestType> requestElt : requests) {
+ RequestType request = requestElt.getValue();
if (request instanceof InfoboxReadRequestType) {
- InfoboxReadResponseType r = new InfoboxReadResponseType();
+ InfoboxReadResponseType r = of.createInfoboxReadResponseType();
r.setInfoboxValue("dummyInfobox".getBytes());
- responses.add(r);
+ responses.add(of.createGetNextRequestTypeInfoboxReadResponse(r));
} else if (request instanceof SignRequestType) {
log.debug("calling stal.getCurrentHashDataInputCallback");
@@ -371,9 +382,9 @@ public class STALRequestBrokerTest {
log.debug("got HashDataInput " + new String(data));
- SignResponseType r = new SignResponseType();
+ SignResponseType r = of.createSignResponseType();
r.setSignatureValue("dummySignature".getBytes());
- responses.add(r);
+ responses.add(of.createGetNextRequestTypeSignResponse(r));
} else if (request instanceof QuitRequestType) {
log.debug("received UNEXPECTED QUIT request");
return;
@@ -386,7 +397,8 @@ public class STALRequestBrokerTest {
// }
log.debug("calling stal.nextRequest with " + responses.size() + " responses");
requests = stal.nextRequest(responses);
- for (RequestType request : requests) {
+ for (JAXBElement extends RequestType> requestElt : requests) {
+ RequestType request = requestElt.getValue();
if (request instanceof QuitRequestType) {
log.debug("got QUIT request");
} else {
@@ -408,10 +420,11 @@ 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 (RequestType request : requests) {
+ for (JAXBElement extends RequestType> requestElt : requests) {
+ RequestType request = requestElt.getValue();
// if (request instanceof InfoboxReadRequest) {
if (request instanceof SignRequestType) {
log.debug("calling stal.getCurrentHashDataInputCallback");
--
cgit v1.2.3
From 351eba07a9ba4e98e182c6210839c209dcbb82a6 Mon Sep 17 00:00:00 2001
From: clemenso
Date: Tue, 20 Jan 2009 14:52:40 +0000
Subject: cleanup (removed hashdatadisplay config; rename HTTP-ohne.html,
appletPage.jsp)
git-svn-id: https://joinup.ec.europa.eu/svn/mocca/trunk@270 8a26b1a7-26f0-462f-b9ef-d0e30c41f5a4
---
.../egiz/bku/online/webapp/BKURequestHandler.java | 1 -
BKUOnline/src/main/webapp/HTTP-ohne.html | 121 ---------------------
BKUOnline/src/main/webapp/WEB-INF/web.xml | 2 +-
BKUOnline/src/main/webapp/appletPage.jsp | 73 -------------
BKUOnline/src/main/webapp/css/applet.css | 16 ---
BKUOnline/src/main/webapp/css/login.css | 16 +++
.../webapp/helpfiles/de/help.hashdataviewer.html | 1 +
BKUOnline/src/main/webapp/ieView.html | 31 ------
BKUOnline/src/main/webapp/index.html | 2 +-
BKUOnline/src/main/webapp/login.jsp | 70 ++++++++++++
BKUOnline/src/main/webapp/multiHashDataInput.html | 37 -------
BKUOnline/src/main/webapp/slRequestForm.html | 115 ++++++++++++++++++++
12 files changed, 204 insertions(+), 281 deletions(-)
delete mode 100644 BKUOnline/src/main/webapp/HTTP-ohne.html
delete mode 100644 BKUOnline/src/main/webapp/appletPage.jsp
delete mode 100644 BKUOnline/src/main/webapp/css/applet.css
create mode 100644 BKUOnline/src/main/webapp/css/login.css
delete mode 100644 BKUOnline/src/main/webapp/ieView.html
create mode 100644 BKUOnline/src/main/webapp/login.jsp
delete mode 100644 BKUOnline/src/main/webapp/multiHashDataInput.html
create mode 100644 BKUOnline/src/main/webapp/slRequestForm.html
(limited to 'BKUOnline')
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 7930c53a..d9be0981 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
@@ -49,7 +49,6 @@ public class BKURequestHandler extends SpringBKUServlet {
private static final long serialVersionUID = 1L;
- public final static String REDIRECT_URL = "appletPage.jsp";
public final static String REDIRECT_URL_SESSION_ATTRIBUTE="redirectUrl";
protected Log log = LogFactory.getLog(BKURequestHandler.class);
diff --git a/BKUOnline/src/main/webapp/HTTP-ohne.html b/BKUOnline/src/main/webapp/HTTP-ohne.html
deleted file mode 100644
index e5a35cf0..00000000
--- a/BKUOnline/src/main/webapp/HTTP-ohne.html
+++ /dev/null
@@ -1,121 +0,0 @@
-
-
-
-
-Infobox Requests
-
-
-
-Securitykapsel - HTTP-Bindung
-
-
-
-
-
-Enter XML Request
-XML Request
-
-
-SecureSignatureKeypair
-
-
- Ich bin ein einfacher Text.
-
-
-
- text/plain
-
-
-
-
-
-
-Applet Width
-
Applet Height
-
Applet Background
-
- GUI Style
- simple
- advanced
-
-
- HashData Display
- Frame
- Browser
-
-
-
-
-
-
-
-
-
diff --git a/BKUOnline/src/main/webapp/WEB-INF/web.xml b/BKUOnline/src/main/webapp/WEB-INF/web.xml
index a9cdce13..e7a4e058 100644
--- a/BKUOnline/src/main/webapp/WEB-INF/web.xml
+++ b/BKUOnline/src/main/webapp/WEB-INF/web.xml
@@ -50,7 +50,7 @@
BKUApplet
- /appletPage.jsp
+ /login.jsp
help
diff --git a/BKUOnline/src/main/webapp/appletPage.jsp b/BKUOnline/src/main/webapp/appletPage.jsp
deleted file mode 100644
index 8a21e4ec..00000000
--- a/BKUOnline/src/main/webapp/appletPage.jsp
+++ /dev/null
@@ -1,73 +0,0 @@
-
-<%@ page language="java" contentType="text/html; charset=UTF-8"
- pageEncoding="UTF-8"%>
-
-
-
-
-
- MOCCA Applet
-
-
-
-
-
-
-
-
- <%
- int width = session.getAttribute("appletWidth") == null ? 190
- : (Integer) session.getAttribute("appletWidth"); //230 for workshop demo integration
- int height = session.getAttribute("appletHeight") == null ? 130
- : (Integer) session.getAttribute("appletHeight");
- String backgroundImg = (String) session.getAttribute("appletBackground");
- String guiStyle = (String) session.getAttribute("appletGuiStyle");
- String hashDataDisplay = (String) session.getAttribute("appletHashDataDisplay");
- String locale = (String) session.getAttribute("locale");
- %>
-
-
-
-
diff --git a/BKUOnline/src/main/webapp/css/applet.css b/BKUOnline/src/main/webapp/css/applet.css
deleted file mode 100644
index 4bfbd77d..00000000
--- a/BKUOnline/src/main/webapp/css/applet.css
+++ /dev/null
@@ -1,16 +0,0 @@
-
-root {
- display: block;
-}
-
-body {
- background: #ffffff;
- /*background-image: url(../img/mocca-t_s.png);*/
- padding: 0;
- margin: 0;
- border-style: none;
- /*
- width:<%=width%>
- */
-}
-
diff --git a/BKUOnline/src/main/webapp/css/login.css b/BKUOnline/src/main/webapp/css/login.css
new file mode 100644
index 00000000..4bfbd77d
--- /dev/null
+++ b/BKUOnline/src/main/webapp/css/login.css
@@ -0,0 +1,16 @@
+
+root {
+ display: block;
+}
+
+body {
+ background: #ffffff;
+ /*background-image: url(../img/mocca-t_s.png);*/
+ padding: 0;
+ margin: 0;
+ border-style: none;
+ /*
+ width:<%=width%>
+ */
+}
+
diff --git a/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.html b/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.html
index f7cf15df..eb1a35d6 100644
--- a/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.html
+++ b/BKUOnline/src/main/webapp/helpfiles/de/help.hashdataviewer.html
@@ -28,6 +28,7 @@
Anzeige der Signaturdaten
Dieses Fenster zeigt die zu signierenden Daten an. Dies können entweder reine Textdaten oder XHTML sein. Im Falle von XHML erhalten Sie den Hinweis, dass es sich bei den dargestellten Daten nur um eine Voransicht handelt. Um die Daten standardkonform darzustellen, müssen diese abgespeichert und mit einem geeigneten XHTML Betrachter geöffnen werden.
In jedem Fall können die zu signierenden abgespeichert werden.
+