Visualforceページでカスタムコントローラーを指定する

タイトルの通りだけのメモ。

visualforceのページ内の冒頭、<apex:page>内で、
extensions="RemindController"という風に指定する。

<apex:page standardController="Lead" extensions="CustomController" >

この指定をしておくことで、action内で参照する関数は、指定したクラス内から呼び出されるようになる。

また、VisualForce内の冒頭、apex:pageタグ内で、actionを指定して、そこで関数を実行するようにする。
すると、ページアクセス時にまず呼び出されるようになる。

[VisualForce]

<apex:page standardController="Lead" action="{!checkKey}" >

[apexクラス]

public Pagereference checkKey(){
    if(/*処理*/){
        reutrn Page.xx;
    }else{
        return null;
    }
}

参考:ページを開いた段階でURLに含まれるKeyなどが不足している場合に、 別ページに遷移させる方法。

注意点としては、エラーページに遷移しなくていい場合には、
自身のページを指定してしまうと、無限ループに入って、内部サーバーエラー、となってしまう。
なので、遷移しなくていい場合は、nullを返しておくと大丈夫なよう。

   このエントリーをはてなブックマークに追加