JBuilder2005 Практическая обработка ошибок JSP (4)
Автор:Eve Cole
Время обновления:2009-07-02 17:09:47
Ошибка обработки страницы error.jsp
Веб-приложения обычно имеют одну или несколько унифицированных страниц JSP обработки ошибок, поэтому при возникновении ошибки на функциональной странице JSP пользователю может быть предоставлена обратная связь в дружественной форме. Удобные и унифицированные страницы ошибок — это аспект, который нельзя игнорировать на уровне веб-представления.
Далее мы создаем файл error.jsp для обработки ошибок, код которого следующий:
Листинг 11. JSP-страница error.jsp для обработки ошибок
1. <%@page contentType="text/html; charset=GBK" isErrorPage="true" %> 2. <html> 3. <голова> 4. <title>ошибка</title> 5. </голова> 6. <body bgcolor="#ffffff"> 7. К сожалению, произошло системное исключение. Нажмите <a href="login.jsp">здесь</a>, чтобы вернуться на домашнюю страницу. 8. </тело> 9. </html> |
Атрибут isErrorPage в теге директивы страницы страницы JSP обработки ошибок должен быть установлен в значение true, как показано в строке 1, чтобы на странице JSP можно было получить доступ к неявному объекту исключения. В строке 7 мы «элегантным» способом сообщаем пользователю об ошибке программы и предоставляем обратную ссылку на страницу входа.
Теперь давайте вернемся назад и укажем error.jsp в качестве страницы обработки ошибок для switch.jsp и login.jsp через <%@ page errorPage="Error Handling JSP"%>.
После добавления страницы обработки ошибок на страницу switch.jsp ее код будет выглядеть следующим образом:
Листинг 12. В файл switch.jsp добавлена страница обработки ошибок Jsp.
1. <%@page contentType="text/html; charset=GBK" errorPage="error.jsp"%> 2. <%@page import="bookstore.*"%> 3. <%@page import="java.sql.*"%> 4.… |
После добавления JSP-страницы обработки ошибок на страницу login.jsp ее код будет выглядеть следующим образом:
Листинг 13. В файле login.jsp добавлена страница обработки ошибок.
1. <%@page contentType="text/html; charset=GBK" errorPage="error.jsp"%> 2. <%@page errorPage="error_error.jsp"%> 3.… |
Таким образом, если оператор SQL-запроса файла switch.jsp неверен и вызывает исключение SQLException, неясная страница ошибок с информацией о трассировке исключений исчезает и заменяется следующей понятной страницей ошибок:
Рис. 15. Страница дружественной обработки ошибок |
Ошибка входа в систему
Если пользователь вводит неверный пароль, файл switch.jsp перенаправляется на страницуfail.jsp. Аналогичным образом вы можете создать страницуfail.jsp с помощью мастера JSP. Код для файлаfail.jsp выглядит следующим образом:
Листинг 14. Страница ошибки входа в файл error.jsp
1. <%@ page contentType="text/html; charset=GBK" errorPage="error.jsp" %> 2. <html> 3. <голова> 4. <название> 5.провалиться 6. </заголовок> 7. </голова> 8. <body bgcolor="#ffffff"> 9. Введенный вами пароль неверен. Нажмите <a href="login.jsp">здесь</a>, чтобы вернуться на страницу входа. 10. </тело> 11. </html> |
Когда пользователь вводит неправильный пароль, результат страницыfail.jsp выглядит так, как показано ниже:
Рис. 16. Эффект страницы error.jsp. |