WSDLInterfaceContract wsdlInterfaceContract = (WSDLInterfaceContract)javaInterfaceContract.getNormalizedWSDLContract();
if(wsdlInterfaceContract != null){
// The user has explicitly associated a WSDL with the Java implementation
// using a @WebService(wsdlLocation="...") annotation
WSDLInterface wsdlInterface = (WSDLInterface)wsdlInterfaceContract.getInterface();
if (wsdlInterface.isUnresolved()){
//WSDLDefinition resolved = resolver.resolveModel(WSDLDefinition.class, wsdlInterface.getWsdlDefinition(), context);
extensionProcessor.resolve(wsdlInterfaceContract, resolver, context);
// check that the Java and WSDL contracts are compatible
interfaceContractMapper.checkCompatibility(wsdlInterfaceContract,
javaInterfaceContract,
Compatibility.SUBSET,
false,
false);
// retrieve the resolved WSDL interface
wsdlInterface = (WSDLInterface)wsdlInterfaceContract.getInterface();
// copy policy from the WSDL interface to the Java interface
javaInterface.getPolicySets().addAll(wsdlInterface.getPolicySets());
javaInterface.getRequiredIntents().addAll(wsdlInterface.getRequiredIntents());
// copy policy from the WSDL interface to the component type service
service.getPolicySets().addAll(wsdlInterface.getPolicySets());
service.getRequiredIntents().addAll(wsdlInterface.getRequiredIntents());
// TODO - is there anything else to be copied from the user specified WSDL?
}
}
}