I created a provider WSD by importing an externally defined WSDL (Contract first). The WSDL has imports from a separate xsd file. The externally defined wsdl imports the schema through relative path.
The WSD that gets created has a hard coded reference to the external schema. Eg., schemaLocation=“http://machineName:portNumber/directory/SchemaName.xsd”. In our case, the machine name happens to be the development box.
Service consumers access the WSDL through https://prodMachineName:portNumber/ws/directory/ServiceName.WSD?WSDL . However, this WSDL points back to the schema located on the development box at http://machineName:portNumber/directory/SchemaName.xsd.
When the WSD gets migrated up the environments (test, stage, prod), the reference gets promoted as well, thus making the WSDL in production dependent on the schema location on development box. If the development box is brought offline for patching, this affects the web service consumers in production
Why would the product hard code the reference to the schema in wsdl? Can the WSD creation not suck the xml schema into the node.ndf file and get rid of this dependency? Are there any work arounds to this issue or fix packs that address it?
Any help is highly appreciated.