LoginSignup
3
3

More than 5 years have passed since last update.

Visualforceページを開いた時にSalesforce標準のエラーページを表示する

Posted at

Apexで用意されている例外の種類には、Visualforceページで使用可能なものがあります。

  • NoDataFoundException
  • NoAccessException

これらを利用して、Visualforceページを開いた時にSalesforce標準のエラーページを表示することができます。

手順

Visualforceページのコントローラクラスを作成し、コンストラクタ実行時に例外を発生させます。

MyPageController.cls
public class MyPageController {
  public MyPageController() {
    throw new NoDataFoundException();  // "データがありません"エラーを表示
    //throw new NoAccessException();   // "アクセス権がありません"エラーを表示
  }
}
MyPage.page
<apex:page controller="MyPageController">
</apex:page>

実行結果

/apex/MyPage へアクセスすると、Salesforce標準のエラー画面が表示されます。

・NoDataFoundException発生時

・NoAccessException発生時

補足

  • 通常はApexエラーが発生すると通知メールが送信されますが、この場合は送信されません。
  • 以下のコードのように、コンストラクタ実行時以外のタイミングで例外を発生させるとエラーが発生します(この場合はApexエラーの通知メールが送信されます)。
MyPageController.cls
public class MyPageController {
  public void init(){
    throw new NoDataFoundException();
  }
}
MyPage.page
<apex:page controller="MyPageController" acition="{!init}">
</apex:page>

実行結果:

参考リンク

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3