1

ADF/WebCenter アプリケーションで、あらゆる種類の例外に対してグローバル エラー ページを使用しようとしています。私のweb.xmlにはこれがあります-

  <error-page>
    <exception-type>java.lang.Exception</exception-type>
    <location>/faces/oracle/webcenter/portalapp/pages/error.jspx</location>
  </error-page>

私のページでは、マネージド Bean を使用して値を表示しています。

<af:outputText value="#{mybean.value}" />

Bean の例を次に示します。

public class MyBean {
    private String value = null;
    public String getValue() {
        return value;
    }
    public void setValue(String value) {
        this.value = value;
    }
    public MyBean() throws MyAppException {
        calculateValue();
    }
    public void calculateValue() throws MyAppException {
        try { 
            // some business logic
        } catch (Exception e) {
            e.printStackTrace();
            throw new MyAppException();
        }
        setValue(1);
    }    
}

ここで、マネージド Bean のビジネス ロジックで意図的に例外をスローすると、構成に従ってユーザーにエラー ページが表示されることを期待していました。

しかし、それは機能していません。ブラウザにはコンテンツのない同じページが引き続き表示されますが、コンソールには例外スタック トレースが表示されます。

どこが間違っていますか?

4

1 に答える 1