Caused by: java.lang.InterruptedException
at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:998) ~[?:1.8.0_221]
Troubleshooting NetSuite Restlet Connector - Mule 4
You might encounter the following issues when working with the Anypoint Connector for NetSuite Restlet (NetSuite Restlet Connector):
Connectivity Test Failure During Application Startup
If a connectivity test fails during application startup and you see the following statement in the stack trace, configure a reconnection strategy for the connector:
To configure a reconnection strategy for the connector in Anypoint Studio (Studio), add these lines to the Configure XML tab in the connector properties window:
<reconnection failsDeployment="true">
<reconnect count="2" frequency="5" />
</reconnection>
For example, the configuration XML for the connector might look like this after you add the reconnection strategy:
<netsuite-restlet:rest-config name="NetSuite_Config" doc:name="NetSuite Config" doc:id="8a4f73c2-e5e1-4f5d-8978-980069828ff0" >
<netsuite-restlet:restlet-login-connection email="${netsuite.email}" password="${netsuite.password}" account="${netsuite.account}" roleId="${netsuite.roleId}" applicationId="${netsuite.applicationId}" readTimeout="60000" connectionTimeout="60000">
<reconnection failsDeployment="true">
<reconnect count="2" frequency="5" />
</reconnection>
</netsuite-restlet:restlet-login-connection>
In Studio, you can also use the Advanced tab in the connector properties window to configure a reconnection strategy. To do so, complete the following fields:
Field | Value |
---|---|
Reconnection strategy |
|
Frequency (ms) |
|
Reconnection Attempts |
|
Permissions Error When Fetching Metadata
To avoid receiving a permissions error when fetching metadata, enable the Control SuiteScript and Workflow Triggers in Web Services Request
option in NetSuite for the role used in the connector configuration.
Inability to Search for Certain Types of Objects
There is a limitation in NetSuite’s SuiteTalk API, that prevents you from searching for certain types of objects, such as Sales Order objects. Because of this limitation, you can’t use the NetSuite Connector Search
operation to locate these objects.
To perform a search for Sales Order objects and other unsupported objects, you can do the following:
-
Develop a SuiteScript, deploy it as a RESTlet, and call it from the connector.
Empty Payload in the Call RESTlet (GET) Operation
Even though the Call RESTlet (GET) operation is a GET operation, you must specify a payload for the Data field or else the connector throws an error. You can specify an empty payload, such as {}
, to avoid this error.