Jak wysłać osobę na stronę 404, jeśli f: viewParam / converter zwraca wartość null?

Powiedzmy, że masz stronę z param, jak/widgets?widgetId=1

    <f:metadata>
        <f:viewParam
            name="widgetId"
            value="#{widgetIdMB.widgetId}"
            converter="#{widgetIDConverter}" />
    </f:metadata>

Więc, powiedzmy, że twój konwerter wyrzucaConverterException, ponieważ ktoś próbował przejść do/widgets?widgetId=1000000, który nie istnieje w bazie danych. Czy istnieje sposób na wysłanie osoby na stronę 404, kiedy to nastąpi?

EDYTOWAĆ:

Użyłem konwertera do konwersji wartości. Jeśli wartości nie można wyszukać w bazie danych, konwerter zwraca wartość null, zamiast rzucać wyjątek ConverterException.

Następnie używam walidatora. Walidator rzuci wyjątek sprawdzania poprawności, ale nie po wywołaniu klasy narzędzi omnifaces:Faces.responseSendError(404, "Not Found");

Wydaje się, że jest to najlepsza realizacja rozdziału obaw.

questionAnswers(1)

yourAnswerToTheQuestion