2

I am having issues with trying to create a client using node-soap, and this wsdl: http://ultra-api.ultradns.com:8008/UltraDNS_WS/v01

It keeps throwing an undefined error once it hits this:

<wsdl:message name="getResourceRecordsOfDNameByTypeResponse">
<wsdl:part name="ResourceRecordList" type="ns1:ResourceRecordList">
</wsdl:part>
</wsdl:message>

If you look at the wsdl it has 4 schemas:

  • webservice.api.ultra.neustar.com/v01/
  • webservice.api.ultra.neustar.com/
  • schema.ultraservice.neustar.com/
  • jaxb.dev.java.net/array

The ResourceRecordList is in the schema.ultraservice.neustar.com but for some reason node-soap keeps looking into the webservice.api.ultra.neustar.com/v01/ schema.

I've looked through stack overflow, and the issues on node-soap, and haven't figured out where to update the code to look for multiple schemas/namespaces.

Thanks

  • What have you tried so far, any code? I have tried this wsdl in soap ui. Thats working perfectly fine. – kingAm Dec 27 '13 at 04:13
  • Yes in soap UI it works fine, I'm trying to use node-soap https://github.com/milewise/node-soap since my dashboard is built with node as the server – user3137974 Dec 27 '13 at 17:25

1 Answers1

1

The solution:

to change line 50 in lib/wsdl.js from

if(obj.hasOwnProperty(key)){

to

if(obj.hasOwnProperty(key) && !base[key]){

thanks to Christiaan W. for the answer

  • 2
    hey, if this did solve your problem, how about contributing to `node-soap` and change/fix the specific code via pull request? I think the loc you're referencing is within the `extend` function and has moved to [line 76](https://github.com/vpulim/node-soap/blob/master/lib/wsdl.js#L76). If this fix was of help for you, it would be awesome if you can bring your knowledge in to this project and fix this for other users too ;) – herom May 21 '14 at 19:03