今天又碰到一個Seam的錯誤,感覺使用Seam開發的過程就是在不停的找Bug。
錯誤如下:
在使用rich:inplaceSelect做一個布爾型的選擇框時,由于客戶需要,在特定情況下需要一個默認值,也就是rich:inplaceSelect的defaultLabel,這時就需要除了true和false外再有一個null的值,所以需要將后臺session bean中的對應屬性由原始類型boolean改為Boolean,在改完之后,重新運行程序報錯:
Property ‘xxx’ not readable on type java.lang.Boolean
分析了一下,找不出什么可能的原因,最后在一片帖子中發現了對應的信息:
原來JSF將原始類型boolean的get方法默認為is....(),而將封裝類型Boolean的get方法默認為get...().
Ok,在后臺將對應那個的方法修改,問題解決。