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...

- Balaji

On 1/16/07, Andrea Smyth <[EMAIL PROTECTED]> 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.


Reply via email to