• No : 33466
  • 公開日時 : 2021/08/11 14:02
  • 印刷
DSServistaDSCloud

【DataSpider】Salesforce アダプタの [接続リトライ詳細設定] の使い方について教えてください

下記エラーが発生した際に、Salesforce アダプタでリトライを行いたいのですが、グローバルリソースの [接続リトライ詳細設定] では [例外クラス名] をどのように設定すればよいでしょうか?
------
com.appresso.ds.script.runtime.ComponentFailedException: [select_Account(クラウド/Salesforce/データ読み取り(SOQL実行))]の処理に失敗しました。原因:[com.sforce.ws.ConnectionException: Unexpected element. Parser was expecting element 'http://schemas.xmlsoap.org/soap/envelope/:Envelope' but found ':html']
 
// 中略 //
 
Caused by: com.sforce.ws.ConnectionException: Unexpected element. Parser was expecting element 'http://schemas.xmlsoap.org/soap/envelope/:Envelope' but found ':html'
------
カテゴリー : 

回答

「com.appresso.ds.script.runtime.ComponentFailedException」につきましては、スクリプト内でコンポーネントの処理が失敗した際に出力されるエラーとなるため、Salesforce との接続エラー以外の場合でも出力されます。
 
このため、今回のエラーの場合は「com.sforce.ws.ConnectionException」を[例外クラス名] に設定することで、想定通りのリトライ処理が可能となるかご確認ください。
 
なお、過去事例では、上記例外は Salesforce 側の通信障害等によって発生したとご報告をいただいておりました。
 
■補足
[接続リトライ詳細設定] では、[例外クラス名] は完全一致で、[エラーメッセージ] は部分一致でリトライ判定を実施しています。
 
このため、[例外クラス名] には、「java.net.SocketException」や「org.apache.commons.httpclient.HttpException」のような例外クラス名を完全一致で指定し、発生した例外が [例外クラス名] に指定した例外クラスと一致した場合にリトライ処理を実施します。
 
また、[エラーメッセージ] にてエラーメッセージを指定した場合は、発生した例外のエラーメッセージに指定した文字列が含まれる場合に、リトライ処理を実施します。
 
なお、[例外クラス名]と[エラーメッセージ]を共に指定した場合、両方の条件に一致した場合にリトライ処理が実施され、[例外クラス名]と[エラーメッセージ]の一方のみ指定した場合、省略した方は無条件としてリトライ判定が実施されます。
 
■参考情報
 ▼DataSpider Servista ヘルプ
  • [Salesforce] - [グローバルリソースのプロパティ]
 
 ▼DataSpider Cloud ヘルプ
  • [Salesforce] - [グローバルリソースのプロパティ]
目的別で検索
設定