cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrea Smyth <andrea.sm...@iona.com>
Subject Re: Service Model Extension
Date Tue, 16 Jan 2007 15:55:56 GMT
Balaji Ravi wrote:

> Thats what i thought too... apparently everything under definitions is
> getting added to the ServiceInfo... I agree it is a bit misleading...

I think that' a typo - everywhere else in WSDLServiceBuilder the 
extensions of the corresponding wsdl element are copied as extensions, e.g.
l. 249: copyExtensors(ei, port.getExtensibilityElements());
l. 266: copyExtensors(bi, binding.getExtensibilityElements());
etc.
l. 133 should probably read:
 copyExtensors(service, serv.getExtensibilityElements());

Andrea.

>
> - Balaji
>
> On 1/16/07, Andrea Smyth <andrea.smyth@iona.com> wrote:
>
>>
>> Balaji Ravi wrote:
>>
>> > Hi andrea,
>> >
>> > In yoko(corba binding) also, we ran in to the same issue & it looks
>> > like all
>> > the elements defined under wsdl:definitions are exposed via the
>> > ServiceInfo
>> > class...
>> >
>> > The getExtensors(Class<T>) actually retrieves the extension 
>> elements...
>>
>> but that only retrieves the extensions on the wsdl:service element (and
>> same for BindingInfo, EndpointInfo, ServiceInfo, all derived from
>> AbstractPropertiesHolder)?
>> Andrea.
>>
>> >
>> > - Balaji
>> >
>> > On 1/16/07, Andrea Smyth <andrea.smyth@iona.com> wrote:
>> >
>> >>
>> >> In the context of WS-Policy I have come accross the problem to 
>> retrieve
>> >> wsp:Policy or wsp:PolicyReference elements attached not to
>> wsdl:Service,
>> >> wsdl:Port etc elements but appearing as children of the
>> wsdl:definitions
>> >> element. As such they cannot be currently be retrieved from out 
>> service
>> >> model. Attached to e.g. a service element that would be possible via
>> >> List<UnknowExensibilityElement> extensions =
>> >> ServiceInfo.getExtensions(UnknownExtensibilityElement.class);
>> >> for (UnknowExensibilityElement e : extensions) {
>> >> if (e.getElementType()).equal(new
>> >> QName("http://schemas.xmlsoap.org/ws/2004/09/policy",
>> >> "Policy[Reference]")) {
>> >> ...
>> >> }
>> >>
>> >>
>> >> What do you think about extending the Service Model by something 
>> like a
>> >> DescriptionInfo (wsdl 2.0 description <==> wsdl 1.1 definition)
>> >>
>> >> class DescriptionInfo extends AbstractPropertiesHolder {
>> >>     // return value of description's name attribute
>> >>     String getName() {
>> >>
>> >>    }
>> >>
>> >>    // return list of top level elements (InterfaceInfo, BindingInfo,
>> >> ServiceInfo etc...)
>> >>    List<Described> getDescribed() {
>> >>    }
>> >> }
>> >>
>> >> class Described extends AbstractPropertiesHolder {
>> >>     DescriptionInfo getDescription() {
>> >>     }
>> >> }
>> >>
>> >> class ServiceInfo  extends Described {
>> >>     // content as before
>> >> }
>> >>
>> >> and same for BindingInfo, InterfaceInfo etc.
>> >>
>> >> Cheers,
>> >> Andrea.
>> >>
>> >>
>> >
>>
>>
>


Mime
View raw message