Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

File(s): conf/services.xml, conf/services.properties

...

The fail-fast behavior, which can be adjusted by service to a limited degree, determines whether the IdP webapp context will initialize and serve clients if a particular service fails to initialize successfully. The point of this mechanism is to allow you to decide for yourself when problems should be discovered and how serious they should be treated. While it isn't the default, you may find it simpler when first starting out to enable fail-fast behavior globally while you work through mistakes.

Whether a given service succeeds or fails is ultimately an internal consideration, but generally we're talking about whether its configuration is valid and whether its pieces and parts themselves are considered to be successfully initialized. Often there may be individual fail-fast settings applying at the micro level that in turn dictate whether the surrounding service starts (and which then determines the overall result of the IdP startup process based on the service's fail-fast behavior). On top of that, some of the subsystems cause ripple effects when they fail that may make it impossible to really achieve non-fail-fast behavior in some cases.

As of V3.2, there are two levels of fail-fast properties that control service behavior (and described below). A global property called idp.service.failFast can be used to toggle all services to fail-fast at once (since the default is false for most, but true for a couple). In addition, or instead, you can control the behavior of specific services with properties specific to each service. The individual properties override the global setting, so you can mix and match.

...

Bean IDTypeFunctionReloadable Service ID
shibboleth.RelyingPartyResolverResourcesjava.util.List<Resource>RelyingPartyConfiguration resources for a new or migrated installation.shibboleth.RelyingPartyResolverService
shibboleth.LegacyRelyingPartyResolverResourcesjava.util.List<Resource>RelyingPartyConfiguration using a deprecated V2 relying-party.xml file.shibboleth.RelyingPartyResolverService
shibboleth.MetadataResolverResourcesjava.util.List<Resource>MetadataConfiguration resources.shibboleth.MetadataResolverService
shibboleth.AttributeResolverResourcesjava.util.List<Resource>AttributeResolverConfiguration resources.shibboleth.AttributeResolverService
shibboleth.AttributeFilterResourcesjava.util.List<Resource>AttributeFilterConfiguration resources.shibboleth.AttributeFilterService
shibboleth.NameIdentifierGenerationResourcesjava.util.List<Resource>NameIDGenerationConfiguration resources.shibboleth.NameIdentifierGenerationService
shibboleth.AccessControlResourcesjava.util.List<Resource>AccessControlConfiguration resources.shibboleth.ReloadableAccessControlService
shibboleth.MessageSourceResourcesjava.util.List<Resource>Internationalizable user interface messages.N/A
shibboleth.CASServiceRegistryResources 3.2java.util.List<Resource>Resources containing ServiceRegistry beans to be reloaded.shibboleth.ReloadableCASServiceRegistry

...