pullingshots / Shipment

Perl interface into various shipping web service API's - FedEx, UPS, Purolator, Temando, Canada Post
https://metacpan.org/pod/Shipment
19 stars 19 forks source link

generated wsdl perl files don't match up #14

Closed willt closed 12 years ago

willt commented 12 years ago

I managed to work around the error I was getting running wsdl2perl by pushing instead of unshifting the fatpacked packages. This probably has a side effect of not using the proper packaged classes but I thought I would give it a try.

Your generated files contain a response section. The files I generated do not. Did you manually add these sections or is wsdl2perl.pl not generating them properly for some reason?

Example: ShipPort.pm in sub ProcessShipment :

         parts => [qw( Shipment::UPS::WSDL::ShipElements::UPSSecurity )],

+ }, headerfault => {

pullingshots commented 12 years ago

As I mentioned in a comment to your previous issue, you should be installing SOAP::WSDL locally and running the wsdl2perl.pl script from that installation. The wsdl2perl.pl script included in the Shipment distribution is not supported.

I did not manually add the response sections, but there are a number of hacks necessary to get the wsdl2perl generated classes working for UPS wsdl files. I have roughly documented the steps in the file: https://github.com/pullingshots/Shipment/blob/master/wsdl-files/ups-wsdl

Obviously, ymmv. Good luck!

I don't have any current timelines for adding tracking functionality to any of the Shipment modules, so if you are willing to put some time into the UPS one, that would be great!

Thanks!

pullingshots commented 12 years ago

I used version 2.00.99_3 of SOAP::WSDL to generate the current UPS classes for Shipping and Rating.