Personalizzazione delle pagine mostrate dal gestore errori customizing-pages-shown-by-the-error-handler

CAUTION
AEM 6.4 ha raggiunto la fine del supporto esteso e questa documentazione non viene più aggiornata. Per maggiori dettagli, consulta la nostra periodi di assistenza tecnica. Trova le versioni supportate qui.

AEM viene fornito con un gestore di errori standard per la gestione degli errori HTTP; ad esempio, mostrando:

chlimage_1-67

Sono presenti script forniti dal sistema (in /libs/sling/servlet/errorhandler) per rispondere ai codici di errore, per impostazione predefinita sono disponibili le seguenti opzioni con un’istanza CQ standard:

  • 403.jsp
  • 404.jsp
NOTE
AEM è basato su Apache Sling, quindi vedi https://sling.apache.org/site/errorhandling.html per informazioni dettagliate sulla gestione degli errori Sling.
NOTE
Su un'istanza dell'autore, Filtro di debug CQ WCM è attivato per impostazione predefinita. Questo si traduce sempre nel codice di risposta 200. Il gestore di errori predefinito risponde scrivendo la traccia completa dello stack nella risposta.
In un'istanza di pubblicazione, il filtro di debug CQ WCM è sempre disabilitato (anche se configurato come abilitato).

Come personalizzare le pagine visualizzate dal gestore errori how-to-customize-pages-shown-by-the-error-handler

È possibile sviluppare script personalizzati per personalizzare le pagine mostrate dal gestore di errori quando si verifica un errore. Le pagine personalizzate verranno create in /apps e sovrapponi le pagine predefinite (che sono sotto /libs).

NOTE
Vedi Utilizzo delle sovrapposizioni per ulteriori dettagli.
  1. Nell’archivio, copia gli script predefiniti:

    • da /libs/sling/servlet/errorhandler/
    • a /apps/sling/servlet/errorhandler/

    Poiché il percorso di destinazione non esiste per impostazione predefinita, sarà necessario crearlo durante questa operazione per la prima volta.

  2. Accedi a /apps/sling/servlet/errorhandler. Qui puoi effettuare le seguenti operazioni:

    • modificare lo script esistente appropriato per fornire le informazioni richieste.
    • crea e modifica un nuovo script per il codice richiesto.
  3. Salva le modifiche e verifica.

CAUTION
I gestori 404.jsp e 403.jsp sono stati progettati specificamente per garantire l'autenticazione CQ5; in particolare, per consentire l'accesso al sistema in caso di questi errori.
Pertanto, la sostituzione di questi due gestori dovrebbe essere fatta con grande cura.

Personalizzazione della risposta agli errori HTTP 500 customizing-the-response-to-http-errors

Gli errori HTTP 500 sono causati da eccezioni lato server.

Quando l’elaborazione della richiesta genera un’eccezione, il framework Sling Apache (AEM basato su):

  • registra l'eccezione

  • restituisce:

    • il codice di risposta HTTP 500
    • traccia dello stack di eccezioni

    nel corpo della risposta.

Da personalizzazione delle pagine mostrate dal gestore di errori a 500.jsp è possibile creare uno script. Tuttavia, viene utilizzato solo se HttpServletResponse.sendError(500) è eseguito esplicitamente; ovvero da un catcher di eccezione.

In caso contrario, il codice di risposta è impostato su 500, ma il 500.jsp script non eseguito.

Per gestire 500 errori, il nome file dello script del gestore di errori deve essere lo stesso della classe di eccezione (o superclasse). Per gestire tutte queste eccezioni è possibile creare uno script /apps/sling/servlet/errorhandler/Throwable.jsp o /apps/sling/servlet/errorhandler/Exception.jsp.

CAUTION
Su un'istanza dell'autore, Filtro di debug CQ WCM è attivato per impostazione predefinita. Questo si traduce sempre nel codice di risposta 200. Il gestore di errori predefinito risponde scrivendo la traccia completa dello stack nella risposta.
Per un gestore di errori personalizzato, sono necessarie le risposte con codice 500, quindi è necessario CQ WCM Debug Filter deve essere disabilitato. In questo modo viene restituito il codice di risposta 500, che a sua volta attiva il gestore di errori Sling corretto.
In un'istanza di pubblicazione, il filtro di debug CQ WCM è sempre disabilitato (anche se configurato come abilitato).
recommendation-more-help
2315f3f5-cb4a-4530-9999-30c8319c520e