NetSuite Connector 11.9 のトラブルシューティング - Mule 4

アプリケーション起動中の接続テストの失敗

アプリケーションの起動中に接続テストが失敗し、スタック追跡に次のステートメントが表示された場合、コネクタの再接続戦略を設定します。

Caused by: java.lang.InterruptedException
	at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:998) ~[?:1.8.0_221]
xml

Anypoint Studio (Studio) でコネクタの再接続戦略を設定するには、コネクタプロパティウィンドウの ​[Configure XML (XML を設定)]​ タブで次の行を追加します。

<reconnection failsDeployment="true">
	<reconnect count="2" frequency="5" />
</reconnection>
xml

たとえば、再接続戦略を追加した後、コネクタの設定 XML は次のようになります。

<netsuite:config name="NetSuite_Config" doc:name="NetSuite Config" doc:id="8a4f73c2-e5e1-4f5d-8978-980069828ff0" >
    <netsuite:token-based-authentication-connection consumerKey="${netsuite.consumerKey}" consumerSecret="${netsuite.consumerSecret}" tokenId="${netsuite.tokenId}" tokenSecret="${netsuite.tokenSecret}" account="${netsuite.account}">
		<reconnection failsDeployment="true">
			<reconnect count="2" frequency="5" />
		</reconnection>
	</netsuite:token-based-authentication-connection>
xml

Studio で、コネクタプロパティウィンドウの ​[Advanced (詳細)]​ タブを使用して再接続戦略を設定することもできます。これを行うには、次の項目を入力します。

項目

Reconnection strategy (再接続戦略)

Standard

Frequency (ms) (頻度 (ms))

5

Reconnection Attempts (再接続試行数)

2

ログ要求および応答のログ記録なし

コネクタを使用する場合に要求と応答をログに記録するには、次の XML ステートメントを ​Log4j​ 設定ファイルに追加します。

<AsyncLogger
  name="org.mule.module.netsuite.extension.internal.connection.HttpWithCookieMessageDispatcher"
  level="DEBUG"/>
<Root level="debug">
    <AppenderRef ref="Console" />
</Root>
xml

メタデータ取得時の権限エラー

メタデータの取得時に権限エラーを受信しないようにするには、接続設定で使用するロールに対して NetSuite の ​Control SuiteScript and Workflow Triggers in Web Services Request​ オプションを有効にします。

特定の種別のオブジェクトを検索できない

NetSuite の SuiteTalk API には、販売注文オブジェクトなど、特定の種別のオブジェクトを検索できないという制限があります。この制限のために、NetSuite Connector ​Search​ 操作を使用してこれらのオブジェクトを見つけることができません。

販売注文などのサポートされないオブジェクトの検索を実行するには、保存済み検索を作成して、コネクタからコールします。

On Modified Object で新規オブジェクトがトリガーされる

On Modified Objects​ ソースでは新規オブジェクトもトリガーされます。NetSuite ではオブジェクトの作成時に ​lastModifiedDate​ 項目に入力されます。すべての新規オブジェクトの ​lastModifiedDate​ 項目に入力されているため、​On Modified Objects​ ソースで ​lastModifiedDate​ に基づいてオブジェクトをポーリングする場合、​On Modified Object​ ソースですべての新規オブジェクトも取得されます。