首页 > 代码库 > EXCEPTION-javaBean
EXCEPTION-javaBean
CreateTime--2016年11月24日14:29:43
Author:Marydon
声明:异常类文章主要是记录了我遇到的异常信息及解决方案,解决方案大部分都是百度解决的,(这里只是针对我遇到的做个汇总),特此声明!
Action异常
2016-11-12 15:17:08,931[ERROR][org.apache.struts2.dispatcher.Dispatcher]:Exception occurred during processing request: Unable to instantiate Action, jcxx.web.actions.monitor.MediDepartAction, defined for ‘index‘ in namespace ‘/jcxx/server/monitor/medidepart‘com.sun.proxy.$Proxy22 cannot be cast to jcxx.service.bo.config.feeitem.IBoTDICTCHARGEITEM
spring的XML文件中的BO配置
<!--中心药品诊疗维护--><bean id="boTDICTCHARGEITEM_Jcxx" parent="txTransactionProxyJcxx"> <property name="target"> <bean class="jcxx.service.bo.config.feeitem.impl.BoTDICTCHARGEITEMImpl"> <constructor-arg index="0" ref="daoTDICTCHARGEITEM_Jcxx"/> </bean> </property></bean>
解决方案:
//service层对应的Action引入业务层接口的方法iBoItem = (IBoTDICTCHARGEITEM) BeansHelp.getBeanInstance("boTDICTCHARGEITEM");更改为:iBoItem = (IBoTDICTCHARGEITEM) BeansHelp.getBeanInstance("boTDICTCHARGEITEM_Jcxx");
sqlMap异常
com.ibatis.sqlmap.client.SqlMapException: There is no statement named xnh.config.getTDICTCODE_COUNT_test in this SqlMap.at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.getMappedStatement(SqlMapExecutorDelegate.java:232)at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapExecutorDelegate.java:510)at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForObject(SqlMapExecutorDelegate.java:494)at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForObject(SqlMapSessionImpl.java:106)at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForObject(SqlMapClientImpl.java:82)at xnh.service.dao.config.dict.impl.DaoTDICTCODEImpl.getTDICTCODE_COUNT(DaoTDICTCODEImpl.java:53)at xnh.service.bo.config.dict.impl.BoTDICTCODEImpl.getTDICTCODE_COUNT(BoTDICTCODEImpl.java:58)
原因:
sqlMap是由Dao层实现类调用的sql语句,异常的意思是:在"xnh.config"这个命名空间下没有找到id="getTDICTCODE_COUNT_test"的sql语句
UpdateTime--2017年1月7日17:14:07
spring异常:
nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property ‘boBASE_ORG_INFOImpl‘ of bean class [com.xyhsoft.demo.service.bo.mq.MQReceiver]: Bean property ‘boBASE_ORG_INFOImpl‘ is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
spring对应的配置:
<!-- 组织机构维护 --><bean id="boBASE_ORG_INFOImpl" class="com.xyhsoft.demo.service.bo.organize.impl.BoBASE_ORG_INFOImpl"> <constructor-arg index="0" ref="daoBASE_ORG_INFOImpl" /></bean><bean id="daoBASE_ORG_INFOImpl" class="com.xyhsoft.demo.service.dao.organize.impl.DaoBASE_ORG_INFOImpl"> <property name="sqlMapClient" ref="sqlMapClient" /></bean>
原因:
MQReceiver.java类没有set注入"boBASE_ORG_INFOImpl"
解决方案:
// 组织机构private IBoBASE_ORG_INFO boBASE_ORG_INFOImpl;/*** @param boBASE_ORG_INFOImpl*/public void setBoBASE_ORG_INFOImpl(IBoBASE_ORG_INFO boBASE_ORG_INFOImpl) { this.boBASE_ORG_INFOImpl = boBASE_ORG_INFOImpl;}
异常四(Dao层实现类出异常)
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘userDao‘ defined in class path resource [com/config/userConfig.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property ‘sqlMapClient‘ of bean class [com.service.user.dao.impl.DaoUser]: Bean property ‘sqlMapClient‘ is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
解决方案:
dao实现类没有继承extends SqlMapClientDaoSupport
异常五(Bo层实现类出异常)
org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘userBiz‘ defined in class path resource [com/config/userConfig.xml]: Error setting property values; nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property ‘userDao‘ of bean class [com.service.user.bo.impl.BoUser]: Bean property ‘userDao‘ is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter?
解决方案:
spring的配置文件中,name值与要调用该对象声明的属性名保持一致
<!-- 配置Bo,调Dao --><bean id="userBo" class="com.service.user.bo.impl.BoUser"><!-- 此处的name值,必须与业务层实现类声明的Dao层的属性名相同 --> <property name="daoUser" ref="userDao"/></bean>
Bo层
//调用dao层用户类,spring托管实例化private IDaoUser daoUser;public void setDaoUser(IDaoUser daoUserImpl) { this.daoUser = daoUserImpl;}
异常六(set注入异常)
Caused by: org.springframework.beans.ConversionNotSupportedException: Failed to convert property value of type [com.sun.proxy.$Proxy9 implementing com.xyhsoft.demo.service.bo.dictionary.IBoBASE_DICTIONARY,org.springframework.aop.SpringProxy,org.springframework.aop.framework.Advised] to required type [com.xyhsoft.demo.service.bo.organize.IBoBASE_ORG_INFO] for property ‘boBASE_DICTIONARYImpl‘; nested exception is java.lang.IllegalStateException: Cannot convert value of type [com.sun.proxy.$Proxy9 implementing com.xyhsoft.demo.service.bo.dictionary.IBoBASE_DICTIONARY,org.springframework.aop.SpringProxy,org.springframework.aop.framework.Advised] to required type [com.xyhsoft.demo.service.bo.organize.IBoBASE_ORG_INFO] for property ‘boBASE_DICTIONARYImpl‘: no matching editors or conversion strategy found
原因:
// 组织机构private IBoBASE_ORG_INFO boBASE_ORG_INFOImpl;// 字典管理private IBoBASE_ORG_INFO boBASE_DICTIONARYImpl;public void setBoBASE_DICTIONARYImpl(IBoBASE_ORG_INFO boBASE_DICTIONARYImpl) { this.boBASE_DICTIONARYImpl = boBASE_DICTIONARYImpl;}public void setBoBASE_ORG_INFOImpl(IBoBASE_ORG_INFO boBASE_ORG_INFOImpl) { this.boBASE_ORG_INFOImpl = boBASE_ORG_INFOImpl;}
声明重复:同一个变量类型:IBoBASE_ORG_INFO ,不同的变量名和set方法
EXCEPTION-javaBean
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。