У меня ниже упомянутый XML-запрос запроса
// Пространство имен char * pszNs_Soap_prefix = "s";char * pszNs_Soap_URL = "http://schemas.xmlsoap.org/soap/envelope/";
char * pszNs_SamlP_Prefix =" sp "; char * pszNS_SamlP_URL =" урна: оазис: имена: tc: SAML: 1.0: протокол ";
charpszNS_Saml_Prefix = "sl"; char * pszNS_Saml_URL = "urn: oasis: names: tc: SAML: 1.0: утверждение";
char* pszXPathQuery3 = "/s:Envelope/s:Body/sp:Response/sl:Assertion/sl:AttributeStatement/s1:Attribute[@AttributeName='role']/sl:AttributeValue";
, но получая NULL из функции библиотеки xmlXPathEvalExpression, выше - мой xpзапрос, не знаю, где я иду не так.
m_pXmlXPathObject = xmlXPathEvalExpression ((xmlChar *) pszXPathQuery, m_pXmlXPathContext);
XML string
<saml:Assertion MajorVersion="1"
MinorVersion="1"
AssertionID="_a75adf55-01d7-40cc-929f-dbd8372ebdfc"
Issuer="SAML_AUTH_URI"
IssueInstant="2005-06-08T12:00:01.100Z">
<saml:AuthenticationStatement
AuthenticationMethod="urn:oasis:names:tc:SAML:1.0:am:password"
AuthenticationInstant="2005-06-08T11:59:59.000Z">
<saml:Subject>
<saml:NameIdentifier>jre</saml:NameIdentifier>
</saml:Subject>
</saml:AuthenticationStatement>
<saml:AttributeStatement>
<saml:Attribute
AttributeName="role"
AttributeNamespace="oasis:names:tc:xacml:2.0:subject">
<saml:AttributeValue>weboamadmin</saml:AttributeValue>
</saml:Attribute>
</saml:AttributeStatement>
</saml:Assertion>
</samlp:Response>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>