[java-identity-provider] branch maint-3.4 updated: IDP-1480 - Relying party init fails when using CAS.LoginConfiguration.MDDriven

Scott Cantor cantor.2 at osu.edu
Wed Sep 4 14:51:55 EDT 2019


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

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

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

The following commit(s) were added to refs/heads/maint-3.4 by this push:
       new  7d995b3   IDP-1480 - Relying party init fails when using CAS.LoginConfiguration.MDDriven
7d995b3 is described below

commit 7d995b314d03db7f8b8c5a3ce8bdd03d43bb1227
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Wed Sep 4 14:51:57 2019 -0400

    IDP-1480 - Relying party init fails when using
    CAS.LoginConfiguration.MDDriven
    
    https://issues.shibboleth.net/jira/browse/IDP-1480
    
    Fix for branch that worksaround the error.
---
 .../idp/profile/config/AbstractProfileConfiguration.java   | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/idp-profile-api/src/main/java/net/shibboleth/idp/profile/config/AbstractProfileConfiguration.java b/idp-profile-api/src/main/java/net/shibboleth/idp/profile/config/AbstractProfileConfiguration.java
index 2093046..b1a45c4 100644
--- a/idp-profile-api/src/main/java/net/shibboleth/idp/profile/config/AbstractProfileConfiguration.java
+++ b/idp-profile-api/src/main/java/net/shibboleth/idp/profile/config/AbstractProfileConfiguration.java
@@ -36,6 +36,7 @@ import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
 import net.shibboleth.utilities.java.support.annotation.constraint.Unmodifiable;
 import net.shibboleth.utilities.java.support.logic.Constraint;
+import net.shibboleth.utilities.java.support.logic.ConstraintViolationException;
 import net.shibboleth.utilities.java.support.primitive.StringSupport;
 import org.opensaml.profile.context.ProfileRequestContext;
 import org.slf4j.Logger;
@@ -276,11 +277,16 @@ public abstract class AbstractProfileConfiguration implements ProfileConfigurati
      */
     @Nullable protected ProfileRequestContext getProfileRequestContext() {
         if (servletRequest != null) {
-            final Object object = servletRequest.getAttribute(ProfileRequestContext.BINDING_KEY);
-            if (object instanceof ProfileRequestContext) {
-                return (ProfileRequestContext) object;
+            try {
+                final Object object = servletRequest.getAttribute(ProfileRequestContext.BINDING_KEY);
+                if (object instanceof ProfileRequestContext) {
+                    return (ProfileRequestContext) object;
+                }
+                log.warn("ProfileConfiguration {}: No ProfileRequestContext in request", getId());
+            } catch (final ConstraintViolationException e) {
+                // This traps the condition on IdP startup before a servlet request exists.
+                // It's a workaround for IDP-1480 and is moot in V4 as this code is gone.
             }
-            log.warn("ProfileConfiguration {}: No ProfileRequestContext in request", getId());
         } else {
             log.warn("ProfileConfiguration {}: ServletRequest was null", getId());
         }

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


More information about the commits mailing list