1 Reply Latest reply on Dec 31, 2012 8:51 AM by arun_adam

    SessionIndex value in the LogoutRequest?

    arun_adam

      Hi All,

       

      During SingleLogout requests, my IDP kept complaining:

       

      ERROR: IDPSingleLogout.processLogoutRequest: session index are null in logout request

       

      Looking at the LogoutRequest generated, it was right, the session index isn't in the request. Looks like the SAMLRequestWriter doesn't check for it in the LogoutRequestType, and I'm wondering why (could it be because its optional?)

       

      Anyway I kind of put in a quickfix for this by changing the convert method, just wanted to make sure this was right:

       

      ......

      List<String> sessionIndexes = logOutRequest.getSessionIndex();

                              logger.trace("SIZE OF SESSION INDEXES: "+sessionIndexes.size());

                              if(sessionIndexes.size()>0)

                              {

       

                                        StaxUtil.writeStartElement(this.writer, PROTOCOL_PREFIX, JBossSAMLConstants.SESSION_INDEX.get(),"");

                                        for(String sessionIndex : sessionIndexes )

                                        {

                                                  StaxUtil.writeCharacters(this.writer, sessionIndex);

                                        }

       

                                        StaxUtil.writeEndElement(this.writer);

                                        StaxUtil.flush(this.writer);

                              }

      .....

      Regards

        • 1. Re: SessionIndex value in the LogoutRequest?
          arun_adam

          I think there is another problem related to the SessionIndex, this time in the SAMLSloRequestParser. It seems to add the session index by logoutRequest.getSessionIndex().add(StaxParserUtil.getElementText(xmlEventReader)); which will always return a java.lang.UnsupportedOperationException since logoutRequest.getSessionIndex() will return an unmodifiable Collection.

           

          I reckon it should be something like logoutRequest.addSessionIndex(StaxParserUtil.getElementText(xmlEventReader));

           

          Regards