Posted on 2009-02-01 10:57
董銳 閱讀(222)
評(píng)論(0) 編輯 收藏
22 |
<component id="aPersonSelect" type="PropertySelection"> |
23 |
<binding name="model" value="ognl:personSelectModel"/> |
24 |
<binding name="value" value="ognl:components.table.tableRow.aPerson"/> |
25 |
</component> |
ognl:OgnlException:source is null for getProperty(null, "aPerson")
錯(cuò)誤描述:這是一個(gè)component中一個(gè)表A,還有一個(gè)表B,最初是表A顯示,表B隱藏,顯示沒有問題,然后點(diǎn)擊component中一個(gè)按鈕,隱藏表A,顯示表B,就出現(xiàn)這樣的錯(cuò)誤。
判斷1:以為表A的數(shù)據(jù)源沒有在Session保存,導(dǎo)致點(diǎn)擊按鈕重新裝載頁面時(shí)數(shù)據(jù)源為空,所以出現(xiàn)此錯(cuò)誤,就將數(shù)據(jù)源改為session狀態(tài),還是有此錯(cuò)誤
判斷2:表A和表B是共用同一數(shù)據(jù)源,只是Column值有變化,修改為只用一個(gè)表,點(diǎn)擊按鈕時(shí)setColumn賦不同值,測(cè)試發(fā)現(xiàn)點(diǎn)擊后表格內(nèi)容沒有變化,賦Column值失敗
判斷3:還是表A和表B,此次表A和表B使用不同數(shù)據(jù)源變量,點(diǎn)擊按鈕時(shí)表A數(shù)據(jù)表中內(nèi)容選取部分賦給表B數(shù)據(jù)源,點(diǎn)擊按鈕,依然出現(xiàn)上述錯(cuò)誤。
錯(cuò)誤未解決:
待續(xù)。。。
-------------------------------------------
判斷4:<td jwcid="aPersonColumnValue@Block"><span jwcid="aPersonSelect" /></td>
在.html文件中屏蔽此句,沒有錯(cuò)誤。
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
終于找到錯(cuò)誤原因了:
原來表A和表B的列名相同,都用了aPerson,所以當(dāng)顯示表B時(shí),為表A所用的<td jwcid="
aPersonColumnValue@Block"><span jwcid="aPersonSelect" /></td>也為表B所用了,而表B的aPerson用的是:aPerson:aPerson.name,所以每次獲取aPerson值都為空,修改表B的column為aPerson1:aPerson.name即成功!!
找了這么久,原來是這個(gè)錯(cuò)誤,汗!!!!