|
Hello,
UPS distributes their wsdl files inside a zip file and makes use of multiple <import>'s. For example, their Ship Web Service is defined in a file named Ship.wsdl which imports 3 other files: UPSSecurity.xsd, Error1.1.xsd, ShipWebServiceSchema.xsd using the following xml.
<wsdl:types>
<xsd:schema>
<!-- This schema defines the UPS Security header used for authorization pur
+poses -->
<xsd:import namespace="http://www.ups.com/XMLSchema/XOLTWS/UPSS/v1.0" schem
+aLocation="UPSSecurity.xsd"/>
<!-- This schema defines the error detail data types returned within SOAPF
+aults to provide more specific information pertaining to the problem. -->
<xsd:import namespace="http://www.ups.com/XMLSchema/XOLTWS/Error/v1.1" sche
+maLocation="Error1.1.xsd"/>
<!-- This schema defines the Ship service data types -->
<xsd:import namespace="http://www.ups.com/XMLSchema/XOLTWS/Ship/v1.0" schem
+aLocation="ShipWebServiceSchema.xsd"/>
</xsd:schema>
</wsdl:types><wsdl:types>
<xsd:schema>
<!-- This schema defines the UPS Security header used for authorization pur
+poses -->
<xsd:import namespace="http://www.ups.com/XMLSchema/XOLTWS/UPSS/v1.0" schem
+aLocation="UPSSecurity.xsd"/>
<!-- This schema defines the error detail data types returned within SOAPF
+aults to provide more specific information pertaining to the problem. -->
<xsd:import namespace="http://www.ups.com/XMLSchema/XOLTWS/Error/v1.1" sche
+maLocation="Error1.1.xsd"/>
<!-- This schema defines the Ship service data types -->
<xsd:import namespace="http://www.ups.com/XMLSchema/XOLTWS/Ship/v1.0" schem
+aLocation="ShipWebServiceSchema.xsd"/>
</xsd:schema>
</wsdl:types>
Since wsdl2perl does not accept a local path to the wsdl file, I have copied Ship.wsdl to my web server. If there is a better way of doing this, please let me know.
My problem is that the import's fail even if I copy them to my web server. Is there some way of getting this to work? As a workaround, I have simply copy/pasted the contents of the import files into the wsdl file which seems to have done the trick.
Thanks in advance for any help.
Andrew |