0
我正在重新設計一個項目,我遇到了我認爲是一個錯誤,但林混淆了錯誤來自哪裏。將JSF URL參數傳遞給CDI Bean
基本上所有我想要做的是一個URL參數傳遞到後臺bean。沒有什麼魔力,並有許多不同的方式來實現這一點。以下是我經常使用的;
- 我可以改變從@Named豆到@ManagedBean然後使用@ManagedProperty
- 我可以使用
FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap()
訪問帕拉姆,然後從地圖 - 或者,我可以用得到想要的PARAM:
<f:metadata><f:viewParam name="id" value="#{backingBean.id}"/></f:metadata>
當我在Glassfish 3+上使用JSF 2.1時,所有這三種工作都完美無缺。問題是我目前的項目正在使用JSF 2.2和Glassfish 4,而這些工作都不行!無論我做什麼,參數都不會被設置,並且總是以空值結束。
我不知道如何進一步跟蹤下來。最後一個項目的明顯變化是我使用的是Glassfish 4而不是3,JavaEE 7而不是6,JSF 2.2而不是2.1。 我沒有收到任何我可以發佈的錯誤或異常。
還有什麼我可以測試或我可以嘗試的任何替代解決方案。如果沒有人知道任何可能導致此問題的報告錯誤或更改,那麼失敗。最後可以有人重現這個錯誤?