Gestion des exceptions dans JSP

โšก Rรฉsumรฉ intelligent

La gestion des exceptions dans JSP gรจre les erreurs qui surviennent lors de l'exรฉcution du code, de maniรจre similaire ร  Java Les blocs try-catch gรจrent les exceptions de trois types : vรฉrifiรฉes, dโ€™exรฉcution et dโ€™erreur. Les pages JSP utilisent les attributs errorPage et isErrorPage pour rediriger et afficher les exceptions.

  • โš ๏ธ Exception dรฉfinie : Une erreur lors de l'exรฉcution JSP, gรฉrรฉe comme Java try-catch.
  • ๐Ÿ‡ง๐Ÿ‡ท Trois types: Exceptions vรฉrifiรฉes, d'exรฉcution et d'erreur.
  • ๐Ÿงพ ร€ carreaux: Les exceptions FileNotFoundException, IOException et SQLException doivent รชtre gรฉrรฉes.
  • ๐Ÿงจ Durรฉe: ArrayIndexOutOfBounds, ArithmeticException et NullPointerException.
  • ๐Ÿ›Ÿ page d'erreur / isErrorPage : Rediriger les erreurs vers une page affichant la pile d'exceptions trace.

Gestion des exceptions dans JSP

Quโ€™est-ce quโ€™une exception dans JSP ?

Exceptions dans JSP se produit lorsqu'il y a une erreur dans le code, soit par le dรฉveloppeur, soit par une erreur interne du systรจme. La gestion des exceptions dans JSP est la mรชme que dans Java oรน nous gรฉrons les exceptions ร  lโ€™aide de blocs Try Catch. Contrairement ร  Java, il existe รฉgalement des exceptions dans JSP lorsqu'il n'y a pas d'erreur dans le code.

Types d'exceptions dans JSP

Les exceptions dans JSP sont de trois types :

  1. Exception cochรฉe
  2. Exception d'exรฉcution
  3. Exception d'erreur

Exceptions vรฉrifiรฉes

Il s'agit gรฉnรฉralement d'une erreur de l'utilisateur ou de problรจmes qui ne sont pas dรฉtectรฉs par le dรฉveloppeur et qui sont appelรฉs exceptions vรฉrifiรฉes. Voici quelques exemples d'exceptions vรฉrifiรฉes :

  1. FileNotFoundException: Il s'agit d'une exception vรฉrifiรฉe (oรน il essaie de trouver un fichier lorsque le fichier est introuvable sur le disque).
  2. Exception d'E/S: Il s'agit รฉgalement d'une exception vรฉrifiรฉe. Si une exception se produit lors de la lecture ou de l'รฉcriture d'un fichier, l'exception IO est dรฉclenchรฉe.
  3. SQLException: Il s'agit รฉgalement d'une exception vรฉrifiรฉe lorsque le fichier est connectรฉ ร  SQL base de donnรฉes, et il y a un problรจme avec la connectivitรฉ de la base de donnรฉes SQL, alors SQLException est levรฉe

Exceptions d'exรฉcution

Les exceptions d'exรฉcution sont celles qui auraient pu รชtre รฉvitรฉes par le programmeur. Elles sont ignorรฉes au moment de la compilation. Voici quelques exemples d'exceptions d'exรฉcution :

  1. ArrayIndexOutOfBoundsExceptionArrayIndexOutOfBoundsException: Il s'agit d'une exception d'exรฉcution lorsque la taille du tableau dรฉpasse la รฉlรฉments.
  2. ArithmรฉtiqueException: Il s'agit รฉgalement d'une exception d'exรฉcution lorsqu'il existe des opรฉrations mathรฉmatiques qui ne sont pas autorisรฉes dans des conditions normales, par exemple, diviser un nombre par 0 donnera une exception.
  3. Exception NullPointer: Il s'agit รฉgalement d'une exception d'exรฉcution qui est dรฉclenchรฉe lorsqu'une variable ou un objet est nul lorsque nous essayons d'y accรฉder. Il s'agit d'une exception trรจs courante.

Les erreurs:

Le problรจme survient en raison du contrรดle de l'utilisateur ou du programmeur. Si la pile dรฉborde, une erreur peut se produire. Voici quelques exemples d'erreur :

  1. Erreur: Cette erreur est une sous-classe de throwable qui indique des problรจmes graves qu'une application ne peut pas dรฉtecter.
  2. Erreur d'instanciation: Cette erreur se produit lorsque nous essayons d'instancier un objet, et cela ne parvient pas ร  le faire.
  3. Erreur interne : Cette erreur se produit lorsqu'une erreur s'est produite ร  partir de la JVM, c'est-ร -dire Java Machine virtuelle.

Exceptions d'erreur

Il s'agit d'une instance de la classe throwable, et elle est utilisรฉe dans les pages d'erreur. Voici quelques mรฉthodes de la classe throwable :

  • Chaรฎne publique getMessage() โ€“ renvoie le message de l'exception.
  • public throwable getCause() โ€“ renvoie la cause de lโ€™exception
  • Public printStackTrace () โ€“ renvoie la piletrace de l'exception.

Comment gรฉrer les exceptions dans JSP

Voici un exemple de la faรงon de gรฉrer les exceptions dans JSP :

Exception_example.jsp

<%@ page errorPage="guru_error.jsp" %>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Exception Guru JSP1</title>
</head>
<body>
<%
 int num = 10;
   if (num == 10)
   {
      throw new RuntimeException("Error condition!!!");
   }
 %>
   </body>
</html>

Guru_error.jsp

<%@ page isErrorPage="true" %>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Guru Exception Page</title>
</head>
<body>
<p>Guru Exception has occurred</p>
<% exception.printStackTrace(response.getWriter()); %>
</body>
</html>

Explication du code :

Exception_example.jsp

Code Ligne 1: Ici, nous dรฉfinissons la page d'erreur sur guru_error.jsp qui sera utilisรฉe lorsque l'erreur sera redirigรฉe.

Code Ligne 15: nous prenons une variable num et la dรฉfinissons sur 10 et vรฉrifions une condition si num est 10, puis nous lanรงons une exception d'exรฉcution avec le message comme condition d'erreur.

Guru_error.jsp

Code Ligne 1: Ici, nous dรฉfinissons l'attribut isErrorPage sur true.

Code Ligne 12: Une exception a รฉtรฉ levรฉe dans exception_example.jsp ร  l'aide de l'objet throw et sera affichรฉe ici car l'attribut IsErrorPage est dรฉfini sur true. Nous utilisons cet objet exception (qui permet ร  la JSP d'accรฉder aux donnรฉes de l'exception) pour afficher la pile d'exรฉcution.trace de l'erreur qui s'est produite dans exception_example.jsp.

Lorsque vous exรฉcutez le code ci-dessus, vous obtenez le rรฉsultat suivant :

Gรฉrer les exceptions dans JSP

Sortie :

Une exception a รฉtรฉ levรฉe depuis exception_example.jsp ร  l'aide de l'objet throw de l'exception d'exรฉcution, ce qui nous donne le code ci-dessus. guru_error.jsp est รฉgalement appelรฉ. Guru Une exception s'est produite avec ce fichier.

FAQ

Les exceptions JSP sont des exceptions vรฉrifiรฉes (comme FileNotFoundException, IOException, SQLException), des exceptions d'exรฉcution (comme ArrayIndexOutOfBounds, ArithmeticException, NullPointerException) et des erreurs (comme le dรฉpassement de capacitรฉ de la pile et les erreurs internes de la JVM).

L'attribut errorPage spรฉcifie la page vers laquelle une exception doit รชtre redirigรฉe. L'attribut isErrorPage, dรฉfini sur true sur cette page cible, lui permet d'accรฉder ร  l'objet implicite d'exception et d'afficher l'erreur.

L'objet implicite d'exception est une instance de Throwable disponible uniquement sur les pages d'erreur (isErrorPage=true). Il expose des mรฉthodes telles que getMessage(), getCause() et printStack.Trace() pour signaler l'erreur.

L'IA peut lire une pile trace, identifier la ligne dรฉfaillante, expliquer la cause profonde en termes simples et suggรฉrer une solution, aiderping Les dรฉveloppeurs rรฉsolvent plus rapidement les exceptions JSP lors des tests et des revues de code.

Oui. L'IA peut recommander oรน ajouter des blocs try-catch ou une page d'erreur, gรฉnรฉrer une page d'erreur rรฉutilisable et signaler les exceptions vรฉrifiรฉes non gรฉrรฉes, amรฉliorant ainsi la robustesse des applications JSP.

Rรฉsumez cet article avec :