2

I'm working on trying to update a couple old integration tools I developed to interface with NetSuite to the latest web services endpoint, which is at the following URL:

https://webservices.netsuite.com/wsdl/v2018_1_0/netsuite.wsdl

I do the usual traveling to add the WSDL:

  1. Project
  2. Add Service Reference
  3. Advanced
  4. Add Web Reference
  5. Enter WSDL URL into "Address"

However, I consistently get the following message:

There was an error downloading 'https://webservices.netsuite.com/wsdl/v2018_1_0/netsuite.wsdl/_vti_bin/ListData.svc/$metadata'. The request was aborted: Could not create SSL/TLS secure channel.

I've downloaded the WSDL file from a browser without issue and tried to use wsdl.exe, both with the file and the URL. With the URL I get the same message as above. With the file I get the following:

Error: Unable to import binding 'NetSuiteBinding' from namespace 'urn:platform_2018_1.webservices.netsuite.com'.

  • Unable to import operation 'login'.
  • The element 'urn:messages_2018_1.platform.webservices.netsuite.com:applicationInfo' is missing.

Some suggestions I've found included downloading all of the XSD files listed in the WSDL as imports and list them when running wsdl.exe. That leads to a different error:

Error: Unable to import binding 'NetSuiteBinding' from namespace 'urn:platform_2018_1.webservices.netsuite.com'.

  • Unable to import operation 'login'.
  • The datatype 'urn:types.core_2018_1.platform.webservices.netsuite.com:RecordType' is missing.

I thought maybe it was a TLS issue, and that maybe my machine wasn't using the right version, but I've gone through and updated IE and registry settings to force use of TLS 1.2 without positive results. I also thought maybe there was an issue with my machine, so I sent the files and wsdl.exe from my Win 7 Pro machine to a Win 10 Pro machine. Same results there.

I'm pretty much at a loss here because I did not run into these issues the last time I pulled down a NetSuite wsdl, and I've even tried older WSDLs to the same result. I'm pretty lost as to what to do now.

Michael McCauley
  • 853
  • 1
  • 12
  • 37

2 Answers2

0

What version of .net is your project using? Tls 1.2 wasn't avalable by default until .net 4.6.1 I believe.

  • It was originally using 4.0, but it's been updated to 4.6.1, since that's the latest SDK I have installed currently. I have no issue with updating code to force use of TLS 1.2, just can't get the web services endpoint updated. – Michael McCauley Jun 08 '18 at 14:49
0

Ok, I think I have it figured out. I believe that since NetSuite did a push to enforce use of TLS 1.2, that ended up being the cause. I installed Visual Studio 2017 and made a test console application, and from there tried to pull down the web services. It succeeded. So, I'm left to assume that VS 2012 cannot communicate using TLS 1.2, therefor causing attempts to generate NetSuite web services to fail, while VS 2017 CAN use TLS 1.2, which is why it succeeded. Guess I'm going to need to port all my projects over into VS 2017 and work with that from now on.

Michael McCauley
  • 853
  • 1
  • 12
  • 37