Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-73420

Login impossible when Liferay SAML SP started whilst IdP is unavailable

    Details

    • Fix Priority:
      2

      Description

      1. Configure Liferay as a SAML SP
      2. Configure a SAML IdP, for example a second Liferay instance
      3. Assert that you are able to log into the SP using SAML
      4. Shut down both SAML SP & IdP
      5. Start the SAML SP
      6. Click the usual "Login" link to start the login process

       Expected result: Login is successful

       Actual result: A blank page is displayed, and in the logs the following stack trace is shown.

      Please note that even after starting the IdP it appears the SP also needs to be restarted to clear the issue.

      com.liferay.saml.runtime.SamlException: java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
      at com.liferay.saml.opensaml.integration.internal.metadata.MetadataManagerImpl.getEntityDescriptor(MetadataManagerImpl.java:185)
      at com.liferay.saml.opensaml.integration.internal.profile.BaseProfile.getSamlMessageContext(BaseProfile.java:168)
      at com.liferay.saml.opensaml.integration.internal.profile.BaseProfile.getSamlMessageContext(BaseProfile.java:223)
      at com.liferay.saml.opensaml.integration.internal.profile.WebSsoProfileImpl.doSendAuthnRequest(WebSsoProfileImpl.java:632)
      at com.liferay.saml.opensaml.integration.internal.profile.WebSsoProfileImpl.sendAuthnRequest(WebSsoProfileImpl.java:178)
      at com.liferay.saml.runtime.internal.servlet.filter.SamlSpSsoFilter.login(SamlSpSsoFilter.java:144)
      at com.liferay.saml.runtime.internal.servlet.filter.SamlSpSsoFilter.processFilter(SamlSpSsoFilter.java:166)
      ...
      Caused by: java.lang.ClassCastException: org.apache.xerces.parsers.XIncludeAwareParserConfiguration cannot be cast to org.apache.xerces.xni.parser.XMLParserConfiguration
      at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
      at org.apache.xerces.parsers.DOMParser.<init>(Unknown Source)
      at org.apache.xerces.jaxp.DocumentBuilderImpl.<init>(Unknown Source)
      at org.apache.xerces.jaxp.DocumentBuilderFactoryImpl.newDocumentBuilder(Unknown Source)
      at org.opensaml.xml.parse.BasicParserPool.createBuilder(BasicParserPool.java:584)
      at org.opensaml.xml.parse.BasicParserPool.getBuilder(BasicParserPool.java:163)
      at org.opensaml.xml.parse.BasicParserPool.newDocument(BasicParserPool.java:208)
      at org.opensaml.xml.io.AbstractXMLObjectMarshaller.marshall(AbstractXMLObjectMarshaller.java:84)
      at com.liferay.saml.opensaml.integration.internal.util.OpenSamlUtil.signObject(OpenSamlUtil.java:807)
      at com.liferay.saml.opensaml.integration.internal.metadata.MetadataGeneratorUtil.buildSpEntityDescriptor(MetadataGeneratorUtil.java:160)
      at com.liferay.saml.opensaml.integration.internal.metadata.MetadataManagerImpl.getEntityDescriptor(MetadataManagerImpl.java:176)
      ... 51 more
      

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              tomas.polesovsky Tomáš Polešovský
              Reporter:
              id30721 id30721
              Participants of an Issue:
              Recent user:
              Michael Saechang
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved:
                Days since last comment:
                4 years, 49 weeks, 5 days ago

                  Packages

                  Version Package
                  7.0.X
                  Master