It looks like someone had a similar problem here, which they worked around:

http://stackoverflow.com/questions/24144629/apache-cxf-client-for-claims-mode-xrm-microsoft-dynamics-crm-2011

"I found out what caused this: the schemas containing RequestSecurityToken
etc. *are* in the mex SOAP call result, but in separate <wsx:MetadataSection
Dialect="http://www.w3.org/2001/XMLSchema";> sections, which the code in
AbstractSTSClient completely ignores.

So I put in place my own WSDLFactory+WSDLReader (using property
{{javax.wsdl.factory.WSDLFactory}}), which just inserts the schemas for the
three namespaces into any WSDL it reads."

Could you attach the full WS-MEX request + response so that I can see how
this issue might be fixed?

Colm.


On Mon, Jun 16, 2014 at 1:34 PM, roband915 <robert.anders...@gmx.com> wrote:

> Ok so it looks like the soap-version error is fixed but....(Of course). Now
> it looks like cxf is having problem parsing imported xsd:s in the wsdl that
> adfs presents.
>
> The error-message is this:
> Part request defined as element
> {http://docs.oasis-open.org/ws-sx/ws-trust/200512}RequestSecurityToken
> which
> is not in the schema."
>
> Below code is a snippet from the wsdl. The important part is the bold part.
>
> <wsdl:types>
> <xsd:schema
> targetNamespace="
> http://schemas.microsoft.com/ws/2008/06/identity/securitytokenservice/Imports
> ">
> <xsd:import
> schemaLocation="
> https://adfs.msad.lab.xxx.se/adfs/services/trust/mex?xsd=xsd0";
> namespace="http://schemas.microsoft.com/Message"/>
> <xsd:import
> schemaLocation="
> https://adfs.msad.lab.xxx.se/adfs/services/trust/mex?xsd=xsd1";
> namespace="http://schemas.xmlsoap.org/ws/2005/02/trust"/>
> <xsd:import
> schemaLocation="
> https://adfs.msad.lab.xxx.se/adfs/services/trust/mex?xsd=xsd2";
> namespace="http://docs.oasis-open.org/ws-sx/ws-trust/200512"/>
> </xsd:schema>
> </wsdl:types>
> <wsdl:message
> name="IWSTrustFeb2005Async_TrustFeb2005IssueAsync_InputMessage">
> <wsdl:part name="request" element="t:RequestSecurityToken"/>
> </wsdl:message>
> <wsdl:message
> name="IWSTrustFeb2005Async_TrustFeb2005IssueAsync_OutputMessage">
> <wsdl:part name="TrustFeb2005IssueAsyncResult"
> element="t:RequestSecurityTokenResponse"/>
> </wsdl:message>
> *<wsdl:message name="IWSTrust13Async_Trust13IssueAsync_InputMessage">
> <wsdl:part name="request" element="trust:RequestSecurityToken"/>
> </wsdl:message>*
> <wsdl:message name="IWSTrust13Async_Trust13IssueAsync_OutputMessage">
> <wsdl:part name="Trust13IssueAsyncResult"
> element="trust:RequestSecurityTokenResponseCollection"/>
> </wsdl:message>
>
> When I debug the "schema" named
> "
> http://schemas.microsoft.com/ws/2008/06/identity/securitytokenservice/Imports
> "
> is found but contains nothing.
>
>
>
>
> --
> View this message in context:
> http://cxf.547215.n5.nabble.com/Issue-with-WS-Trust-using-security-tokens-SAML-assertions-tp5744142p5745213.html
> Sent from the cxf-user mailing list archive at Nabble.com.
>



-- 
Colm O hEigeartaigh

Talend Community Coder
http://coders.talend.com

Reply via email to