Pagina's aanpassen die worden weergegeven door de fouthandler

AEM wordt geleverd met een standaardfouthandler voor de afhandeling van HTTP-fouten; bijvoorbeeld door het volgende weer te geven:

chlimage_1-67

Door het systeem verschafte scripts bestaan (onder /libs/sling/servlet/errorhandler) om te reageren op foutcodes. Standaard zijn de volgende scripts beschikbaar met een standaard CQ-instantie:

  • 403.jsp
  • 404.jsp
OPMERKING

AEM is gebaseerd op Apache Sling, zo zie https://sling.apache.org/site/errorhandling.html voor gedetailleerde informatie over de Behandeling van de Fout van de Verkoop.

OPMERKING

Voor een auteurinstantie, CQ WCM zuivert Filter wordt toegelaten door gebrek. Dit resulteert altijd in reactiecode 200. De standaardfoutenmanager antwoordt door het volledige stapelspoor aan de reactie te schrijven.

Voor een publicatie-instantie is CQ WCM Debug Filter always uitgeschakeld (zelfs als dit is geconfigureerd als ingeschakeld).

Hoe te om Pagina's aan te passen die door de Handler van de Fout worden getoond

U kunt uw eigen scripts ontwikkelen om de pagina's aan te passen die door de fouthandler worden weergegeven wanneer een fout optreedt. De aangepaste pagina's worden gemaakt onder /apps en bedekken de standaardpagina's (die onder /libs liggen).

OPMERKING

Zie Bedekkingen gebruiken voor meer informatie.

  1. 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.

  2. 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.
  3. Sla de wijzigingen op en test u deze.

LET OP

De handlers 404.jsp en 403.jsp zijn specifiek ontworpen om voor authentificatie CQ5 te behandelen; met name om systeemaanmelding mogelijk te maken in het geval van deze fouten.

Daarom moeten deze twee handlers met grote zorg worden vervangen.

De reactie op HTTP 500-fouten aanpassen

HTTP 500-fouten worden veroorzaakt door uitzonderingen aan de serverzijde.

  • 500 Interne
    serverfoutDe server heeft een onverwachte voorwaarde aangetroffen waardoor deze de aanvraag niet kon 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 het aanpassen van de pagina's die door foutenmanager worden getoond kan een 500.jsp manuscript worden gecreeerd. Deze wordt echter alleen gebruikt als HttpServletResponse.sendError(500) expliciet wordt uitgevoerd; d.w.z. van een uitzonderingscatcher.

Anders is de antwoordcode ingesteld op 500, maar wordt het script 500.jsp 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 /apps/sling/servlet/errorhandler/Throwable.jsp of /apps/sling/servlet/errorhandler/Exception.jsp tot stand brengen.

LET OP

Voor een auteurinstantie, CQ WCM zuivert Filter wordt toegelaten door gebrek. Dit resulteert altijd in reactiecode 200. De standaardfoutenmanager antwoordt door het volledige stapelspoor aan de reactie te schrijven.

Voor een douane fout-manager, zijn de reacties met code 500 nodig - zodat moet CQ WCM zuivert Filter worden onbruikbaar gemaakt. Dit zorgt ervoor dat reactiecode 500 is teruggekeerd, die beurtelings de correcte fout-manager van het Sling teweegbrengt.

Voor een publicatie-instantie is CQ WCM Debug Filter always uitgeschakeld (zelfs als dit is geconfigureerd als ingeschakeld).

Op deze pagina