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