Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

Introduced in MDA 0.10.0, the standard bean definition resource is provided to simplify writing MDA configurations using Spring Framework’s XML configuration scheme.

It is expected, and recommended, that most MDA applications using XML configuration will make use of this resource. It can be incorporated into your configuration as follows:

<import resource="classpath:net/shibboleth/metadata/beans.xml"/>

The standard bean definition resource provides parent bean definitions and assistance with migration from olders versions of the MDA.

Parent bean definitions

For each component provided by the MDA framework, the resource includes a parent bean to simplify declarations in your configuration.

One abstract bean is defined for each available bean class, named after the class's simple name prefixed by "mda.". The definition will also include the init-method and destroy-method properties for the bean when appropriate.

For example:

<bean ... parent="mda.XMLSignatureValidationStage">
    ...
</bean>

Migration assistance

The following beans are defined to assist with migration from previous versions of the MDA framework:

  • mda.RelocatedBeanFactoryPostProcessor is an abstract bean providing access to the Shibboleth support class implementing the migration assistance functionality.

  • mda.MigrationClassMapis a <util:map> from old class names to new class names.

  • mda.MigrationBeanMapis a <util:map> from old bean names to new bean names.

  • mda.MigrationAssistanceBean is instantiated in every configuration and references the maps above; if it encounters one of the “old” names it logs a warning message and (where) changes your configuration on-the-fly to refer to the replacement name.

For example:

WARN  - Java class 'net.shibboleth.utilities.java.support.xml.SimpleNamespaceContext',
(Bean ID: commonNamespaces):
This will be removed in the next major version of this software;
replacement is net.shibboleth.metadata.dom.SimpleNamespaceContext

Acting on these warnings is strongly recommended.

If you need to disable this functionality, you can define a mda.MigrationAssistanceBeanof your own after the <include> of the resource; this can be of any type as its only purpose is to override the standard definition.

You can override mda.MigrationClassMap and mda.MigrationBeanMap in the same way if you need similar assistance in migrating classes and beans of your own.

Important note: the Spring Framework technology on which this feature is built has limitations; the principal limitation being that it can only migrate bean names and class names in beans defined at the outer level of the configuration. Beans defined within other beans (“inner beans”) are not visible to it and migration assistance will not be available for them.

  • No labels