猿教程 Logo

JSP异常处理

异常通常是在运行时抛出的对象。 异常处理是处理运行时错误的过程。 在您的Web应用程序中,任何时候都可能发生异常。 因此,处理异常对于Web开发人员来说是更安全的一面。 在JSP中,有两种方法来执行异常处理:

  1. 由page指令的errorPage和isErrorPage属性

  2. 由web.xml文件中的<error-page>元素


在jsp中由page指令的元素处理异常的示例

在这种情况下,您必须定义和创建一个页面来处理异常,如error.jsp页面中所示。 可能出现异常的页面,定义page指令的errorPage属性,如process.jsp页面中所示。

有3个文件:

  • index.jsp用于输入值

  • process.jsp用于划分两个数字并显示结果

  • error.jsp用于处理异常

index.jsp

<form action="process.jsp">
No1:<input type="text" name="n1" /><br/><br/>
No1:<input type="text" name="n2" /><br/><br/>
<input type="submit" value="divide"/>
</form>

process.jsp

<%@ page errorPage="error.jsp" %>
<%

String num1=request.getParameter("n1");
String num2=request.getParameter("n2");

int a=Integer.parseInt(num1);
int b=Integer.parseInt(num2);
int c=a/b;
out.print("division of numbers is: "+c);

%>

error.jsp

<%@ page isErrorPage="true" %>

<h3>Sorry an exception occured!</h3>

Exception is: <%= exception %>

本示例的输出:






通过在web.xml文件中指定错误页面元素在jsp中处理异常的示例

这种方法更好,因为您不需要在每个jsp页面中指定errorPage属性。 在web.xml文件中指定单个条目将处理异常。 在这种情况下,请使用location元素指定exception-type或error-code。 如果你想处理所有的异常,你必须在exception-type元素中指定java.lang.Exception。 让我们看一个简单的例子:

有4个文件:

  • web.xml文件,用于指定错误页面元素

  • index.jsp用于输入值

  • process.jsp用于划分两个数字并显示结果

  • error.jsp用于显示异常

1)web.xml文件,如果要处理任何异常

<web-app>

 <error-page>
  <exception-type>java.lang.Exception</exception-type>
  <location>/error.jsp</location>
  </error-page>
 
</web-app>

这种方法更好(如果你想处理任何异常)。 如果您知道任何特定的错误代码,并且想要处理该异常,请指定错误代码元素而不是异常类型,如下所示:

1)web.xml文件,如果要处理特定错误代码的异常

<web-app>

 <error-page>
  <error-code>500</error-code>
  <location>/error.jsp</location>
  </error-page>
 
</web-app>

2)index.jsp文件与上面的例子相同

3)process.jsp

现在,您不需要在jsp页面中指定page指令的errorPage属性。

<%@ page errorPage="error.jsp" %>
<%

String num1=request.getParameter("n1");
String num2=request.getParameter("n2");

int a=Integer.parseInt(num1);
int b=Integer.parseInt(num2);
int c=a/b;
out.print("division of numbers is: "+c);

%>

4)error.jsp文件与上述示例中的相同


版权声明:本站所有教程均为本站原创或翻译,转载请注明出处,请尊重他人劳动果实。请记住本站地址:www.yuanjiaocheng.net (猿教程) 作者:卿文刚
本文标题: C#环境
本文地址:http://www.yuanjiaocheng.net/Jsp/exception-handling-in-jsp.html