Aug 19, 2008

Αντιμετωπίζοντας μηνύματα λαθών HTTP-404 και exceptions σε JSF εφαρμογές

H κατασκευή ενός δημόσιου, δομημένου, φιλικού site δεν είναι είναι εύκολη υπόθεση. Απεναντίας, χρειάζεται μεγάλη φροντίδα τόσo για χαρακτηριστικά ασφάλειας, όσο και για την εν γένει λειτουργικότητα και την ευκολία πρόσβασης στην πληροφορία. Για παράδειγμα, υπάρχουν περιπτώσεις που οι χρήστες μας διατηρούν bookmarks σε κάποιες σελίδες, που πιθανώς μελλοντικά να αλλάξουν. Στην περίπτωση αυτή, αντί να τους παρουσιαστεί ένα ξερό μήνυμα "HTTP 404 - Page not found" μπορούμε να διαμορφώσουμε τη JSF εφαρμογή μας ώστε να αντιμετωπίσει αυτού του είδους τις καταστάσεις, με μια μικρή προσθήκη στο web.xml, όπως:

<error-page>
<error-code>404</error-code>
<location>/faces//pagenotfound.jsp</location>
</error-page>

όπου ορίζουμε την σελίδα που θα διαχειριστεί αυτό το ενδεχόμενο. Κάτι ανάλογο μπορεί να συμβεί και με uncaught exceptions που δεν θα θέλαμε σε καμία περίπτωση να εμφανιστούν στους τελικούς χρήστες. Η μόνη παρέμβαση που κρίνεται απαραίτητη είναι να προσθέσουμε τις ακόλουθες γραμμές στο web.xml, δίχως να χρειάζεται να ορίζουμε errorPage ανά σελίδα.

<error-page>
<error-code>500</error-code>
<location>/faces/pages/common/errorPage.jsp</location>
</error-page>

No comments: