JAVA技(jì)術(shù)
  當前位置:首頁 > 技(jì)術(shù)支持 > JAVA技(jì)術(shù)
java.lang.NoSuchMethodExcept←β↓δion: Bean has no proper∑"≥ty named的(de)解決方法
發布時(shí)間(jiān):2017-06-29 ∏> ±浏覽:2764次
  

使用(yòng)Degister将XML解析為(wèi)Bean時(sh™✘βí),明(míng)明(míng)Bean中的(de)屬性名與XML中÷δ©π的(de)節點名稱一(yī)模一(yī)樣,但(dàn)運行(xíng)時÷≥&(shí),卻提示:

java.lang.NoSuchMethodException: Bean h★π♥as no property named ZoneID......,這(zhè)個(gβ★ ↔è)ZoneID就(jiù)是(shì)XML中的(de)節點,在Bπ>→ean中也(yě)設置屬性名也(yě)為(wèi)此名,并設置好(hǎ$<o)對(duì)應的(de)setter和(hé)getter方法。

原因是(shì)什(shén)麽呢(ne)?

問(wèn)題原因就(jiù)出在這(zhè)個(gè)屬性名上(s±£hàng),根據JAVA編程命名規則,屬性名最好(hǎo)以小(xiǎ♠↕o)寫字母開(kāi)頭,所以commons-beanutils包中關于≠"↕≥将xml與bean的(de)映射關系處理(lǐ)時(shí),™α&♦默認使用(yòng)了(le)這(zhè)個(gè)規則,對(duì)于以λ<×&大(dà)寫開(kāi)頭的(de)屬性名将不(bù)認可(kě)。

隻要(yào)将bean的(de)屬性名以小(xiǎo)寫字母命名即可(kě)≠α"®,同時(shí)設置好(hǎo)digester方法中的(de)≤≥對(duì)應關系,如(rú):

Digester digester = new Digester(ε ₩★);
digester.setValidating(false);

digester.addObjectCrea"★☆te("DataSet/diffgr:diffgram/NewD✘<ataSet/Area", Area.class);

digester.addBeanPropertySette☆δ£r("DataSet/diffgr:diffgram/NewDataSet/A€'₽♠rea/ZoneID", "zoneID");

OK!問(wèn)題解決!

 
 
    
 
 
版權所有(yǒu) © 2005-2024 南昌億雲信息技術有限Ω✘$☆公司 京ICP證000000号  皖公網安備 34019202000659号 ∏
地(dì)址:安徽省合肥市(shì)蜀山(shā™ n)區(qū)望江西(xī)路(lù)69号西(xī)湖(hú)國(guóλ )際廣場(chǎng) 電(diàn)話(huà):0551-64935878 郵箱:admin↑>•♦@ajsoft.cn