我正在尝试将全局错误页面用于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中的业务逻辑中抛出一些异常时,我希望用户可以按照我的配置查看错误页面。
然而它不起作用。它仍然在浏览器中显示没有任何内容的相同页面,但在控制台上显示异常堆栈跟踪。
我哪里错了?
答案 0 :(得分:1)
我认为您的问题与您用于从 web.xml 引用错误页面的位置有关。
所以,如果在你的位置,我会将我的错误文件放在 Web内容目录下并将我的子标记更改为
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/error.jspx</location>
好吧,我会使用 html页面。