NetSuite sandbox suitetalk access

可紊 提交于 2019-12-07 07:02:24

问题


I am having trouble accessing the Sandbox environment through the Suitetalk web services. I am using the 2016_2 WSDL. I have tried making use of the newest version WSDL, but this did not help.

I am using this on an existing test application, which now stopped working. I can still access the NetSuite production environment through Suitetalk. The error I receive: "The underlying connection was closed: An unexpected error occurred on a send."

The error occurs on any call made to the API. So far, I haven't seen anyone else online with a similar issue.

Any help will be appreciated, thank you in advance.


回答1:


Your problem is likely TLS 1.2 but your client is only supporting TLS 1.0 or 1.1

This change was made by Netsuite and according to their release, on October 7th but I'm guessing it was moved back because a customer of mine had the issue over the weekend initially and I had to rush a patch fix.

If you are using Dotnet, try this static property:

ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12



回答2:


NetSuite recently implemented a new URL format for accessing their SuiteTalk web services. The new URL starts with your account number. Old URLs, like

https://webservices.netsuite.com/services/NetSuitePort_2016_2

continue to work, but can experience "routing issues." NetSuite recommends adopting a new format for your web reference that looks like this:

https://{your_acct_number}.suitetalk.api.netsuite.com/services/NetSuitePort_2016_2

I recently experienced problems where my SuiteTalk app could login successfully, but then could not run any web methods, like service.search() without getting an error. The errors were be very misleading, something like "connection timeout."

Once I finished my support call with NetSuite, I wrote up the correct method of connecting a SuiteTalk app using the latest URL format. You can find that article here:

https://followingnetsuite.wordpress.com/2018/05/10/suitetalk-urls-demistified/




回答3:


You likely need to configure the correct endpoint.

There are a couple of things to keep in mind.

If you are using the Java client you'll need to do something like:

NetSuiteServiceLocator service = new NetSuiteServiceLocator();
if(overrideEndPoint != null) service.setNetSuitePortEndpointAddress(overrideEndPoint);

The endpoint used to be easy:

e.g. like https://webservices.sandbox.netsuite.com/services/NetSuitePort_2010_2 where the date corresponds to your version of SuiteTalk

but now you need to look up the data center for your account and environment

when doing a sandbox lookup you need to run the getDataCenterURLs operation against https://webservices.sandbox.netsuite.com not against https://webservices.netsuite.com



来源:https://stackoverflow.com/questions/46908678/netsuite-sandbox-suitetalk-access

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!