Durante l'esecuzione di pagine JSP, possono verificarsi errori. Questi errori possono essere classificati in diversi tipi. Il concetto di gestione delle eccezioni a JSP è simile a Java, dove le eccezioni vengono gestite utilizzando i blocchi try-catch. In questo post approfondiremo il concetto di gestione delle JSP Exception.

Le JSP Exception

Le JSP Exception possono essere definite come un oggetto lanciato durante l'esecuzione di un programma. La gestione delle eccezioni è la pratica di gestione degli errori in fase di esecuzione. Eccezioni possono verificarsi in qualsiasi momento in un'applicazione web. Pertanto, lo sviluppatore web deve gestire le eccezioni per essere al sicuro e far funzionare l'utente in modo impeccabile sul web.

JSP Exception Implicit Object

- Viene implementato un oggetto implicito di eccezione per gestire le eccezioni e visualizzare i messaggi di errore.

- L'oggetto implicito dell'eccezione è un'istanza della classe java.lang.Throwable .

- È disponibile solo per le pagine JSP, con il valore isErrorPage impostato su "True". Ciò significa che gli oggetti Exception possono essere utilizzati solo nelle pagine di errore.

Ci sono tre tipi di eccezioni in JSP:

- Eccezione controllata

- Eccezione di runtime

- Errori Eccezione

Eccezioni controllate

"Eccezioni controllate" sono un tipo di eccezione che di solito è un errore dell'utente o un problema che non può essere previsto dal programmatore. Questo tipo di eccezione viene verificato in fase di compilazione. Di seguito è riportato un elenco di alcune comuni "Eccezioni verificate" che si verificano nel dominio di programmazione:

- Eccezione IO : questo è un esempio di eccezione verificata in cui possono verificarsi alcune eccezioni durante la lettura e la scrittura di un file. Se il formato del file non è supportato, si verificherà l'eccezione IO.

- FileNotFoundException : questo è un esempio di un'eccezione verificata in cui un file in cui è necessario scrivere i dati non si trova in quel particolare percorso sul disco.

- SQLException : questo è anche un esempio di eccezione verificata in cui il file è associato a un database SQL. L'eccezione si verificherà in caso di problemi o problemi con la connettività del database SQL.

Eccezioni di runtime

Le "Eccezioni di runtime" possono essere definite come eccezioni eluse dal programmatore. Passano inosservati al momento della compilazione. Ecco l'elenco di alcuni degli esempi comuni che si sono verificati nel dominio di programmazione:

- ArrayIndexOutOfBoundsException : questa è un'eccezione di runtime; Ciò si verifica quando la dimensione della matrice va oltre gli elementi o il valore dell'indice impostato.

- NullPointer Exception : questo è anche un esempio di un'eccezione di runtime sollevata quando una variabile o un oggetto è vuoto o nullo e utenti o programmatori tentano di accedervi.

- ArithmeticException : questo è un esempio di eccezione di runtime quando un'operazione matematica non è consentita in circostanze normali. Un esempio comune di tale scenario è dividere il numero per 0.

Errori

"Eccezione errore" si verifica esclusivamente a causa dell'utente o del programmatore. Qui potresti riscontrare un errore a causa di overflow dello stack. Ecco l'elenco di alcuni degli esempi comuni che si sono verificati nel dominio di programmazione:

- Errore : questa è una sottoclasse di throwable che indica seri problemi che le applicazioni non possono rilevare.

- Errore interno : questo errore si verifica quando si verifica un errore nella Java Virtual Machine (JVM).

- Errore di istanza : questo errore si verifica quando si tenta di creare un'istanza di un oggetto, senza riuscirci.

Esempio di Eccezione Aritmetica

Scriviamo il seguente file html che attiveremo via browser da client

Enter two Integers for Division

First Integer:
Second Integer:

Scriviamo il seguente file division.jsp da mettere su server. Da notare la prima riga dove si specifica il nome del file da invocare nel caso in cui si verifica una eccezione sulla pagina division.jsp.

Scriviamo il seguente file exception_file.jsp che dovrà essere memorizzato su server per l'attivazione della pagina jsp in caso di errore. Da notare il metodo getMessage dell'oggetto implicito exception.

Metodi dell'oggetto implicito JSP Exception

L'oggetto eccezione è un'istanza di una sottoclasse di Throwable ed è disponibile solo nelle pagine di errore. Di seguito l'elenco dei metodi disponibili nella classe Throwable:

- public String getMessage(): Returns a detailed message about the exception that has occurred. This message is initialized in the Throwable constructor.

- public Throwable getCause(): Returns the cause of the exception as represented by a Throwable object.

- public String toString(): Returns the name of the class concatenated with the result of getMessage().

- public void printStackTrace(): Prints the result of toString() along with the stack trace to System.err, the error output stream.

- public StackTraceElement getStackTrace(): Returns an array containing each element on the stack trace. The element at index 0 represents the top of the call stack, and the last element in the array represents the method at the bottom of the call stack.

- public Throwable fillInStackTrace(): Fills the stack trace of this Throwable object with the current stack trace, adding to any previous information in the stack trace.

JSP offre un'opzione per specificare la pagina di errore per ogni JSP. Ogni volta che la pagina genera un'eccezione, il contenitore JSP richiama automaticamente la pagina di errore.

Di seguito è riportato un esempio per specificare una pagina di errore per un main.jsp. Per impostare una pagina di errore, utilizzare la direttiva .

Error Handling Example

Di seguito il JSP per la gestione degli errori ShowError.jsp. La pagina di gestione degli errori include la direttiva . Questa direttiva fa sì che il compilatore JSP generi la variabile di istanza dell'eccezione.

Error Page

Opps...
Sorry, an error occurred.
Here is the exception stack trace:

Ercole Palmeri
Ercole Palmeri
#JSP #SoftwareDeveloper #softwaredevelopment #SoftwareEngineering #SoftwareTesting
https://bloginnovazione.it/jsp-exception/28775/

Commenti

Post popolari in questo blog

Esercizi Java per corso di formazione Java Base

Forescout si unisce a MISA e annuncia l'integrazione con Microsoft Sentinel per fornire servizi automatizzati di gestione delle minacce informatiche su tutte le infrastrutture aziendali