[java-identity-provider] branch master updated: IDP-1642 - Migrate configuration into jars where feasible

Scott Cantor cantor.2 at osu.edu
Tue Jul 28 22:37:06 UTC 2020


This is an automated email from the git hooks/post-receive script.

scantor pushed a commit to branch master
in repository java-identity-provider.

View the commit online:
http://git.shibboleth.net/view/?p=java-identity-provider.git;a=commit;h=a84237705a813d6cb97522ad17657504b7950a63

The following commit(s) were added to refs/heads/master by this push:
       new  a84237705 IDP-1642 - Migrate configuration into jars where feasible
a84237705 is described below

commit a84237705a813d6cb97522ad17657504b7950a63
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Tue Jul 28 18:37:58 2020 -0400

    IDP-1642 - Migrate configuration into jars where feasible
    
    https://issues.shibboleth.net/jira/browse/IDP-1642
    
    Move MVC configuration into idp-conf-impl.
    Add pre/post-config MVC hooks.
    Stub out system files for now.
---
 .../net/shibboleth/idp}/conf/mvc-beans.xml         |   0
 .../net/shibboleth/idp}/conf/webflow-config.xml    |   0
 .../src/main/resources/system/conf/mvc-beans.xml   |  89 +-------
 .../main/resources/system/conf/webflow-config.xml  | 230 +--------------------
 idp-war/src/main/webapp/WEB-INF/web.xml            |   2 +-
 5 files changed, 5 insertions(+), 316 deletions(-)

diff --git a/idp-conf/src/main/resources/system/conf/mvc-beans.xml b/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/mvc-beans.xml
similarity index 100%
copy from idp-conf/src/main/resources/system/conf/mvc-beans.xml
copy to idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/mvc-beans.xml
diff --git a/idp-conf/src/main/resources/system/conf/webflow-config.xml b/idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/webflow-config.xml
similarity index 100%
copy from idp-conf/src/main/resources/system/conf/webflow-config.xml
copy to idp-conf-impl/src/main/resources/net/shibboleth/idp/conf/webflow-config.xml
diff --git a/idp-conf/src/main/resources/system/conf/mvc-beans.xml b/idp-conf/src/main/resources/system/conf/mvc-beans.xml
index 4274837cd..9c2e4a440 100644
--- a/idp-conf/src/main/resources/system/conf/mvc-beans.xml
+++ b/idp-conf/src/main/resources/system/conf/mvc-beans.xml
@@ -11,93 +11,8 @@
                            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
                            http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
 
-    <!-- HandlerMappings: Prefer first the WebFlow one, then the standard Spring MVC default ones.
-         Have to enumerate them all explicitly b/c we're overriding the built-in defaults. -->
+    <!-- This is a stub pending the eventual requirement to update web.xml -->
     
-    <bean id="shibboleth.DefaultRESTFlows" class="org.springframework.beans.factory.config.ListFactoryBean">
-        <property name="sourceList">
-            <list>
-                <value>admin/metrics</value>
-                <value>admin/lockout</value>
-                <value>admin/storage</value>
-            </list>
-        </property>
-    </bean>
-    
-    <bean class="org.springframework.webflow.mvc.servlet.FlowHandlerMapping" p:order="0"
-            p:flowRegistry-ref="flowRegistry">
-        <property name="flowUrlHandler">
-            <bean class="net.shibboleth.idp.profile.support.PathInfoSupportingFlowUrlHandler"
-                p:supportedFlows="#{getObject('shibboleth.RESTFlows') ?: getObject('shibboleth.DefaultRESTFlows')}" />
-        </property>
-    </bean>
-
-    <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping" p:order="1" />
-
-    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping" p:order="2" />
-
-    <!-- HandlerAdapters: These aren't ordered. Add our WebFlow one, then the standard Spring MVC default ones. 
-         Have to enumerate them all explicitly b/c we're overriding the built-in defaults. -->
-    
-    <bean class="net.shibboleth.idp.profile.support.RethrowingFlowHandlerAdapter"
-            p:flowExecutor-ref="flowExecutor">
-        <property name="supportedMethods">
-            <null/>
-        </property>
-    </bean>
-    
-    <bean class="org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter" />
-    
-    <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />
-    
-    <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter" />
-    
-    <!-- Additional MVC controllers scanned for annotations. -->
-    
-    <bean id="shibboleth.SPNEGOAuthnController" class="net.shibboleth.idp.authn.spnego.impl.SPNEGOAuthnController" />
-    <bean id="shibboleth.SAMLAuthnPOSTController" class="net.shibboleth.idp.saml.saml2.profile.impl.SAMLAuthnController" />
-    <bean id="shibboleth.RaiseErrorController" class="net.shibboleth.ext.spring.error.ErrorRaisingController" />
-
-    <!-- Exception handling -->
-    
-    <bean id="shibboleth.ExceptionResolver" class="net.shibboleth.ext.spring.error.ExtendedMappingExceptionResolver"
-        c:_0="#{getObject('shibboleth.ExceptionResolverViewExtenderFunction')}"
-        p:defaultErrorView="%{idp.errors.defaultView:error}"
-        p:excludedExceptions="#{getObject('%{idp.errors.excludedExceptions:undefined}')}"
-        p:exceptionMappings="#{getObject('%{idp.errors.exceptionMappings:undefined}')}" />
-    
-    <bean id="RethrowingFlowExecutionExceptionHandler"
-        class="net.shibboleth.idp.profile.impl.RethrowingFlowExecutionExceptionHandler" />
-            
-    <!-- ViewResolvers -->
-    
-    <bean class="org.springframework.web.servlet.view.BeanNameViewResolver">
-        <property name="order" value="1" />
-    </bean>
-            
-    <bean id="shibboleth.VelocityViewResolver" class="net.shibboleth.ext.spring.velocity.VelocityViewResolver">
-        <property name="order" value="2" />
-        <property name="cache" value="true"/>
-        <property name="prefix" value=""/>
-        <property name="suffix" value=".vm"/>
-        <property name="contentType" value="text/html;charset=utf-8" />
-    </bean>
-
-    <bean id="shibboleth.InternalViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
-        <property name="order" value="3" />
-        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
-        <property name="prefix" value="/WEB-INF/jsp/"/>
-        <property name="suffix" value=".jsp"/>
-        <property name="contentType" value="text/html;charset=utf-8" />
-    </bean>
-
-    <!-- Note that non-file paths are passed through to Spring's DefaultResourceLoader, thus can be targeted classpath trees. -->
-    <bean class="net.shibboleth.ext.spring.velocity.VelocityConfigurer">
-        <property name="resourceLoaderPath"
-            value="#{'%{idp.views:%{idp.home}/views}'.trim()},classpath:/net/shibboleth/idp/views,classpath:/META-INF/net/shibboleth/idp/views" />
-    </bean>
-    
-    <!-- Import any user defined beans or overrides for the MVC config. -->
-    <import resource="conditional:${idp.home}/conf/mvc-beans.xml" />
+    <import resource="classpath:/net/shibboleth/idp/conf/mvc-beans.xml" />
 
 </beans>
diff --git a/idp-conf/src/main/resources/system/conf/webflow-config.xml b/idp-conf/src/main/resources/system/conf/webflow-config.xml
index 733e86f46..2d8611046 100644
--- a/idp-conf/src/main/resources/system/conf/webflow-config.xml
+++ b/idp-conf/src/main/resources/system/conf/webflow-config.xml
@@ -8,234 +8,8 @@
                            http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
                            http://www.springframework.org/schema/webflow-config http://www.springframework.org/schema/webflow-config/spring-webflow-config-2.4.xsd">
 
-    <bean class="org.springframework.context.support.PropertySourcesPlaceholderConfigurer"
-        p:placeholderPrefix="%{" p:placeholderSuffix="}" />
-
-    <!-- Default flow mappings. -->
-    <bean id="shibboleth.DefaultFlowMap" lazy-init="true"
-            class="org.springframework.beans.factory.config.MapFactoryBean">
-        <property name="sourceMap">
-            <map>
-                <!-- Abstract base flow for admin flows. -->
-                <entry key="admin.abstract" value="classpath:/net/shibboleth/idp/flows/admin/admin-abstract-flow.xml"/>
-
-                <!-- Status flow (extra location is for backward compatibility). -->
-                <entry key="status" value="classpath:/net/shibboleth/idp/flows/admin/status-flow.xml" />
-
-                <!-- Administrative and debugging flows. -->
-                <entry key="admin/hello" value="classpath:/net/shibboleth/idp/flows/admin/hello-flow.xml" />
-                <entry key="admin/resolvertest" value="classpath:/net/shibboleth/idp/flows/admin/resolvertest-flow.xml" />
-                <entry key="admin/reload-service" value="classpath:/net/shibboleth/idp/flows/admin/reload-service-flow.xml" />
-                <entry key="admin/reload-metadata" value="classpath:/net/shibboleth/idp/flows/admin/reload-metadata-flow.xml" />
-                <entry key="admin/lockout" value="classpath:/net/shibboleth/idp/flows/admin/lockout-flow.xml" />
-                <entry key="admin/mdquery" value="classpath:/net/shibboleth/idp/flows/admin/mdquery-flow.xml" />
-                <entry key="admin/metrics" value="classpath:/net/shibboleth/idp/flows/admin/metrics-flow.xml" />
-                <entry key="admin/storage" value="classpath:/net/shibboleth/idp/flows/admin/storage-flow.xml" />
-                <entry key="admin/unlock-keys" value="classpath:/net/shibboleth/idp/flows/admin/unlock-keys-flow.xml" />
-                        
-                <!-- Proprietary logout flow. -->
-                <entry key="Logout" value="classpath:/net/shibboleth/idp/flows/logout/logout-flow.xml" />
-        
-                <!-- Logout propagation driver flow. -->
-                <entry key="PropagateLogout" value="classpath:/net/shibboleth/idp/flows/logout/logout-propagation-flow.xml" />
-        
-                <!-- Logout propagation delegate flows. -->
-                <entry key="logoutprop/cas" value="classpath:/net/shibboleth/idp/flows/cas/logout/cas-logoutprop-flow.xml" />
-                <entry key="logoutprop/saml2" value="classpath:/net/shibboleth/idp/flows/saml/logout/saml2-logoutprop-flow.xml" />
-        
-                <!-- Abstract flows underpinning SAML profiles. -->
-                <entry key="saml.abstract" value="classpath:/net/shibboleth/idp/flows/saml/saml-abstract-flow.xml" />
-                <entry key="saml1.sso.abstract" value="classpath:/net/shibboleth/idp/flows/saml/saml1/sso-abstract-flow.xml" />
-                <entry key="saml2.sso.abstract" value="classpath:/net/shibboleth/idp/flows/saml/saml2/sso-abstract-flow.xml" />
-                <entry key="saml2.slo.front.abstract" value="classpath:/net/shibboleth/idp/flows/saml/saml2/slo-front-abstract-flow.xml" />
-        
-                <!-- SAML profile flows. -->
-                <entry key="Shibboleth/SSO" value="classpath:/net/shibboleth/idp/flows/saml/saml1/sso-unsolicited-flow.xml" />
-                <entry key="SAML1/SOAP/AttributeQuery" value="classpath:/net/shibboleth/idp/flows/saml/saml1/attribute-query-flow.xml" />
-                <entry key="SAML1/SOAP/ArtifactResolution" value="classpath:/net/shibboleth/idp/flows/saml/saml1/artifact-resolution-flow.xml" />
-                <entry key="SAML2/POST/SSO" value="classpath:/net/shibboleth/idp/flows/saml/saml2/sso-post-flow.xml" />
-                <entry key="SAML2/POST-SimpleSign/SSO" value="classpath:/net/shibboleth/idp/flows/saml/saml2/sso-post-flow.xml" />
-                <entry key="SAML2/Redirect/SSO" value="classpath:/net/shibboleth/idp/flows/saml/saml2/sso-redirect-flow.xml" />
-                <entry key="SAML2/Artifact/SSO" value="classpath:/net/shibboleth/idp/flows/saml/saml2/sso-artifact-flow.xml" />
-                <entry key="SAML2/Unsolicited/SSO" value="classpath:/net/shibboleth/idp/flows/saml/saml2/sso-unsolicited-flow.xml" />
-                <entry key="SAML2/SOAP/ECP" value="classpath:/net/shibboleth/idp/flows/saml/saml2/sso-ecp-flow.xml" />
-                <entry key="SAML2/POST/SLO" value="classpath:/net/shibboleth/idp/flows/saml/saml2/slo-post-flow.xml" />
-                <entry key="SAML2/POST-SimpleSign/SLO" value="classpath:/net/shibboleth/idp/flows/saml/saml2/slo-post-flow.xml" />
-                <entry key="SAML2/Redirect/SLO" value="classpath:/net/shibboleth/idp/flows/saml/saml2/slo-redirect-flow.xml" />
-                <entry key="SAML2/Artifact/SLO" value="classpath:/net/shibboleth/idp/flows/saml/saml2/slo-artifact-flow.xml" />
-                <entry key="SAML2/SOAP/SLO" value="classpath:/net/shibboleth/idp/flows/saml/saml2/slo-back-flow.xml" />
-                <entry key="SAML2/SOAP/AttributeQuery" value="classpath:/net/shibboleth/idp/flows/saml/saml2/attribute-query-flow.xml" />
-                <entry key="SAML2/SOAP/ArtifactResolution" value="classpath:/net/shibboleth/idp/flows/saml/saml2/artifact-resolution-flow.xml" />
-                
-                <!-- Liberty IDWSF SSOS flow (for SAML 2 delegation) -->
-                <entry key="IDWSF/SSOS" value="classpath:/net/shibboleth/idp/flows/saml/saml2/idwsf-ssos-flow.xml" />
-        
-                <!-- Main flow for authentication. -->
-                <entry key="authn.events" value="%{idp.home}/conf/authn/authn-events-flow.xml" />
-                <entry key="authn.abstract" value="classpath:/net/shibboleth/idp/flows/authn/authn-abstract-flow.xml" />
-                <entry key="authn" value="classpath:/net/shibboleth/idp/flows/authn/authn-flow.xml" />
-        
-                <!-- Login methods. -->
-                <entry key="authn/IPAddress" value="classpath:/net/shibboleth/idp/flows/authn/ipaddress-authn-flow.xml" />
-                <entry key="authn/RemoteUserInternal" value="classpath:/net/shibboleth/idp/flows/authn/remoteuser-internal-authn-flow.xml" />
-                <entry key="authn/Password" value="classpath:/net/shibboleth/idp/flows/authn/password-authn-flow.xml" />
-                <entry key="authn/RemoteUser" value="classpath:/net/shibboleth/idp/flows/authn/remoteuser-authn-flow.xml" />
-                <entry key="authn/X509" value="classpath:/net/shibboleth/idp/flows/authn/x509-authn-flow.xml" />
-                <entry key="authn/X509Internal" value="classpath:/net/shibboleth/idp/flows/authn/x509-internal-authn-flow.xml" />
-                <entry key="authn/SPNEGO" value="classpath:/net/shibboleth/idp/flows/authn/spnego-authn-flow.xml" />
-                <entry key="authn/External" value="classpath:/net/shibboleth/idp/flows/authn/external-authn-flow.xml" />
-                <entry key="authn/Duo" value="classpath:/net/shibboleth/idp/flows/authn/duo-authn-flow.xml" />
-                <entry key="authn/MFA" value="classpath:/net/shibboleth/idp/flows/authn/mfa-authn-flow.xml" />
-                <entry key="authn/Function" value="classpath:/net/shibboleth/idp/flows/authn/function-authn-flow.xml" />
-                <entry key="authn/SAML" value="classpath:/net/shibboleth/idp/flows/authn/saml-authn-flow.xml" />
-          
-                <!-- One-off flow for discovery. -->
-                <entry key="authn/Discovery" value="classpath:/net/shibboleth/idp/flows/authn/discovery-flow.xml" />
-          
-                <!-- Main flow for subject c14n. -->
-                <entry key="c14n.events" value="%{idp.home}/conf/c14n/subject-c14n-events-flow.xml" />
-                <entry key="c14n.abstract" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-abstract-flow.xml" />
-                <entry key="c14n" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-flow.xml" />
-        
-                <!-- Standard post-login C14N methods. -->
-                <entry key="c14n/simple" value="classpath:/net/shibboleth/idp/flows/c14n/simple-subject-c14n-flow.xml" />
-                <entry key="c14n/x500" value="classpath:/net/shibboleth/idp/flows/c14n/x500-subject-c14n-flow.xml" />
-                <entry key="c14n/attribute" value="classpath:/net/shibboleth/idp/flows/c14n/attribute-sourced-subject-c14n-flow.xml" />
-        
-                <!--
-                Standard SAML C14N methods, including one supporting legacy use of the attribute resolver.
-                These all map to the same flow, and they derive the bean ID of an action to run based on the
-                flow id after the slash.
-                -->
-                <entry key="c14n/SAML2Transient" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-saml-default-flow.xml" />
-                <entry key="c14n/SAML2CryptoTransient" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-saml-default-flow.xml" />
-                <entry key="c14n/SAML2Persistent" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-saml-default-flow.xml" />
-                <entry key="c14n/SAML2Transform" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-saml-default-flow.xml" />
-                <entry key="c14n/SAML2ProxyTransform" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-saml-default-flow.xml" />
-                <entry key="c14n/SAML1Transient" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-saml-default-flow.xml" />
-                <entry key="c14n/SAML1CryptoTransient" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-saml-default-flow.xml" />
-                <entry key="c14n/SAML1Transform" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-saml-default-flow.xml" />
-                <entry key="c14n/LegacyPrincipalConnector" value="classpath:/net/shibboleth/idp/flows/c14n/subject-c14n-saml-default-flow.xml" />
-        
-                <!-- Main interceptor flow. -->
-                <entry key="intercept.events" value="%{idp.home}/conf/intercept/intercept-events-flow.xml" />
-                <entry key="intercept.abstract" value="classpath:/net/shibboleth/idp/flows/intercept/intercept-abstract-flow.xml" />
-                <entry key="intercept" value="classpath:/net/shibboleth/idp/flows/intercept/intercept-flow.xml" />
-        
-                <!-- Built-in interceptor flows. -->
-                <entry key="intercept/terms-of-use" value="classpath:/net/shibboleth/idp/flows/intercept/terms-of-use-flow.xml" />
-                <entry key="intercept/attribute-release" value="classpath:/net/shibboleth/idp/flows/intercept/attribute-release-flow.xml" />
-                <entry key="intercept/attribute-release-query" value="classpath:/net/shibboleth/idp/flows/intercept/attribute-release-query-flow.xml" />
-                <entry key="intercept/context-check" value="classpath:/net/shibboleth/idp/flows/intercept/context-check-flow.xml" />
-                <entry key="intercept/expiring-password" value="classpath:/net/shibboleth/idp/flows/intercept/expiring-password-flow.xml" />
-                <entry key="intercept/impersonate" value="classpath:/net/shibboleth/idp/flows/intercept/impersonate-flow.xml" />
-                <entry key="intercept/external" value="classpath:/net/shibboleth/idp/flows/intercept/external-flow.xml" />
-                <entry key="intercept/warning" value="classpath:/net/shibboleth/idp/flows/intercept/warning-flow.xml" />
-        
-                <!-- Inbound security processing of SAML messages, implemented as intercept flows. -->
-                <entry key="security-policy.abstract" value="classpath:/net/shibboleth/idp/flows/saml/security-abstract-flow.xml" />
-                <entry key="intercept/security-policy/shibboleth-sso" value="classpath:/net/shibboleth/idp/flows/saml/saml1/sso-security-flow.xml" />
-                <entry key="intercept/security-policy/saml2-sso" value="classpath:/net/shibboleth/idp/flows/saml/saml2/sso-security-flow.xml" />
-                <entry key="intercept/security-policy/saml2-ecp" value="classpath:/net/shibboleth/idp/flows/saml/saml2/ecp-security-flow.xml" />
-                <entry key="intercept/security-policy/saml2-slo" value="classpath:/net/shibboleth/idp/flows/saml/saml2/slo-security-flow.xml" />
-                <entry key="intercept/security-policy/saml2-idwsf-ssos" value="classpath:/net/shibboleth/idp/flows/saml/saml2/idwsf-ssos-security-flow.xml" />
-                <entry key="intercept/security-policy/saml-soap" value="classpath:/net/shibboleth/idp/flows/saml/soap-security-flow.xml" />
-        
-                <!-- CAS protocol flows. -->
-                <entry key="cas.abstract" value="classpath:/net/shibboleth/idp/flows/cas/cas-abstract-flow.xml" />
-                <entry key="cas.abstractValidate" value="classpath:/net/shibboleth/idp/flows/cas/validate-abstract-flow.xml" />
-                <entry key="cas/login" value="classpath:/net/shibboleth/idp/flows/cas/login-flow.xml" />
-                <entry key="cas/proxy" value="classpath:/net/shibboleth/idp/flows/cas/proxy-flow.xml" />
-                <entry key="cas/serviceValidate" value="classpath:/net/shibboleth/idp/flows/cas/serviceValidate-flow.xml" />
-                <entry key="cas/proxyValidate" value="classpath:/net/shibboleth/idp/flows/cas/proxyValidate-flow.xml" />
-                <entry key="cas/samlValidate" value="classpath:/net/shibboleth/idp/flows/cas/samlValidate-flow.xml" />
-                <entry key="cas/validate" value="classpath:/net/shibboleth/idp/flows/cas/validate-flow.xml" />
-                <!-- Dual mount of logout flow to CAS location. -->
-                <entry key="cas/logout" value="classpath:/net/shibboleth/idp/flows/logout/logout-flow.xml" />
-        
-                <!-- Client storage flows. -->
-                <entry key="client-storage/read" value="classpath:/net/shibboleth/idp/flows/client-storage/client-storage-read-flow.xml" />
-                <entry key="client-storage/write" value="classpath:/net/shibboleth/idp/flows/client-storage/client-storage-write-flow.xml" />
-            </map>
-        </property>
-    </bean>
-    
-    <!-- Default flow patterns with null values signifying use of the basePath on the registry to compute flow IDs. -->
-    <bean id="shibboleth.DefaultFlowPatterns" lazy-init="true"
-        class="org.springframework.beans.factory.config.MapFactoryBean">
-        <property name="sourceMap">
-            <map>
-                <!-- Load user flows out of config directory relative to base path property. -->
-                <entry key="/**/*-flow.xml">
-                    <null/>
-                </entry>
-                
-                <!-- Load plugin-defined flows from well-known classpath locations. -->
-                <entry key="classpath*:/META-INF/net/shibboleth/idp/flows/**/*-flow.xml"
-                    value="/META-INF/net/shibboleth/idp/flows" />
-            </map>
-        </property>
-    </bean>
-    
-    <!-- Custom factory bean for a flow registry that works around various SWF limitations. -->
-    <bean id="flowRegistry"
-        class="net.shibboleth.idp.profile.spring.factory.FlowDefinitionRegistryFactoryBean"
-        p:flowBuilderServices-ref="flowBuilderServices"
-        p:basePath="%{idp.webflows:%{idp.home}/flows}"
-        p:parent="#{getObject('shibboleth.ParentFlowRegistry')}"
-        p:flowLocations="#{getObject('shibboleth.FlowMap') ?: getObject('shibboleth.DefaultFlowMap')}"
-        p:flowLocationPatterns="#{getObject('shibboleth.FlowPatterns') ?: getObject('shibboleth.DefaultFlowPatterns')}" />
-
-    <webflow:flow-executor id="flowExecutor">
-        <webflow:flow-execution-repository max-execution-snapshots="0" conversation-manager="conversationManager" />
-        <webflow:flow-execution-listeners>
-            <webflow:listener ref="profileRequestContextFlowExecutionListener"
-                              criteria="%{idp.profile.exposeProfileRequestContextInServletRequest:*}" />
-            <webflow:listener ref="csrfTokenFlowExecutionListener"/>          
-        </webflow:flow-execution-listeners>
-    </webflow:flow-executor>
-
-    <bean id="conversationManager" class="org.springframework.webflow.conversation.impl.SessionBindingConversationManager"
-        p:lockTimeoutSeconds="%{idp.webflow.timeout:30}" p:maxConversations="%{idp.webflow.maxConversations:5}" />
-
-    <webflow:flow-builder-services id="flowBuilderServices" view-factory-creator="mvcViewFactoryCreator" />
-
-    <bean id="mvcViewFactoryCreator" class="org.springframework.webflow.mvc.builder.MvcViewFactoryCreator"
-            p:useSpringBeanBinding="true">
-        <property name="viewResolvers">
-            <list>
-                <ref bean="shibboleth.VelocityViewResolver" />
-                <ref bean="shibboleth.InternalViewResolver" />
-            </list>
-        </property>
-    </bean>
-
-    <bean id="profileRequestContextFlowExecutionListener"
-          class="net.shibboleth.idp.profile.support.ProfileRequestContextFlowExecutionListener" />
-
-	<bean id="csrfTokenFlowExecutionListener" init-method="initialize" destroy-method="destroy"
-          class="net.shibboleth.idp.ui.csrf.impl.CSRFTokenFlowExecutionListener" p:csrfTokenManager-ref="shibboleth.CSRFTokenManager"
-          p:enabled="%{idp.csrf.enabled:false}"
-          p:viewRequiresCSRFTokenPredicate-ref="shibboleth.DefaultViewRequiresCSRFTokenPredicate"
-          p:eventRequiresCSRFTokenValidationPredicate-ref="shibboleth.DefaultEventRequiresCSRFTokenValidationPredicate"/>
+    <!-- This is a stub pending the eventual requirement to update web.xml -->
     
-   	<bean id="shibboleth.CSRFTokenManager" class="net.shibboleth.idp.ui.csrf.CSRFTokenManager"
-       p:csrfParameterName="%{idp.csrf.token.parameter:csrf_token}"/>
-   	
-	<bean id="shibboleth.DefaultViewRequiresCSRFTokenPredicate" 
-		class="net.shibboleth.idp.ui.csrf.impl.DefaultViewRequiresCSRFTokenPredicate"/>
-	
-	<bean id="shibboleth.DefaultEventRequiresCSRFTokenValidationPredicate" 
-		class="net.shibboleth.idp.ui.csrf.impl.DefaultEventRequiresCSRFTokenValidationPredicate"/>
-          
-    <!-- Expose the FlowExecutor for access via servlet context outside the webflows. -->
-	<bean class="org.springframework.web.context.support.ServletContextAttributeExporter">
-	   <property name="attributes">
-	       <map>
-	           <entry key="net.shibboleth.idp.flowExecutor" value-ref="flowExecutor"/>
-	       </map>
-	   </property>
-	</bean>	
-
+    <import resource="classpath:/net/shibboleth/idp/conf/webflow-config.xml" />
          
 </beans>
diff --git a/idp-war/src/main/webapp/WEB-INF/web.xml b/idp-war/src/main/webapp/WEB-INF/web.xml
index 6d7050c41..4dd9dfc5c 100644
--- a/idp-war/src/main/webapp/WEB-INF/web.xml
+++ b/idp-war/src/main/webapp/WEB-INF/web.xml
@@ -126,7 +126,7 @@
         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
         <init-param>
             <param-name>contextConfigLocation</param-name>
-            <param-value>${idp.home}/system/conf/mvc-beans.xml, ${idp.home}/system/conf/webflow-config.xml</param-value>
+            <param-value>classpath*:/META-INF/net/shibboleth/idp/mvc/preconfig.xml,${idp.home}/system/conf/mvc-beans.xml,${idp.home}/system/conf/webflow-config.xml,classpath*:/META-INF/net/shibboleth/idp/mvc/postconfig.xml</param-value>
         </init-param>
         <init-param>
             <param-name>contextClass</param-name>

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list