使用Bean的JSP中的异常处理

时间:2013-01-29 03:05:53

标签: jsp exception servlets javabeans

我正在寻找一种在JSP页面中处理异常的好方法。 所以我有一个JSP页面,我可以访问我的bean getters:

<c:when test="${exampleBean.metric.outOfDate}">
    <div class="OutOfDate">Out of Date</div>
</c:when>
 ... and so on

因此,当我访问exampleBean.metric时,它认为它是我的metricBean中的getMetric方法。但是这个指标可能不存在,所以我只是去

就抛出一个错误
public Metric getMetric() throws Exception1, Exception2{
 // the names of the Exceptions are just dummies here
 try {
       // to do some invalid stufff
    } catch (Exception1 ex) {
        throw ex;
    } catch (Exception2 ex) {
        throw ex;
    }
}

所以,我为一个页面多次调用这个bean getter方法,有时会失败一些,我想知道我的JSP中抛出的错误是什么,以便将它显示给用户。

我知道在我的web.xml文件中有一个自定义错误页面的方法,我将所有抛出都转到一个错误页面,但我不希望这样,因为它可能只有一小部分页面可用导致错误,我希望页面的其余部分仍然显示

我处理这个错误的方式吗?即错误检查应该以某种方式在我的servlet或其他地方完成?如果是这样,我怎么能在那里检查我的bean方法?任何链接将不胜感激

使用JSTL方法也没有帮助我,即我尝试用这样的方法封装东西:

<c:catch var="exception">
   <c:when test="${exampleBean.metric.outOfDate}">
      <div class="OutOfDate">Out of Date!</div>
   </c:when>
</c:catch>
<c:if test="${exception!=null}">
     <%-- give a user message saying something was wrong, but this didn't give an exception even when it was called from my bean--%>
</c:if>  

0 个答案:

没有答案