# mulesoft Netsuite Restlet Connector - Full Documentation # Anypoint Studio を使用した NetSuite Restlet Connector の設定 Anypoint Studio (Studio) エディターは、Mule アプリケーション、プロパティ、および設定ファイルの設計と更新に役立ちます。 Studio でコネクタを追加および設定する手順は、次のとおりです。 1. [Mule プロジェクトを作成します](#create-mule-project)​。 2. [コネクタを Mule プロジェクトに追加します](#add-connector-to-project)​。 3. [コネクタのフローの入力元を設定します](#configure-input-source)​。 4. [フローにコネクタの操作を追加します](#add-connector-operation)​。 5. [コネクタのグローバル要素を設定します](#configure-global-element)​。 Studio で初めてコネクタを設定する場合は、​[「Anypoint Studio を使用したコネクタの設定」](https://docs.mulesoft.com/connectors/introduction/intro-config-use-studio)​を参照してください。このトピックを読んだ後でコネクタ項目に関する追加情報が必要な場合は、​[「NetSuite Restlet リファレンス」](https://docs.mulesoft.com/jp/netsuite-restlet-connector/latest/netsuite-restlet-connector-reference)​を参照してください。 ## [](#create-mule-project)Mule プロジェクトを作成する Studio で、コネクタを追加および設定する新しい Mule プロジェクトを作成します。 1. Studio で、​**\[File (ファイル)\] > \[New (新規)\] > \[Mule Project (Mule プロジェクト)\]**​ を選択します。 2. Mule プロジェクトの名前を入力して、​**\[Finish (完了)\]**​ をクリックします。 ## [](#add-connector-to-project)コネクタを Mule プロジェクトに追加する NetSuite Restlet Connector を Mule プロジェクトに追加して、XML コードにコネクタの名前空間およびスキーマの場所を自動的に入力し、プロジェクトの ​`pom.xml`​ ファイルに必須の連動関係を追加します。 1. **\[Mule Palette (Mule パレット)\]**​ ビューで、​**\[(X) Search in Exchange ((X) Exchange 内を検索)\]**​ をクリックします。 2. **\[Add Modules to Project (モジュールをプロジェクトに追加)\]**​ で、検索項目に「​`netsuite restlet`​」と入力します。 3. **\[Available modules (使用可能なモジュール)\]**​ で、そのコネクタ名をクリックします。 4. **\[Add (追加)\]**​ をクリックします。 5. **\[Finish (完了)\]**​ をクリックします。 Studio でコネクタを Mule プロジェクトに追加しても、Studio ワークスペースの他のプロジェクトはそのコネクタを使用できません。 ## [](#configure-input-source)入力元の設定 入力元は、指定された条件が満たされたときにフローを開始します。 次の入力元のいずれかを設定して、NetSuite Restlet Connector で使用できます。 - `HTTP Listener`​: 設定されたホストとポートで要求を受信するたびにフローを開始 - `Scheduler`​: 時間ベースの条件が満たされたときにフローを開始 たとえば、HTTP リスナーを設定する手順は、次のとおりです。 1. **\[Mule Palette (Mule パレット)\]**​ ビューで、​**\[HTTP\] > \[Listener\]**​ を選択します。 2. **\[Listener\]**​ を Studio キャンバスにドラッグします。 3. **\[Listener (リスナー)\]**​ 設定画面で、必要に応じて ​**\[Display Name (表示名)\]**​ 項目の値を変更します。 4. **\[Path (パス)\]**​ 項目の値を指定します。 5. **\[Connector configuration (コネクタ設定)\]**​ 項目の横にあるプラス記号 (+) をクリックして、アプリケーション内のすべての ​`HTTP Listener`​ インスタンスで使用できるグローバル要素を設定します。 6. **\[General (一般)\]**​ タブで、接続情報を指定します。 7. **\[TLS\]**​ タブで、必要に応じて TLS 情報を指定します。 8. **\[Advanced (詳細)\]**​ タブで、必要に応じて再接続戦略を含む再接続情報を指定します。 9. **\[Test Connection (接続をテスト)\]**​ をクリックして、Mule が特定のサーバーに接続できることを確認します。 10. **\[OK\]**​ をクリックします。 ## [](#add-connector-operation)フローにコネクタの操作を追加する フローにコネクタの操作を追加すると、そのコネクタで実行する特定の操作をすぐに定義できます。 NetSuite Restlet の操作を追加する手順は、次のとおりです。 1. **\[Mule Palette (Mule パレット)\]**​ ビューで ​**\[NetSuite Restlet\]**​ を選択し、目的の操作を選択します。 2. その操作を Studio キャンバスの入力元の右にドラッグします。 ## [](#configure-global-element)コネクタのグローバル要素を設定する コネクタを設定する場合、アプリケーション内のそのコネクタのすべてのインスタンスで使用できるグローバル要素を設定することをお勧めします。グローバル要素を設定するには、コネクタが対象の NetSuite システムにアクセスするために使用する認証ログイン情報を指定する必要があります。 NetSuite Restlet Connector のグローバル要素を設定する手順は、次のとおりです。 1. Studio キャンバスでコネクタの名前を選択します。 2. 操作の設定画面で、​**\[Connector configuration (コネクタ設定)\]**​ 項目の横にあるプラス記号 (+) をクリックし、グローバル要素設定項目にアクセスします。 3. **\[General (一般)\]**​ タブで認証メカニズムを選択し、次の説明に従って設定します。
NetSuite Restlet Connector では OAuth 1.0 のみがサポートされています。
- [Request-Based Authentication (要求ベース認証)](#restlet-login-authentication) - [Token Authentication (トークン認証)](#restlet-token-authentication)
NetSuite 認証を設定するには、SuiteTalk NetSuite Web サービスのアカウント ID が必要です。これは、NetSuite Sandbox UI 内の ​[Setup (設定)] > [Integration (インテグレーション)] > [Web Service Preferences (Web サービスプリファレンス)]​ で確認できます。
4. **\[Advanced (詳細)\]**​ タブで、必要に応じて再接続戦略を含む再接続情報を指定します。 5. **\[Test Connection (接続をテスト)\]**​ をクリックして、Mule が指定されたサーバーに接続できることを確認します。 6. **\[OK\]**​ をクリックします。 ### [](#restlet-login-authentication)RESTlet ログイン認証 ログインを呼び出して NetSuite に対して認証するには、この戦略を使用します。 ![要求ベース認証の \[Global Elements Properties (グローバル要素プロパティ)\] ウィンドウ](_images/netsuite-request-studio.png) +
パラメーター 説明

Name (名前)

NetSuite Restlet Connector インスタンスの後続の設定で参照する設定の名前

Email (メール)

NetSuite UI にログインするために使用するメール

Password (パスワード)

NetSuite UI にログインするための対応するパスワード

Account

SuiteTalk NetSuite Web サービスのアカウント ID

Role Id (ロール ID)

SuiteTalk でのユーザーのロール ID。これによってプロセッサーの権限が決まります。

Application Id (アプリケーション ID)

使用するインテグレーションレコードに対応するアプリケーション ID

### [](#restlet-token-authentication)RESTlet トークン認証 このトークンベースの認証方法では、コンシューマーおよびトークンのキーまたはシークレットの組み合わせのいずれかを使用します。これらは NetSuite 環境内で確立されます。 ![トークン認証の \[Global Element Properties (グローバル要素プロパティ)\] ウィンドウ](_images/netsuite-token-studio.png) +
パラメーター 説明

Consumer Key (コンシューマーキー)

使用するトークンベース認証対応のインテグレーションレコードのコンシューマーキー値

Consumer Secret (コンシューマーシークレット)

使用するトークンベース認証対応のインテグレーションレコードのコンシューマーシークレット値

Token ID (トークン ID)

ユーザーと NetSuite 環境内で生成されたインテグレーションレコードの一意の組み合わせを表すトークン ID

Token Secret (トークンシークレット)

ユーザーとインテグレーションレコードの各組み合わせに対するトークンシークレット

Account

SuiteTalk NetSuite Web サービスのアカウント ID

Signature algorithm (署名アルゴリズム)

HMAC 署名アルゴリズムの種別

## [](#次のステップ)次のステップ Studio を設定したら、​[「NetSuite RESTlet のコールの例」](https://docs.mulesoft.com/jp/netsuite-restlet-connector/latest/netsuite-restlet-call-restlets-example)​トピックで詳細な設定アイデアを参照してください。 ## [](#関連情報)関連情報 - [Anypoint Connector の概要](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [NetSuite Restlet Connector の概要](https://docs.mulesoft.com/jp/netsuite-restlet-connector/latest/) - [NetSuite Connector リファレンス](https://docs.mulesoft.com/jp/netsuite-restlet-connector/latest/netsuite-restlet-connector-reference) - [MuleSoft ヘルプセンター](https://help.mulesoft.com) # NetSuite Restlet - XML と Maven のサポート XML で Mule アプリケーションを手動でコーディングすることもできますが、Anypoint Studio を使用した方が効率的です。コネクタを Studio にインストールすると、Studio は自動的に XML コードにコネクタの名前空間およびスキーマの場所を入力します。さらに、​`pom.xml`​ ファイルに連動関係を追加します。 Anypoint Studio の XML エディターまたはテキストエディターから Mule Runtime Engine (Mule) アプリケーションを手動でコーディングする場合、参照ステートメントを XML Mule フローと Apache Maven ​`pom.xml`​ ファイルの両方に追加することで、アプリケーションでコネクタにアクセスできます。 ## [](#コネクタの名前空間の追加)コネクタの名前空間の追加 次のコードを設定 XML のヘッダーの ​`mule`​ タグ内に貼り付けます。 ```xml http://www.mulesoft.org/schema/mule/netsuite-restlet http://www.mulesoft.org/schema/mule/netsuite-restlet/current/mule-netsuite-restlet.xsd ``` 次の例は、XML 内に名前空間ステートメントが配置される方法を示しています。 ```xml ``` ## [](#pom-ファイルの連動関係の追加)POM ファイルの連動関係の追加 `pom.xml`​ Apache Maven ファイルは Anypoint Studio によって生成され、Mule アプリケーションの連動関係が含まれます。Mule アプリケーションを手動でコーディングする場合、次の XML スニペットを POM ファイルに含めてこのコネクタにアクセスできるようにします。 ```xml com.mulesoft.connectors mule4-netsuite-restlet-connector 1.0.0 mule-plugin ``` `x.x.x`​ を使用しているコネクタに対応するバージョンに置き換えます。 最新の ​`pom.xml`​ ファイル情報を取得する手順は、次のとおりです。 1. [Anypoint Exchange](https://www.mulesoft.com/exchange/)​ に移動します。 2. Exchange で、​**\[Login (ログイン)\]**​ をクリックし、Anypoint Platform のユーザー名とパスワードを指定します。 3. Exchange で、「​`netsuite restlet`​」を検索します。 4. コネクタを選択します。 5. 画面の右上付近にある ​**\[Dependency Snippets (連動関係スニペット)\]**​ をクリックします。 ## [](#次のステップ)次のステップ 名前空間および ​`pom.xml`​ ファイルを完了したら、​[NetSuite RESTlet のコールの例](https://docs.mulesoft.com/jp/netsuite-restlet-connector/latest/netsuite-restlet-call-restlets-example)​を試すことができます。 ## [](#関連情報)関連情報 [MuleSoft ヘルプセンター](https://help.mulesoft.com) # NetSuite Restlet Connector 1.0 NetSuite Restlet 用 Anypoint Connector (NetSuite Restlet Connector) は、NetSuite とオンプレミスまたはクラウドのサードパーティアプリケーション間でデータを同期し、ビジネスプロセスを自動化します。NetSuite はコアビジネスプロセス、ERP 財務、CRM、E コマース、在庫などの管理に役立つクラウドベースのビジネス管理ソフトウェアを提供しています。 NetSuite Restlet Connector では、以下の機能が提供されます。 - NetSuite ビジネスオブジェクトの生成 - さまざまな認証レベル - エラー処理サポート - SuiteScript で作成された API を公開する RESTlets への REST コールを使用した NetSuite へのアクセス 互換性と解決された問題に関する情報は、「NetSuite Restlet Connector リリースノート」を参照してください。 ## [](#始める前に)始める前に このコネクタを使用するには、以下に精通している必要があります。 - NetSuite API - Anypoint Connector - Mule Runtime Engine (Mule) - Mule フローの要素 - グローバル要素 - Anypoint Studio を使用した Mule アプリケーションの作成方法 Web サービス機能が有効になっている NetSuite アカウントも必要です。 ## [](#接続種別)接続種別
NetSuite Restlet Connector では OAuth 1.0 のみがサポートされています。
NetSuite Restlet 接続では、次の認証種別を使用します。 - Restlet Login (Restlet ログイン) ログインを呼び出して、NetSuite に対する認証を行います。 - Restlet Token (RESTlet トークン) NetSuite 環境内で確立されているコンシューマーおよびトークンのキーまたはシークレットの組み合わせのいずれかを使用して、NetSuite への認証を行います。 認証種別の設定についての詳細は、​[「コネクタのグローバル要素の設定」](https://docs.mulesoft.com/jp/netsuite-restlet-connector/latest/netsuite-restlet-studio-configure#configure-global-element)​を参照してください。 ## [](#関連情報)関連情報 - [Anypoint Connector の概要](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [Exchange を使用したコネクタ、テンプレート、およびサンプルの検出](https://docs.mulesoft.com/connectors/introduction/intro-use-exchange) - [NetSuite Restlet リファレンス](https://docs.mulesoft.com/jp/netsuite-restlet-connector/latest/netsuite-restlet-connector-reference) - [MuleSoft ヘルプセンター](https://help.mulesoft.com) # NetSuite Restlet Connector 1.0 リファレンス NetSuite Restlet 用 Anypoint Connector (NetSuite Restlet Connector) は、NetSuite とオンプレミスまたはクラウドのサードパーティアプリケーション間でデータを同期し、ビジネスプロセスを自動化します。 ## [](#RestConfig)Rest 設定
名前 型 説明 デフォルト値 必須

Name (名前)

String (文字列)

この設定の名前。コネクタはこの名前の設定を参照します。

x

Connection (接続)

この設定に指定できる接続種別。

x

Name (名前)

String (文字列)

他のコンポーネント内のこの要素を参照するために使用するこの要素の識別子。

x

Expiration Policy (有効期限ポリシー)

動的設定インスタンスがアイドル状態を続けられる最小時間を設定します。この時間が経過すると、Mule Runtime で期限切れに相当するとみなされます。これは、インスタンスが有効期限の対象となった瞬間にプラットフォームでそのインスタンスが期限切れになるということではありません。必要に応じて、インスタンスがパージされます。

## [](#接続種別)接続種別
NetSuite Restlet Connector では OAuth 1.0 のみがサポートされています。
### [](#RestConfig_RestletLogin)Restlet Login (Restlet ログイン)
名前 型 説明 デフォルト値 必須

Web Service Endpoint (Web サービスエンドポイント)

String (文字列)

Web サービスエンドポイント。

Read Timeout (読み取りタイムアウト)

Number (数値)

クライアントがタイムアウトするまで応答を待機する時間を指定します。

60000

Read Timeout Unit (読み取りタイムアウト単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

[Read Timeout (読み取りタイムアウト)]​ パラメーターの時間単位。

MILLISECONDS

Connection Timeout (接続タイムアウト)

Number (数値)

クライアントがタイムアウトするまで接続の確立を試みる時間 (ミリ秒) を指定します。0 を指定すると、クライアントは接続の確立を無期限に試行します。

60000

Connection Timeout Unit (接続タイムアウト単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Connection Timeout (接続タイムアウト) の時間単位。

MILLISECONDS

TLS configuration (TLS 設定)

TLS

Mule アプリケーションの通信を保護するためにクライアント側とサーバー側の両方から使用できる TLS の設定を定義します。HTTPS プロトコルを使用すると、HTTP 通信が TLS または SSL を使用して保護されます。プロトコルとして HTTPS が設定されている場合、ユーザーは ​listener-config​ の ​tls:context​ 子要素で少なくともキーストアを設定する必要があります。

Host (ホスト)

String (文字列)

HTTP プロキシのホスト名 (例 localhost)。使用する場合は、​[Port (ポート)]​ の値も設定する必要があります。

Port (ポート)

Number (数値)

HTTP プロキシのポート番号 (例: 3128)。ポート番号を指定した場合は、​[Hostname (ホスト名)]​ も指定する必要があります。

Username (ユーザー名)

String (文字列)

NetSuite へのすべての要求で HTTP プロキシに提供されるユーザー名。ユーザーが認証されていない HTTP プロキシを経由する場合があるので、この項目は省略できます。

Password (パスワード)

String (文字列)

NetSuite へのすべての要求で HTTP プロキシに提供されるパスワード。ユーザーが認証されていない HTTP プロキシを経由する場合があるので、この項目は省略できます。

E-mail (メール)

String (文字列)

NetSuite UI と SuiteTalk の両方のログインメール。

x

Password (パスワード)

String (文字列)

NetSuite UI と SuiteTalk の両方のログインパスワード。

x

Account

String (文字列)

NetSuite SuiteTalk WebService アカウント ID。

x

Role ID (ロール ID)

String (文字列)

SuiteTalk にログインするために使用するロールの ID。これによってプロセッサーの権限が決まります。

x

Application ID (アプリケーション ID)

String (文字列)

使用するインテグレーションレコードに関連した ID。インテグレーションレコードは、NetSuite 環境でセットアップされます。

x

Reconnection (再接続)

アプリケーションがデプロイされると、すべてのコネクタで接続テストが実行されます。true に設定されている場合、関連する再接続戦略をすべて実行した後にテストに合格しないと、デプロイメントが失敗します。

Pooling Profile (プーリングプロファイル)

接続プールの特性

### [](#RestConfig_RestletToken)Restlet Token (RESTlet トークン)
名前 型 説明 デフォルト値 必須

Web Service Endpoint (Web サービスエンドポイント)

String (文字列)

Web サービスエンドポイント。

Read Timeout (読み取りタイムアウト)

Number (数値)

クライアントがタイムアウトするまで応答を待機する時間を指定します。

60000

Read Timeout Unit (読み取りタイムアウト単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Read Timeout. (読み取りタイムアウト) の時間単位。

MILLISECONDS

Connection Timeout (接続タイムアウト)

Number (数値)

クライアントが接続の確立を試行する時間を指定します。この時間を経過するとタイムアウトになります。0 を指定すると、クライアントは接続の確立を無期限に試行します。

60000

Connection Timeout Unit (接続タイムアウト単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

Connection Timeout (接続タイムアウト) の時間単位。

MILLISECONDS

TLS configuration (TLS 設定)

TLS

Mule アプリケーションの通信を保護するためにクライアント側とサーバー側の両方から使用できる TLS の設定を定義します。HTTPS プロトコルを使用すると、HTTP 通信が TLS または SSL を使用して保護されます。プロトコルとして HTTPS が設定されている場合、ユーザーは ​listener-config​ の ​tls:context​ 子要素で少なくともキーストアを設定する必要があります。

Host (ホスト)

String (文字列)

HTTP プロキシのホスト名 (例 localhost)。使用する場合は、​[Port (ポート)]​ の値も設定する必要があります。

Port (ポート)

Number (数値)

HTTP プロキシのポート番号 (例: 3128)。ポート番号を指定した場合は、​[Hostname (ホスト名)]​ も指定する必要があります。

Username (ユーザー名)

String (文字列)

NetSuite への要求のたびに HTTP プロキシに提供するユーザー名。ユーザーが認証されていない HTTP プロキシを経由する場合があるので、この項目は省略できます。

Password (パスワード)

String (文字列)

NetSuite への要求のたびに HTTP プロキシに提供するパスワード。ユーザーが認証されていない HTTP プロキシを経由する場合があるので、この項目は省略できます。

Consumer Key (コンシューマーキー)

String (文字列)

使用するトークンベース認証対応のインテグレーションレコードのコンシューマーキー値。

x

Consumer Secret (コンシューマーシークレット)

String (文字列)

使用するトークンベース認証対応のインテグレーションレコードのコンシューマーシークレット値。

x

Token ID (トークン ID)

String (文字列)

NetSuite 環境内で生成されたユーザーとインテグレーションの一意の組み合わせを表すトークン ID。

x

Token Secret (トークンシークレット)

String (文字列)

ユーザー/インテグレーションの各組み合わせに対するトークンシークレット。

x

Account

String (文字列)

NetSuite SuiteTalk WebService アカウント ID。

x

Signature Algorithm (署名アルゴリズム)

String (文字列)

SHA ハッシュ署名を計算するために使用するアルゴリズム。

HMAC_SHA_256

Reconnection (再接続)

アプリケーションがデプロイされると、すべてのコネクタで接続テストが実行されます。true に設定されている場合、関連する再接続戦略をすべて実行した後にテストに合格しないと、デプロイメントが失敗します。

Pooling Profile (プーリングプロファイル)

接続プールの特性。

#### [](#関連操作)関連操作 - [Call RESTlet (DELETE)](#CallRestletDelete) - [Call RESTlet (GET)](#CallRestletGet) - [Call RESTlet (POST)](#CallRestletPost) - [Call RESTlet (PUT)](#CallRestletPut) ## [](#操作)操作 ## [](#CallRestletDelete)Call RESTlet (DELETE) `` DELETE メソッドを使用して NetSuite RESTlet をコールします。 ### [](#パラメーター)パラメーター
名前 型 説明 デフォルト値 必須

Configuration (設定)

String (文字列)

使用する設定の名前。

x

Script (スクリプト)

Number (数値)

デプロイされたスクリプトの ID。

x

Deploy (デプロイ)

Number (数値)

スクリプトに対応するデプロイ番号。

x

Data (データ)

Object (オブジェクト)

スクリプトの入力データ。

#[payload]

Config Ref (設定参照)

ConfigurationProvider

このコンポーネントを実行するために使用する設定の名前。

x

Reconnection Strategy (再接続戦略)

接続エラーが発生した場合の再試行戦略。

### [](#次の設定の場合)次の設定の場合 - [Rest 設定](#RestConfig) ### [](#スロー)スロー - NETSUITE-RESTLET:CONNECTIVITY - NETSUITE-RESTLET:ERROR\_FAULT - NETSUITE-RESTLET:MAPPING\_ERROR - NETSUITE-RESTLET:PARSING\_ERROR - NETSUITE-RESTLET:RETRY\_EXHAUSTED ## [](#CallRestletGet)Call RESTlet (GET) `` GET メソッドを使用して NetSuite RESTlet をコールします。 ### [](#パラメーター-2)パラメーター
名前 型 説明 デフォルト値 必須

Configuration (設定)

String (文字列)

使用する設定の名前。

x

Script (スクリプト)

Number (数値)

デプロイされたスクリプトの ID。

x

Deploy (デプロイ)

Number (数値)

スクリプトに対応するデプロイ番号。

x

Data (データ)

Object (オブジェクト)

スクリプトの入力データ。

#[payload]

Config Ref (設定参照)

ConfigurationProvider

このコンポーネントを実行するために使用する設定の名前。

x

Target Variable (対象変数)

String (文字列)

操作の出力を保存する変数の名前。

Target Value (対象値)

String (文字列)

操作の出力を評価する式。式の結果は対象変数に保存されます。

#[payload]

Reconnection Strategy (再接続戦略)

接続エラーが発生した場合の再試行戦略。

### [](#出力)出力

型

Array of Object (オブジェクトの配列)

### [](#次の設定の場合-2)次の設定の場合 - [Rest 設定](#RestConfig) ### [](#スロー-2)スロー - NETSUITE-RESTLET:CONNECTIVITY - NETSUITE-RESTLET:ERROR\_FAULT - NETSUITE-RESTLET:MAPPING\_ERROR - NETSUITE-RESTLET:PARSING\_ERROR - NETSUITE-RESTLET:RETRY\_EXHAUSTED ## [](#CallRestletPost)Call RESTlet (POST) `` POST メソッドを使用して NetSuite RESTlet をコールします。 ### [](#パラメーター-3)パラメーター
名前 型 説明 デフォルト値 必須

Configuration (設定)

String (文字列)

使用する設定の名前。

x

Script (スクリプト)

Number (数値)

デプロイされたスクリプトの ID。

x

Deploy (デプロイ)

Number (数値)

スクリプトに対応するデプロイ番号。

x

Data (データ)

Object (オブジェクト)

スクリプトの入力データ。

#[payload]

Config Ref (設定参照)

ConfigurationProvider

このコンポーネントを実行するために使用する設定の名前。

x

Target Variable (対象変数)

String (文字列)

操作の出力を保存する変数の名前。

Target Value (対象値)

String (文字列)

操作の出力を評価する式。式の結果は対象変数に保存されます。

#[payload]

Reconnection Strategy (再接続戦略)

接続エラーが発生した場合の再試行戦略。

### [](#出力-2)出力

型

Array of Object (オブジェクトの配列)

### [](#次の設定の場合-3)次の設定の場合 - [Rest 設定](#RestConfig) ### [](#スロー-3)スロー - NETSUITE-RESTLET:CONNECTIVITY - NETSUITE-RESTLET:ERROR\_FAULT - NETSUITE-RESTLET:MAPPING\_ERROR - NETSUITE-RESTLET:PARSING\_ERROR - NETSUITE-RESTLET:RETRY\_EXHAUSTED ## [](#CallRestletPut)Call RESTlet (PUT) `` PUT メソッドを使用して NetSuite RESTlet をコールします。 ### [](#パラメーター-4)パラメーター
名前 型 説明 デフォルト値 必須

Configuration (設定)

String (文字列)

使用する設定の名前。

x

Script (スクリプト)

Number (数値)

デプロイされたスクリプトの ID。

x

Deploy (デプロイ)

Number (数値)

スクリプトに対応するデプロイ番号。

x

Data (データ)

Object (オブジェクト)

スクリプトの入力データ。

#[payload]

Config Ref (設定参照)

ConfigurationProvider

このコンポーネントを実行するために使用する設定の名前。

x

Target Variable (対象変数)

String (文字列)

操作の出力を保存する変数の名前。

Target Value (対象値)

String (文字列)

操作の出力を評価する式。式の結果は対象変数に保存されます。

#[payload]

Reconnection Strategy (再接続戦略)

接続エラーが発生した場合の再試行戦略。

### [](#出力-3)出力

型

Array of Object (オブジェクトの配列)

### [](#次の設定の場合-4)次の設定の場合 - [Rest 設定](#RestConfig) ### [](#スロー-4)スロー - NETSUITE-RESTLET:CONNECTIVITY - NETSUITE-RESTLET:ERROR\_FAULT - NETSUITE-RESTLET:MAPPING\_ERROR - NETSUITE-RESTLET:PARSING\_ERROR - NETSUITE-RESTLET:RETRY\_EXHAUSTED ## [](#型)型 ### [](#Tls)TLS
項目 型 説明 デフォルト値 必須

Enabled Protocols (有効化されたプロトコル)

String (文字列)

このコンテキストで有効化されたプロトコルのカンマ区切りリスト。

Enabled Cipher Suites (有効化された暗号化スイート)

String (文字列)

このコンテキストで有効化された暗号化スイートのカンマ区切りリスト。

Trust Store (トラストストア)

Key Store (キーストア)

Revocation Check (取り消し確認)

### [](#TrustStore)トラストストア
項目 型 説明 デフォルト値 必須

Path (パス)

String (文字列)

トラストストアの場所 (可能な場合、現在のクラスパスとファイルシステムを基準として解決されます)。

Password (パスワード)

String (文字列)

トラストストアを保護するために使用するパスワード。

Type (型)

String (文字列)

使用するストアの型。

Algorithm (アルゴリズム)

String (文字列)

トラストストアで使用するアルゴリズム。

Insecure (安全ではない)

Boolean (ブール)

true の場合、証明書の検証が実行されず、攻撃に対して接続が脆弱になります。各自の責任で使用してください。

### [](#KeyStore)Key Store (キーストア)
項目 型 説明 デフォルト値 必須

Path (パス)

String (文字列)

キーストアの場所 (可能な場合、現在のクラスパスとファイルシステムを基準として解決されます)。

Type (型)

String (文字列)

使用するストアの型。

Alias (別名)

String (文字列)

キーストアに多数の非公開キーがある場合、この属性は、使用する鍵の別名を示します。定義しない場合、デフォルトでファイル内の最初の鍵が使用されます。

Key Password (キーパスワード)

String (文字列)

非公開キーを保護するために使用するパスワード。

Password (パスワード)

String (文字列)

キーストアを保護するために使用するパスワード。

Algorithm (アルゴリズム)

String (文字列)

キーストアで使用するアルゴリズム。

### [](#StandardRevocationCheck)Standard Revocation Check (標準の取り消し確認)
項目 型 説明 デフォルト値 必須

Only End Entities (最後のエンティティのみ)

Boolean (ブール)

証明書チェーンの最後の要素のみを確認します。

Prefer Crls (CRL を優先)

Boolean (ブール)

最初に OCSP ではなく CRL を試みます。

No Fallback (代替なし)

Boolean (ブール)

第 2 の確認方法 (以前に選択されていない方法) を使用しません。

Soft Fail (ソフトフェール)

Boolean (ブール)

取り消しサーバーに到達できない場合や取り消しサーバーが混雑している場合に検証エラーを回避します。

### [](#CustomOcspResponder)Custom OCSP Responder (カスタム OCSP レスポンダー)
項目 型 説明 デフォルト値 必須

Url

String (文字列)

OCSP レスポンダーの URL。

Cert Alias (証明書の別名)

String (文字列)

(トラストストアに含まれている) OCSP 応答の署名証明書の別名 (存在する場合)。

### [](#CrlFile)CRL File (CRL ファイル)
項目 型 説明 デフォルト値 必須

Path (パス)

String (文字列)

CRL ファイルへのパス。

### [](#Reconnection)Reconnection (再接続)
項目 型 説明 デフォルト値 必須

Fails Deployment (デプロイメントに失敗)

Boolean (ブール)

アプリケーションがデプロイされると、すべてのコネクタで接続テストが実行されます。true に設定されている場合、関連する再接続戦略をすべて実行した後にテストに合格しないと、デプロイメントが失敗します。

Reconnection Strategy (再接続戦略)

使用する再接続戦略。

### [](#Reconnect)Reconnect (再接続)
項目 型 説明 デフォルト値 必須

Frequency (頻度)

Number (数値)

再接続する頻度 (ミリ秒)

Blocking (ブロック)

Boolean (ブール)

false の場合、再接続戦略が個別の非ブロックスレッドで実行されます。

Count (数)

Number (数値)

再接続を試みる回数

### [](#ReconnectForever)Reconnect Forever (繰り返し再接続)
項目 型 説明 デフォルト値 必須

Frequency (頻度)

Number (数値)

再接続する頻度 (ミリ秒)

Blocking (ブロック)

Boolean (ブール)

false の場合、再接続戦略が個別の非ブロックスレッドで実行されます。

### [](#PoolingProfile)Pooling Profile (プーリングプロファイル)
項目 型 説明 デフォルト値 必須

Max Active (最大アクティブ)

Number (数値)

一度にセッションから借りることができる Mule コンポーネントの数を制御します。負の値に設定した場合、同時にアクティブにできるコンポーネントの数に制限はありません。maxActive を超えた場合、プールは枯渇したと呼ばれます。

Max Idle (最大アイドル)

Number (数値)

プール内で同時にアイドル状態のままにできる Mule コンポーネントの最大数。負の値に設定した場合、同時にアイドルにできる Mule コンポーネントの数に制限はありません。

Max Wait (最大待機)

Number (数値)

プールが枯渇し、exhaustedAction が ​WHEN_EXHAUSTED_WAIT​ に設定されている場合に、プールされたコンポーネントが使用可能になるまで待機する時間 (ミリ秒) を指定します。

Min Eviction Millis (最小除去時間)

Number (数値)

オブジェクトが除去対象となるまでにオブジェクトをプール内でアイドル状態のままにできる最小時間を決定します。正の値以外の場合、アイドル時間のみによってオブジェクトがプールから削除されることはありません。

Eviction Check Interval Millis (除去確認間隔)

Number (数値)

オブジェクトエビクターの実行間隔 (ミリ秒) を指定します。正の値以外の場合、オブジェクトエビクターは実行されません。

Exhausted Action (枯渇アクション)

Enumeration (列挙)。次のいずれかになります。

  • WHEN_EXHAUSTED_GROW

  • WHEN_EXHAUSTED_WAIT

  • WHEN_EXHAUSTED_FAIL​

Mule コンポーネントプールが枯渇した場合のプールの動作を指定します。使用可能な値は次のいずれかです。​WHEN_EXHAUSTED_FAIL​: NoSuchElementException をスローします。​WHEN_EXHAUSTED_WAIT​: 新規またはアイドルオブジェクトが使用可能になるまで、Object.wait(long) を呼び出してブロックします。​WHEN_EXHAUSTED_GROW​: 新しい Mule インスタンスを作成して返します。基本的に maxActive の意味がなくなります。正の maxWait 値を指定した場合、最大で数ミリ秒ブロックされた後 NoSuchElementException が発生します。maxThreadWait が負数の場合、無期限にブロックされます。

Initialisation Policy (初期化ポリシー)

Enumeration (列挙)。次のいずれかになります。

  • INITIALISE_NONE

  • INITIALISE_ONE

  • INITIALISE_ALL​

プール内のコンポーネントの初期化方法を決定します。有効な値: INITIALISE_NONE​ (起動時にコンポーネントをプールに読み込まない)、​INITIALISE_ONE​ (起動時に 1 つの初期コンポーネントをプールに読み込む)、または ​INITIALISE_ALL​ (起動時にすべてのコンポーネントをプールに読み込む)。

Disabled

Boolean (ブール)

プーリングを無効にする必要があるかどうか

### [](#ExpirationPolicy)Expiration Policy (有効期限ポリシー)
項目 型 説明 デフォルト値 必須

Max Idle Time (最大アイドル時間)

Number (数値)

有効期限の対象とみなされるまで、動的設定インスタンスがアイドル状態を維持できる最大時間のスカラー時間値

Time Unit (時間単位)

Enumeration (列挙)。次のいずれかになります。

  • NANOSECONDS

  • MICROSECONDS

  • MILLISECONDS

  • SECONDS

  • MINUTES

  • HOURS

  • DAYS

maxIdleTime 属性の時間単位

## [](#関連情報)関連情報 - [MuleSoft ヘルプセンター](https://help.mulesoft.com) # NetSuite Restlet Connector のトラブルシューティング NetSuite Restlet 用 Anypoint Connector (NetSuite Restlet Connector) を使用する場合、次の問題が発生することがあります。 - [アプリケーション起動中に接続テストが失敗する。](#connectivity-test-failure) - [メタデータを取得するときにコネクタが権限エラーを返す。](#permissions-error) ## [](#connectivity-test-failure)アプリケーション起動中の接続テストの失敗 アプリケーションの起動中に接続テストが失敗し、スタック追跡に次のステートメントが表示された場合、コネクタの再接続戦略を設定します。 ```xml Caused by: java.lang.InterruptedException at java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:998) ~[?:1.8.0_221] ``` Anypoint Studio (Studio) でコネクタの再接続戦略を設定するには、コネクタプロパティウィンドウの ​**\[Configure XML (XML を設定)\]**​ タブで次の行を追加します。 ```xml ``` たとえば、再接続戦略を追加した後、コネクタの設定 XML は次のようになります。 ```xml ``` Studio で、コネクタプロパティウィンドウの ​**\[Advanced (詳細)\]**​ タブを使用して再接続戦略を設定することもできます。これを行うには、次の項目を入力します。
項目 値

Reconnection strategy (再接続戦略)

Standard

Frequency (ms) (頻度 (ms))

5

Reconnection Attempts (再接続試行数)

2

## [](#permissions-error)メタデータ取得時の権限エラー メタデータの取得時に権限エラーを受信しないようにするには、接続設定で使用するロールに対して NetSuite の ​`Control SuiteScript and Workflow Triggers in Web Services Request`​ オプションを有効にします。 ## [](#search-entities)特定の種別のオブジェクトを検索できない NetSuite の SuiteTalk API には、販売注文オブジェクトなど、特定の種別のオブジェクトを検索できないという制限があります。この制限のために、NetSuite Connector ​`Search`​ 操作を使用してこれらのオブジェクトを見つけることができません。 販売注文などのサポートされないオブジェクトの検索を実行するには、次の操作を実行できます。 - SuiteScript を開発し、RESTlet としてデプロイして、コネクタからコールする。 ## [](#call-restlet-get-操作の空のペイロード)Call RESTlet (GET) 操作の空のペイロード **Call RESTlet (GET)**​ 操作は GET 操作ですが、​**\[Data (データ)\]**​ 項目のペイロードを指定する必要があります。指定しない場合、コネクタはエラーをスローします。このエラーを回避するには、​`{}`​ などの空のペイロードを指定できます。 ## [](#関連情報)関連情報 - [MuleSoft ヘルプセンター](https://help.mulesoft.com) - [Known Issues](https://help.salesforce.com/s/issues) # NetSuite RESTlet のコールの例 この例では次の方法を示します。 - NetSuite インスタンスにデプロイされた NetSuite RESTlets をコールして顧客レコードを作成、取得、削除するスクリプトを作成する - RESTlet スクリプトをデプロイする - NetSuite に接続してアプリケーションをデプロイするようにアプリケーションのプロパティを設定する ## [](#始める前に)始める前に この例を実行するには、以下が必要です。 - Java 8、11、または 17 - Anypoint Studio 7.0.x - Mule 4.2.1 以降 - DataWeave 2.0 - NetSuite インスタンスへのアクセス権と ​`mule-app.properties`​ ファイル内のログイン情報 ## [](#deploy-a-script-as-restlet)スクリプトを作成して RESTlet としてデプロイする 顧客レコードを作成、取得、削除するスクリプトを作成してデプロイします。 1. サンプル JavaScript スクリプトを作成します。 ```javascript // Get a standard NetSuite record function getRecord(datain) { return nlapiLoadRecord(datain.recordtype, datain.id); // for example, recordtype="customer", id="769" } // Create a standard NetSuite record function createRecord(datain) { var err = new Object(); // Validate if mandatory record type is set in the request if (!datain.recordtype) { err.status = "failed"; err.message= "missing recordtype"; return err; } var record = nlapiCreateRecord(datain.recordtype); for (var fieldname in datain) { if (datain.hasOwnProperty(fieldname)) { if (fieldname != 'recordtype' && fieldname != 'id') { var value = datain[fieldname]; if (value && typeof value != 'object') // ignore other type of parameters { record.setFieldValue(fieldname, value); } } } } var recordId = nlapiSubmitRecord(record); nlapiLogExecution('DEBUG','id='+recordId); var nlobj = nlapiLoadRecord(datain.recordtype,recordId); return nlobj; } // Delete a standard NetSuite record function deleteRecord(datain) { nlapiDeleteRecord(datain.recordtype, datain.id); // for example: recordtype="customer", id="769" } ``` 2. アカウントの SuiteScript と NetSuite Web サービスを有効にします。 1. NetSuite にログインします。 2. **\[Set Up (セットアップ)\] > \[Company (会社)\] > \[Enable Features (機能の有効化)\] > \[SuiteCloud\]**​ をクリックします: ![SuiteScript の有効化ページ](/mulesoft/current/ja-jp/netsuite-restlet-connector/latest/_images/netsuite-enable-suitescript.png) 3. [以前に作成した](#deploy-a-script-as-restlet)​ファイルをアップロードします。 1. **\[Customization (カスタマイズ)\] > \[Scripting (スクリプト)\] > \[Scripts (スクリプト)\] > \[New (新規)\]**​ に移動します。 2. スクリプトファイルを選択し、​**\[Create Script Record (スクリプトレコードの作成)\]**​ をクリックし、​**\[RESTlet\]**​ を選択します。 ![スクリプト種別の選択ページ](/mulesoft/current/ja-jp/netsuite-restlet-connector/latest/_images/netsuite-script-type.png) 4. アップロードしたスクリプトのコンテンツを使用してフォームに入力し、スクリプトをデプロイします。 ![スクリプトの設定ページ](/mulesoft/current/ja-jp/netsuite-restlet-connector/latest/_images/netsuite-setup-script.png) 5. 次のページを表示するオーディエンスを選択します。 ![スクリプトのデプロイページ](/mulesoft/current/ja-jp/netsuite-restlet-connector/latest/_images/netsuite-script-deployment.png) 6. 外部 URL に表示されているスクリプト番号とデプロイ番号を書き留めておきます。これらは、後で RESTlet をコールするために必要です。 ## [](#mule-プロジェクトを作成する)Mule プロジェクトを作成する Studio で新しい Mule プロジェクトを作成し、NetSuite に接続するためのログイン情報、デプロイしたスクリプト、デプロイ ID を設定します。 1. Studio で、​**\[File (ファイル)\] > \[New (新規)\] > \[Mule Project (Mule プロジェクト)\]**​ を選択します。 2. Mule プロジェクトの名前を入力して、​**\[Finish (完了)\]**​ をクリックします。 3. **Package Explorer**​ で、作成した Studio プロジェクトに配置されている ​`src/main/resources/mule-app.properties`​ ファイルを開きます。 4. 次の値を設定します。 ```javascript netsuite.email= netsuite.password= netsuite.account= netsuite.roleId= netsuite.applicationId= netsuite.subsidiary= netsuite.script= netsuite.deploy= ``` `netsuite.script`​ と ​`netsuite.deploy`​ の値は、​[「スクリプトを作成して RESTlet としてデプロイする」](#deploy-a-script-as-restlet)​の最後のステップで書き留めた値です。 ## [](#add-connector-to-project)コネクタを Mule プロジェクトに追加する NetSuite Connector を Mule プロジェクトに追加して、XML コードにコネクタの名前空間およびスキーマの場所を自動的に入力し、プロジェクトの ​`pom.xml`​ ファイルに必須の連動関係を追加します。 1. **\[Mule Palette (Mule パレット)\]**​ ビューで、​**\[(X) Search in Exchange ((X) Exchange 内を検索)\]**​ をクリックします。 2. **\[Add Modules to Project (モジュールをプロジェクトに追加)\]**​ で、検索項目に「​`netsuite`​」と入力します。 3. **\[Available modules (使用可能なモジュール)\]**​ で、そのコネクタ名をクリックします。 4. **\[Add (追加)\]**​ をクリックします。 5. **\[Finish (完了)\]**​ をクリックします。 ## [](#アプリケーションフローを作成する)アプリケーションフローを作成する 1. Studio キャンバスで ​**Configuration XML (設定 XML)**​ をクリックします。 2. ``​ 行の後のすべてのコンテンツを削除します。 3. 次の XML をコピーして、​``​ 行の後に貼り付けます。 ```xml ``` 4. プロジェクトを保存します。 ### [](#フローについて)フローについて 1. `html-form`​ フローでは、​`parseTemplate`​ コンポーネントを使用して HTML フォームを表示します。 ![HMTL フォーム Studio フロー](/mulesoft/current/ja-jp/netsuite-restlet-connector/latest/_images/netsuite-html-form-flow.png) 2. `restletGet`​ フローでは、RESTlet の GET 関数をコールします。 ![Restlet Get Studio フロー](/mulesoft/current/ja-jp/netsuite-restlet-connector/latest/_images/netsuite-restlet-get.png) 3. `restletPost`​ フローでは、RESTlet の POST 関数をコールします。 ![Restlet Post Studio フロー](/mulesoft/current/ja-jp/netsuite-restlet-connector/latest/_images/netsuite-restlet-post.png) 4. `restletDelete`​ フローでは、RESTlet の DELETE 関数をコールします。 ![Restlet Delete Studio フロー](/mulesoft/current/ja-jp/netsuite-restlet-connector/latest/_images/netsuite-restlet-delete.png) ## [](#アプリケーションを実行する)アプリケーションを実行する アプリケーションを実行、デプロイ、確認します。 1. プロジェクトのキャンバスの下部にある ​**\[Global Elements (グローバル要素)\]**​ をクリックします。 2. **\[Global Configuration Elements (グローバル設定要素)\]**​ で、​**\[NetSuite Rest config (NetSuite Rest 設定)\]**​ を選択して ​**\[Edit (編集)\]**​ をクリックします。 3. **\[Test Connection (接続をテスト)\]**​ をクリックして、Sandbox と接続されていることを確認します。 成功メッセージが表示されます。 ![\[Test connection successful (テスト接続成功)\] メッセージ](_images/netsuite-demo-connection-test.png) 4. **Package Explorer**​ でプロジェクト名をクリックし、​**\[Run (実行)\] > \[Run As (別のユーザーとして実行)\] > \[Mule Application (Mule アプリケーション)\]**​ をクリックします。 コンソールで、​`Mule is up and kicking`​ のメッセージを探して、アプリケーションが正常に開始されたことを確認します。 5. ブラウザーを開き、URL ​`http://localhost:8081`​ にアクセスします。 アプリケーションがデプロイされたことを確認できます。 ![デモページ](/mulesoft/current/ja-jp/netsuite-restlet-connector/latest/_images/netsuite-demo-main-page.png) ## [](#関連情報)関連情報 - [Anypoint Connector の概要](https://docs.mulesoft.com/connectors/introduction/introduction-to-anypoint-connectors) - [NetSuite Connector の概要](https://docs.mulesoft.com/jp/netsuite-restlet-connector/latest/) - [NetSuite Connector リファレンス](https://docs.mulesoft.com/jp/netsuite-restlet-connector/latest/netsuite-restlet-connector-reference) - [MuleSoft ヘルプセンター](https://help.mulesoft.com)