异常捕获处理(2)

异常捕获机制
BME中定义了一个抽象异常类BMEException,它有两个子类BusinessBMEException和GeneralBMEException。一般情况下我们抛出异常的时候采用throw new BuisinessBMEException(“100010101”,e),其中“100010101”为异常码,e为原始异常。

异常不经处理层层上抛后可以到达显示层,在*.web.xml中配置如下便可以用struts截获异常并跳转页面。
<bme:global-exception>
<bme:exception name="exception"
class="com.huawei.bme.commons.exception.BMEException"
result="bmeexception" />
</bme:global-exception>
<bme:global-result>
<bme:result id="bmeexception" type="jsp"
path="/WEB-INF/jsp/frame/error.jsp" />
</bme:global-result>

因为我们所有的异常都以BuisinessBMEException抛出,为BMEException的子类,因此可以被截获并跳转至error.jsp。在错误页面中,可以根据错误码去资源文件中读取错误描述、原因和解决办法并显示出来。

你可能感兴趣的:(jsp,Web,xml,struts)