The creation of the STSClient code was before my time at CXF and so I can
only guess at the reasons. The main reason I suspect that it was
implemented the way it was, is that the WS-Trust spec imposes almost no
restrictions on the structure of the requests, and hence working from types
generated from a WSDL would largely be meaningless. For example, a
"request" is defined as:

<xs:complexType name='AbstractRequestSecurityTokenType' >
        <xs:sequence>
          <xs:any namespace='##any' processContents='lax' minOccurs='0'
maxOccurs='unbounded' />
        </xs:sequence>
        <xs:attribute name='Context' type='xs:anyURI' use='optional' />
        <xs:anyAttribute namespace='##other' processContents='lax' />
      </xs:complexType>

A secondary reason might have been to support the WS-MEX protocol.

Colm.


On Tue, Aug 13, 2013 at 9:15 AM, Christian Schneider <
[email protected]> wrote:

> Good question. I also wondered about this when I saw the code the first
> time.
>
> Christian
>
> Am 10.08.2013 21:56, schrieb Al Le:
>
>  Hello.
>>
>> Why is the class STSClient (org.apache.cxf.ws.security.**trust.STSClient)
>> and its companion class AbstractSTSClient implemented "by hand" and not
>> e.g. using JAX-WS? The WSDL of the web service in question is available
>> (it's part of WS-Trust spec). So why create the request and read the
>> response "by hand" instead of using a typed interface to it?
>>
>> AL
>>
>
>
> --
>  Christian Schneider
> http://www.liquid-reality.de
>
> Open Source Architect
> Talend Application Integration Division http://www.talend.com
>
>


-- 
Colm O hEigeartaigh

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

Reply via email to