Odpovidam si sam (po delsim trapeni Google):
viz.:
http://forum.java.sun.com/thread.jspa?forumID=427&threadID=481177
http://forum.java.sun.com/thread.jspa?threadID=510112&messageID=4283555

Pokud jsem to dobre pochopil, tak situace se ma tak, ze pokud jde o chybu uvnitr action metody nejakeho jsf managed beanu, je treba ji resit tam, tj. mit neco jako

public String doMyAction(){
  try{
        // neco provadim
  } catch(MyException ex){
        // zpracovavam ocekavany vyjimecny stav
  } catch(Exception ex){
        return "error";
  }
}

a ve faces-config.xml mit direktivu
<navigation-rule>
  <navigation-case>
    <from-outcome>error</from-outcome>
    <to-view-id>/errorpage.faces</to-view-id>
  </navigation-case>
</navigation-rule>

Pokud ale dojde k vyhozeni exception uvnitr get/set metody, uvnitr konstruktoru, atd., je situace otevrena a vypada to ze tvurci specifikace JSF na to jaksi pozapomneli, ci patricna cast JSF specifikace je silne nejasna a nikdo tomu nerozumi (diskuze vedou vzdy do ztracena, tj. neni nabidnuto zadne rozumne obecne fungujici reseni).

Toz tak. Snad je to nekomu napomocne. Jak to resite vy?

                    Mirek


Mirek Stohr napsal(a):
Vazeni kolegove,

zkusil jsem si na web aplikaci (EJB3, JSF 1.2, glassfish app. server) jak mi beha errorpage, a vysledkem bylo me prekvapeni, ze mi vubec nebeha, resp. dostanu defaultni errorpage generovanou serverem. Pri nastavovani jsem postupoval presne podle http://wiki.apache.org/myfaces/Handling_Server_Errors, tj.

web.xml:
  <error-page>
    <error-code>500</error-code>
    <location>/errorpage.faces</location>
  </error-page>
  <error-page>
    <exception-type>java.lang.Throwable</exception-type>
    <location>/errorpage.faces</location>
  </error-page>

errorpage.faces:

<f:view>
  <f:verbatim><h1>Interní chyba</h1></f:verbatim>
  <f:verbatim>
    V systému aplikace došlo k interní chybě. Prosím, upozorněte
    mě. Děkuji.
  </f:verbatim>
  <f:verbatim><h4>Chybové hlášení</h4></f:verbatim>
  <h:outputText value="#{errorBean.errorMessage}" />
</f:view>

Kde by mohla byt chyba, resp. jak se pro vyse uvedenou spec. lisi nastaveni errorpage pro zobrazovani internich chyb aplikace? Doposud jsem naivne myslel ze nijak. Diky.

            Mirek



Odpovedet emailem