Pagina's aanpassen die worden weergegeven door de fouthandler customizing-pages-shown-by-the-error-handler
AEM wordt geleverd met een standaardfouthandler voor de afhandeling van HTTP-fouten; bijvoorbeeld door het volgende weer te geven:
Door het systeem verschafte scripts bestaan (onder /libs/sling/servlet/errorhandler
) om te reageren op foutcodes, standaard is het volgende beschikbaar bij een standaard CQ-instantie:
- 403.jsp
- 404.jsp
Hoe te om Pagina's aan te passen die door de Handler van de Fout worden getoond how-to-customize-pages-shown-by-the-error-handler
U kunt uw eigen scripts ontwikkelen om de pagina's aan te passen die door de fouthandler worden weergegeven wanneer een fout optreedt. Uw aangepaste pagina's worden gemaakt onder /apps
en bedekken de standaardpagina's (die onder /libs
).
-
Kopieer het standaardscript of de standaardscripts in de gegevensopslagruimte:
- Van
/libs/sling/servlet/errorhandler/
- tot
/apps/sling/servlet/errorhandler/
Aangezien het bestemmingspad niet standaard bestaat, zult u het moeten tot stand brengen wanneer het doen van dit voor het eerst.
- Van
-
Ga naar
/apps/sling/servlet/errorhandler
. Hier kunt u:- bewerk het juiste bestaande script om de vereiste informatie op te geven.
- Maak en bewerk een nieuw script voor de vereiste code.
-
Sla de wijzigingen op en test u deze.
De reactie op HTTP 500-fouten aanpassen customizing-the-response-to-http-errors
HTTP 500-fouten worden veroorzaakt door uitzonderingen aan de serverzijde.
- 500 Interne serverfout
De server heeft een onverwachte voorwaarde aangetroffen waardoor deze de aanvraag niet kan uitvoeren.
Wanneer de verzoekverwerking in een uitzondering resulteert, het kader van Apache Sling (dat AEM wordt voortgebouwd op):
-
meldt de uitzondering
-
retourneert:
- de HTTP-antwoordcode 500
- de spoor van de uitzonderingsstapel
in het lichaam van de reactie.
Door aanpassen van de pagina's die worden weergegeven door de fouthandler a 500.jsp
kan worden gemaakt. Het wordt echter alleen gebruikt als HttpServletResponse.sendError(500)
uitdrukkelijk wordt uitgevoerd; d.w.z. van een uitzonderingscatcher.
Anders is de antwoordcode ingesteld op 500, maar wordt de 500.jsp
script niet uitgevoerd.
Als u 500 fouten wilt afhandelen, moet de bestandsnaam van het script van de fouthandler gelijk zijn aan de uitzonderingsklasse (of superklasse). Om al dergelijke uitzonderingen te behandelen kunt u een manuscript tot stand brengen /apps/sling/servlet/errorhandler/Throwable.js
p of /apps/sling/servlet/errorhandler/Exception.jsp
.