struts2+spring真讓人糾結……
遇到了Bean property ** is not writable or has an invalid setter method這樣的錯誤 正好找到個類似的解答
用SSH2框架,為某Action注入Bo時出現NotWritablePropertyException異常.當時是用同事已寫好的名字cMsgbo.但啟動tomcat時總拋出NotWritablePropertyException異常.詳細異常信息如下:
Error creating bean with name '/count' defined in ServletContext resource [/WEB-INF/classes/kingtoonApplicationContext.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'cMsgbo' of bean class [com.kingtoon.count.struts.action.CountAction]: Bean property 'cMsgbo' is not writable or has an invalid setter method. Did you mean 'CMsgbo'?
Caused by: org.springframework.beans.NotWritablePropertyException: Invalid property 'cMsgbo' of bean class [com.kingtoon.count.struts.action.CountAction]: Bean property 'cMsgbo' is not writable or has an invalid setter method. Did you mean 'CMsgbo'?
這個錯誤信息最后問我是不是CMsgbo.於是乎我就隨便換成一名字,比如comBo.然后再次啟動Tomcat,服務器順利啟動.
總結:可能Spring會檢查當前所起的名字是不是符合其規范以致可以認出是個什么東西來.如果起的名字不是很明確的話,那spring會給你一個異常,提示你換個名字吧,當前這個名字我認不出來.照她說的做就沒問題了.
轉自 http://hi.baidu.com/kingtoon_go/blog/item/8bdf6b38416f462796ddd878.html
我自己用的時候是在Action中實例化接口的時候拼寫不一致導致的
public class BtnClickAction extends ActionSupport{ IBtnClickSumService btnClickSumService;
之前寫成
IBtnClickSumService btnClickService;
實例名少了幾個字母就不行了,
擦……