<html dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="text-align:left; direction:ltr;">
<div>Nevermind, it's fixed. An old bug report (from me!) which shows the same problem and the fix:</div>
<div><a href="https://issues.shibboleth.net/jira/browse/IDP-1130">https://issues.shibboleth.net/jira/browse/IDP-1130</a></div>
<div><br>
</div>
<div>It seems I've repeated my mistake, a bad configuration on my part. I needed to uncomment the alias above after overriding the shibboleth.consent.terms-of-use.Key, i.e.:</div>
<div><br>
</div>
<div><b> <!-- </b></div>
<div><b> <alias alias="shibboleth.consent.terms-of-use.Key" name="shibboleth.RelyingPartyIdLookup.Simple" /></b></div>
<div><b> --> </b></div>
<div><br>
</div>
<div> <bean id="shibboleth.consent.terms-of-use.Key"</div>
<div> class="com.google.common.base.Functions" factory-method="compose"></div>
<div> <constructor-arg name="g"></div>
<div> <bean class="com.google.common.base.Functions" factory-method="forMap" c:defaultValue="terms-of-use"></div>
<div> <constructor-arg name="map"></div>
<div> <map></div>
<div> <entry key="<a href="https://uat.isp.cibc.com">https://uat.isp.cibc.com</a>" value="cibc-terms" /></div>
<div> </map></div>
<div> </constructor-arg></div>
<div> </bean></div>
<div> </constructor-arg></div>
<div> <constructor-arg name="f"></div>
<div> <ref bean="shibboleth.RelyingPartyIdLookup.Simple" /></div>
<div> </constructor-arg></div>
<div> </bean></div>
<div></div>
<div><br>
</div>
<div>"Those who do not remember their past are doomed to repeat it"</div>
<div><br>
</div>
<div>On Fri, 2019-06-14 at 17:14 -0400, Ryan Suarez wrote:</div>
<blockquote type="cite" style="margin:0 0 0 .8ex; border-left:2px #729fcf solid;padding-left:1ex">
<div>Greetings,</div>
<div><br>
</div>
<div>I've opted to do a clean install of Shib IdP v3.4.4 ( with jetty v9.4.18.v20190429 and Ubuntu's (18.04) openJDK v11.0.3 ) and manually copy/convert over the configs from the current Shib IdP v3.3.0 (previously upgraded from Shib IdP v2). However, I'm getting
the following error regarding terms-of-use for a specific SP:</div>
<div><br>
</div>
<div>2019-06-14 16:55:13,185 - 142.55.243.12 - DEBUG [net.shibboleth.idp.profile.interceptor.impl.PopulateProfileInterceptorContext:126] - Profile Action PopulateProfileInterceptorContext: Installing flow intercept/terms-of-use into interceptor context</div>
<div>2019-06-14 16:55:13,191 - 142.55.243.12 - DEBUG [net.shibboleth.idp.profile.interceptor.impl.FilterFlowsByNonBrowserSupport:52] - Profile Action FilterFlowsByNonBrowserSupport: Request does not have non-browser requirement, nothing to do</div>
<div>2019-06-14 16:55:13,192 - 142.55.243.12 - DEBUG [net.shibboleth.idp.profile.interceptor.impl.SelectProfileInterceptorFlow:101] - Profile Action SelectProfileInterceptorFlow: Checking flow intercept/terms-of-use for applicability...</div>
<div>2019-06-14 16:55:13,192 - 142.55.243.12 - DEBUG [net.shibboleth.idp.profile.interceptor.impl.SelectProfileInterceptorFlow:84] - Profile Action SelectProfileInterceptorFlow: Selecting flow intercept/terms-of-use</div>
<div>2019-06-14 16:55:13,429 - 142.55.243.12 - ERROR [net.shibboleth.idp.profile.interceptor:-2] - Uncaught runtime exception</div>
<div>org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'shibboleth.consent.terms-of-use.Key' available</div>
<div> at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:687)</div>
<div>2019-06-14 16:55:13,443 - 142.55.243.12 - WARN [org.opensaml.profile.action.impl.LogEvent:105] - A non-proceed event occurred while processing the request: RuntimeException</div>
<div><br>
</div>
<div>Any ideas? Here is the config:</div>
<div><br>
</div>
<div># messages/messages.properties</div>
<div>my-terms = my-tou</div>
<div>my-tou.title = My Terms of Use</div>
<div>my-tou.text = My text</div>
<div><br>
</div>
<div># conf/intercept/consent-intercept-config.xml</div>
<div><bean id="shibboleth.consent.terms-of-use.Key"</div>
<div> class="com.google.common.base.Functions" factory-method="compose"></div>
<div> <constructor-arg name="g"></div>
<div> <bean class="com.google.common.base.Functions" factory-method="forMap" c:defaultValue="terms-of-use"></div>
<div> <constructor-arg name="map"></div>
<div> <map></div>
<div> <entry key="<a href="https://someSP1.somedomain">https://someSP1.somedomain</a>" value="my-terms" /></div>
<div> </map></div>
<div> </constructor-arg></div>
<div> </bean></div>
<div> </constructor-arg></div>
<div> <constructor-arg name="f"></div>
<div> <ref bean="shibboleth.RelyingPartyIdLookup.Simple" /></div>
<div> </constructor-arg></div>
<div></bean></div>
<div><br>
</div>
<div># conf/relying-party.xml</div>
<div><bean parent="RelyingPartyByName" c:relyingPartyIds="#{{'<a href="https://someSP1.somedomain'">https://someSP1.somedomain'</a>, '<a href="https://someSP2.somedomain">https://someSP2.somedomain</a>, '<a href="https://someSP3.somedomain'}}" >?="">https://someSP3.somedomain'}}"></a>;;</div>
<div> <property name="profileConfigurations"></div>
<div> <list></div>
<div> <bean parent="SAML2.SSO" p:encryptAssertions="false" p:postAuthenticationFlows="terms-of-use" /></div>
<div> </list></div>
<div> </property></div>
<div></bean></div>
<div><br>
</div>
<div>regards,</div>
<div>Ryan</div>
</blockquote>
</body>
</html>