Skip to main content

 

拡張および連携

 

Webアプリケーションが対象
OutSystems

JavaScriptエラーを処理する

以下の特定の状況で発生するJavaScriptエラーを処理することができます。

  • <script>タグのある、エスケープされていない式のAjax更新時
  • HTTPRequestHandler拡張機能のRunJavaScriptアクション実行時

こうしたエラーを処理するには、エラーを処理するJavaScript関数を定義して、エラーハンドラ関数として登録する必要があります。

エラーを処理するJavaScript関数を定義する方法

デフォルトでは、OutSystemsにはOsAlertExceptionHandlerという基本的なエラーハンドラ関数があります。この関数はエラーに関する情報を示す警告ボックスを表示します。

OsAlertExceptionHandler関数を使用してJavaScriptエラーを処理するか、以下のシグネチャを使用して独自の関数を定義することができます。

function <ErrorHandlerFunctionName>( event, exception [, errorCode] [, origin] )

引数は以下のとおりです。

  • event: jQueryのイベント。
  • exception: エラーを発生させたJavaScriptの例外インスタンス。エラーの詳細については、exception.nameおよびexception.messageプロパティを使用してください。
  • errorCode: エラーの種類を識別する整数。この引数は任意です。
  • origin: エラーがトラップされたJavaScript関数。この引数は任意です。

以下のエラーコードは事前定義されており、関数のロジックで使用することができます。

  • outsystems.osErrorCodes.UserJavascriptError: アクションフローでのHTTPRequestHandler拡張機能のRunJavaScriptアクションの実行中、または「<script>」タグのあるエスケープされていない式の更新時に発生します。
  • outsystems.osErrorCodes.ConnectionError: サーバーへのAjaxリクエスト開始時またはリクエスト中に発生する可能性がある接続エラーです。
  • outsystems.osErrorCodes.SystemJavascriptError: OutSystemsのAjax JavaScript実行中に予期しない例外が生じた場合に発生します。

エラーハンドラ関数の登録方法

エラー処理用のJavaScript関数を設定するには、まず登録が必要です。以下のJavaScriptコードをモジュールに追加します。

OsRegisterExceptionHandler(<ErrorHandlerFunctionName>)

OutSystems OsAlertExceptionHandler関数を使用する場合、まず登録が必要です。

以下の例は、モジュールのスコープのJavaScriptエラーを処理する関数の定義と、エラーハンドラ関数としての登録を示しています。

エラー処理用の関数は、複数登録することが可能です。登録されたエラーハンドラ関数は、すべてJavaScriptエラーの発生時に実行されます。

  • Was this article helpful?