arc:catch
Version 23.4.8841
arc:catch
Version 23.4.8841
arc:catch キーワードは、スクリプト内で例外処理ブロックを作成するために使われます。arc:try に加え、次のキーワード内でarc:catch ブロックを有することができます。スコープは黙示的arc:try セクションとして機能します:
パラメータ
- code:コードパラメータは、選択的に例外をキャッチすることを許容します。すべての例外をキャッチする場合には * 記号を使います。
アトリビュートの制御
- _code:キャッチされた例外のコード。
- _description:キャッチされた例外の短い説明。
- _details:例外のより詳細な説明。
例
エラーを、バッチファイル、もしくはシェルコマンドからよりユーザーフレンドリーなメッセージでラップします。
<arc:try>
<arc:call op="sysExecute">
<arc:check attr="sys:error">
<arc:throw code="myerror" description="バッチファイルは実行できませんでした" details="[sys:error]"/>
</arc:check>
</arc:call>
<arc:catch code="*">
<arc:call op="appSendEmail"/>
</arc:catch>
</arc:try>
例外をスローし、キャッチします。arc:call の中で、RSBException が投げられ、キャッチされます。キーワードのスコープ内で、arc:ecode
およびarc:emessage
アトリビュートが、現在のアイテムに足され、はき出されます。
<arc:call op="...">
<arc:throw code="myerror" description="thedescription" details="Other Details."/>
<arc:catch code="myerror">
<arc:set attr="arc:ecode" value="[_code]"/>
<arc:set attr="arc:emessage" value="[_description]: [_details]"/>
<arc:push/>
</arc:catch>
</arc:call>
すべての例外をキャッチします。
<arc:catch code="*">
例外が発生しました。Code: [_code], Message: [_description]
</arc:catch>