X-Git-Url: http://www.project-moonshot.org/gitweb/?p=shibboleth%2Fcpp-opensaml.git;a=blobdiff_plain;f=saml%2Fsaml2%2Fbinding%2Fimpl%2FSAML2SOAPEncoder.cpp;h=a4aa894f7759481557df7026792645f4439e92f4;hp=64acb647470a9f8bdb77efcf19339ddf2879afa6;hb=07dbbcf3a8fc0aba6fefe741f1760442a0a6ea65;hpb=90cbdb707b8a48d5a7693d8e18dcaf2dc751b14f diff --git a/saml/saml2/binding/impl/SAML2SOAPEncoder.cpp b/saml/saml2/binding/impl/SAML2SOAPEncoder.cpp index 64acb64..a4aa894 100644 --- a/saml/saml2/binding/impl/SAML2SOAPEncoder.cpp +++ b/saml/saml2/binding/impl/SAML2SOAPEncoder.cpp @@ -97,6 +97,7 @@ long SAML2SOAPEncoder::encode( genericResponse.setContentType("text/xml"); HTTPResponse* httpResponse = dynamic_cast(&genericResponse); if (httpResponse) { + httpResponse->setResponseHeader("Expires", "01-Jan-1997 12:00:00 GMT"); httpResponse->setResponseHeader("Cache-Control", "no-cache, no-store, must-revalidate, private"); httpResponse->setResponseHeader("Pragma", "no-cache"); } @@ -152,9 +153,12 @@ long SAML2SOAPEncoder::encode( rootElement = env->marshall(); } - string xmlbuf; - XMLHelper::serialize(rootElement, xmlbuf); - istringstream s(xmlbuf); + stringstream s; + s << *rootElement; + + if (log.isDebugEnabled()) + log.debug("marshalled envelope:\n%s", s.str().c_str()); + log.debug("sending serialized envelope"); bool error = (!msg && env->getBody() && env->getBody()->hasChildren() && dynamic_cast(env->getBody()->getUnknownXMLObjects().front())); @@ -187,10 +191,13 @@ long SAML2SOAPEncoder::encode( body->getUnknownXMLObjects().push_back(fault); rootElement = env->marshall(); - string xmlbuf; - XMLHelper::serialize(rootElement, xmlbuf); - istringstream s(xmlbuf); - log.debug("sending serialized fault"); + stringstream s; + s << *rootElement; + + if (log.isDebugEnabled()) + log.debug("marshalled envelope:\n%s", s.str().c_str()); + + log.debug("sending serialized envelope"); long ret = genericResponse.sendError(s); // Cleanup by destroying XML.