2010-06-03 49 views
1

我想知道如何能夠顯示在JSF中更新,刪除,選擇*等過程中生成的SQL錯誤。在JSF中顯示sql異常

任何幫助,將不勝感激。

+0

是否要向Web應用程序的用戶或寫入應用程序的程序員顯示錯誤? – 2010-06-03 06:25:37

+0

對不起,遲到了。我想爲Balusc – user234194 2010-06-09 15:33:51

回答

4

你有三個選擇:

  1. 讓例外泡了(無論是宣佈你的動作方法throws SQLException,或在RuntimeException

  2. catchSQLException包裝它們,並將其添加爲JSF消息,這是更可讀的格式取決於你

    String msg = obtainFormattedMessageFromException(exception); 
    FacesMessage facesMessage = 
        new FacesMessage(FacesMessage.SEVERITY_ERROR, msg, msg); 
    FacesContext.getCurrentInstance().addMessage(null, facesMessage); 
    
  3. 不要顯示它們(最好的選擇)。這些例外會混淆用戶。相反,將它們(使用log4j,commons-logging或其他)記錄到日誌文件中,以後可以讀取它們。僅向用戶顯示出現問題的通用消息。

+0

顯示錯誤選項3仍然需要與用戶溝通出現問題。 – 2010-06-03 06:26:09

+0

是的,當然。我更新了我的答案。 – Bozho 2010-06-03 06:57:44