ArisID Configuration

From OpenLiberty.org Wiki
Jump to: navigation, search

Contents

ArisID 1.1 Configuration Notes

Introduction

ArisID 1.1 (currently in development), introduces several new configuration options which allow for greater deployment flexibility in web server environments. These options are around flexibility with regards to choice of:

  • DOM Parser
  • Logging Utility
  • WS-Policy Implementation

The intention is to avoid conflicts due to requirements for specific libraries as much as possible.

Because this project is an Apache 2.0 Licensed project, this means the primary or default library will typically be from the Apache project. Hence, the default configuration will be to use Apache Xerces 2.9.1 (DOM), Apache Log4J 1.2.13 (Logger), and Apache Neethi 2.0.4 (WS-Policy).

To override these defaults, ArisID uses system properties to allow each library to be overridden.

Implementation classes/wrappers for WS-Policy (Neethi) and Logging (Log4J and Java Util Logging) are included in the core ArisID jar distribution. For each library, note the external dependencies that are also required.

DOM Parser

ArisID has been written using the W3C DOM API and as such ArisID supports the ability to switch to different parsers such as Apache Xerces, Oracle DOMParser and Sun TR2 XML Parsers. To achieve this, the following system property settings are supported:

System Property Name Description Value Comment
org.w3c.dom.DOMImplementationSourceList DOM Implementation Class org.apache.xerces.dom.DOMImplementationSourceImpl Default: Xerces 2.9.1 Implementation
CarmlDoc.dom.errorhandler DOMErrorHandler implementation org.openliberty.arisid.CarmlDomErrorHandlerImpl Default: Built-in Carml Error handler
igf.carml.schemaloc CARML Doc Schema Files "schema/liberty-igf-carml-v1.0.xsd", "schema/liberty-igf-privacy-constraints-v1.0.xsd", "schema/liberty-igf-carml-profile-privcon-v1.0.xsd", "schema/ws-policy.xsd", "schema/oasis-200401-wss-wssecurity-secext-1.0.xsd", "schema/oasis-200401-wss-wssecurity-utility-1.0.xsd", "schema/xml.xsd" Default: Loaded from ArisID jar file

These settings will impact both CARML Document and WS-Policy parsing within ArisID.

Dependencies

Library File Description
Apache Xerces (Default) resolver.jar XML Commons Resolver
xalan.jar Apache Xalan 2.7.1
xercesImpl.jar Parser classes for Xerces 2.9.1
xml-apis.jar DOM Level 3 APIs
stax-api-1.0.1.jar XML Streaming API
Oracle xmlparserv2.jar Oracle XML Parser

Logging

ArisID supports flexible logging by allowing different loggers to be used. org.openliberty.arisid.log.LogHandler does this by instantiating an instance of org.openliberty.arisid.log.ILogger as specified by the system property org.openliberty.arisid.log.LoggerClass. ILogger supports methods typical to both Log4J and Java Util and can be mapped to other common log system formats.

System Property Name Description Value Comment
org.openliberty.arisid.log.LoggerClass Allows specification of class that implements org.openliberty.arisid.log.ILogger org.openliberty.arisid.log.JavaUtilLogImpl Default: Java Util Logger implementation
org.openliberty.arisid.log.Log4JImpl Log4J Logger implementation

Dependencies

Library File Description
Apache Log4J log4j-1.2.13.jar Log4J library
Java Util Logger (JUL) na Included in JRE 1.5 and later
Oracle ojdl.jar Use to redirect JUL provider to ojdl

WS-Policy

ArisID 1.1 Architecture

ArisID 1.1, has been significantly re-worked to allow the use of different WS-Policy libraries. This involved removing all references to Apache Neethi objects like "Policy" and replacing them with new Java Interface objects that allow a set of wrapper classes to interface between ArisID and the implementing WS-Policy Liberty. Much of the work is achieved through a common interface known as: org.openliberty.arisid.policy.IArisWSPolicy. Typically developers access the library using org.openliberty.arisid.policy.PolicyHandler which takes care of instantiating the correct WS-Policy library implementation.

System Property Name Description Value Comment
org.openliberty.arisid.policy.wspolicy.class Allows specification of class that implements org.openliberty.arisid.policy.IArisWSPolicy org.openliberty.arisid.policy.neethi.PolicyImpl Default: Apache Neethi 2.0.4 Implementation
org.openliberty.arisid.policy.oracle.ArisWSPolicyImpl Oracle WS-Policy Implementation

Dependencies

Library File Description
Apache Neethi neethi-2.0.4.jar Apache Neethi 2.0.4
axiom-api-1.2.5.jar Apache Axiom (AXIS Object Model) 1.2.5
axiom-impl-1.2.5.jar Apache Axiom 1.2.5
axis2-kernel-1.3.jar AXIS 2 - Used for DOM to OM conversion
log4j-1.2.13.jar Neethi requires Log4J logging support
Oracle Policy (WSM)
May be obtained from Oracle SOA Suite
wsm-policy-core.jar Oracle Web Service Manager, Policy Core Library
wsm-secpol.jar Oracle Web Service Manager, WS-Security Policy Library
jaxb-impl.jar Java Web Services Dev Pack. Not required in WLS (it is on the WLS System classpath)

Project Index

Project Aristotle

Downloads

ArisID

ArisID Providers


Related External Information

Other

  • ArisID API Configuration Notes
OpenAz