2012-05-26 43 views
1

以下是我的代碼表達錯誤:命名對象:javax.faces.convert.IntegerConverter沒有找到

<rich:select id="cycle_group" value="#{menuCycleBean.menuCycleDetailTO.menuCycleGroupId}" defaultLabel="#{msg['gobal.select.default.label']}" 
       converter="javax.faces.convert.IntegerConverter"> 
       <f:selectItems value="#{menuCycleBean.cycleGroupList}" var="n" itemLabel="#{n.label}" itemValue="#{n.id}" /> 
       </rich:select> 

「menuCycleGroupId」是「整數」的價值和「n.id」是「字符串」值。我需要將String轉換爲Integer。我正在使用以下屬性converter="javax.faces.convert.IntegerConverter",但它給出了錯誤。

Expression Error: Named Object: javax.faces.convert.IntegerConverter not found.

如何使用轉換器<rich:select>

回答

4

converter屬性必須指向具體實例,如#{bean.converter}或包含帶轉換器ID的字符串文字而不是完全限定的轉換器類名稱。如果您點擊標準轉換器的javadoc中的CONVERTER_ID字段常量,那麼您將爲,即javax.faces.IntegerIntegerConverter

所以,這應該這樣做:

<rich:select ... converter="javax.faces.Integer" /> 
+0

它運作良好,當我提交表單,但如果我想選擇下拉值,顯示更新recod形式允許用戶進行編輯,然後豐富:選擇不顯示任何選擇記錄。 –

+0

這是一個需要在新問題中提出的不同問題。對於RichFaces,我也不太瞭解這個問題。 – BalusC

相關問題