You can try implementing

org.apache.cxf.transports.http.QueryHandler

which would support ?wsdl queries and delegate to

org.apache.cxf.transport.http.WSDLQueryHandler.

In its writeResponse() implementation you might try replacing the
OutputStream with the one which would be at the top of the XSLT chain and
transform or drop certain xsd elements as needed,

just one possible option to experiment with, there could be more effective
ones

cheers, Sergey

On Thu, Sep 9, 2010 at 10:28 PM, Will Johnson
<[email protected]>wrote:

> I'm trying to figure out how to manipulate a web service such that I can
> support some client development environments that can't handle certain XSD
> element types.  For instance: I'd like to dynamically replace the following
> in my wsdl:
>
>
>
> <xs:element minOccurs="0" name="value" type="xs:anyType"/>
>
>
>
> With
>
>
>
> <xs:element minOccurs="0" name="value" type="xs:string"/>
>
>
>
> This needs to happen:
>
>
>
> * at WSDL generation time - ie the client sees the xsd:string version
>
> * at request time - the request assuming a string needs to be translated to
> specify that it is always a string
>
> * at response time - the response needs to take the string value of
> whatever
> comes out and treat it accordingly.
>
>
>
> I need to make sure that clients can choose to enable or disable this
> ability as most development environments can handle the any type but a few
> older gui driven platforms aren't as forgiving.  From the basic
> investigation I've done it looks like an interceptor is what I'm looking
> for
> but I'm having a hard time find a good starting point.
>
>
>
> Any help/pointers would be appreciated.
>
>
>
> -          will
>
>

Reply via email to