我是JSF的新手,並且遇到問題。我希望有人能幫助我。如何從不是JSF Bean的類創建FacesMessage?
問題:
- 處理程序不是一個bean從TCP/IP管檢測到的消息。
- 處理程序需要創建一個新的
FacesMessage
以在消息框中顯示消息。 - 由於處理程序不是一個bean,
FacesContext
返回null
,因此處理程序不能寫入FacesMessage
。
問題:
- 是它在某種程度上可以做什麼,我試圖做的?
- 將外部消息從不是bean的Java類傳播到
FacesMessage
以便它顯示在UI上的最佳方式是什麼?
有關如何解決此問題的任何想法?
是的......我想使用一個Singleton bean,然後對該Bean進行JNDI查找並調用addMessage,後者又使用FacesContext,但該Bean也爲FacesContext返回null? – jrobertsz66
單身bean與JSF輔助bean不同。雖然他們都稱爲豆類,但它們並不完全相同。 EJB/JEE層與JSF的視圖層是分開的。你最終要做的是將你的singleton注入到一個後臺bean中(你可以使用描述符Rachel來描述設置後臺bean,或者你可以使用註釋來設置它) – hsanders
好吧,我不認爲這是去工作,這是爲什麼:1 - 我的處理程序代碼是檢測事件,它不是一個bean。2 - 我的處理程序代碼是需要以某種方式將消息傳播到UI的程序代碼。 3 - 我的處理程序代碼當時沒有訪問bean的權限。所以,在這種情況下沒有bean注入到另一個bean中,因爲沒有處理請求。上面第1步中的處理程序代碼只是一個檢測和事件的線程。 – jrobertsz66