项目中报如下的错误,当时依照错误提示很是不解:
Caused by: org.springframework.beans.factory.BeanCreationException:
Could not autowire field: private com.huawei.support.dao.DaoManager com.huawei.support.attachment.dao.AttachmentDAO.mDaoManager;
nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'daoManager':
Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.
BeanCreationException: Could not autowire method:
public void com.huawei.support.dao.DaoManager.setSqlMap(com.ibatis.sqlmap.client.SqlMapClient);
nested exception is org.springframework.beans.factory.
BeanCreationException: Error creating bean with name 'sqlMapClient' defined in class
path resource [applicationContext.xml]: Invocation of init method failed; nested exception is
org.springframework.core.NestedIOException: Failed to parse config resource: class path resource
[sql-map-config.xml]; nested exception is com.ibatis.common.xml.NodeletException: Error parsing XML.
Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'.
Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.
Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.
Cause: com.ibatis.sqlmap.client.SqlMapException: Error. Could not initialize class. Cause: java.lang.ClassNotFoundException: ILoginLogDTO at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:507)
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:84)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:283)
... 37 more
(1) 如上的错误提示,没有发现该类。但是日志中所提到的类存在的。如是就想是不是我创建一个DTO的javabean 时需某一配置文件中配置,让其注册。但是找项目的配置文件时查找类似其它DTO类时没有发现什么配置。
(2) 后来进一步的查找如下的错误提示引起了注意:
Cause: com.ibatis.sqlmap.client.SqlMapException: Error.
Could not initialize class.
Cause: java.lang.ClassNotFoundException: ILoginLogDTO
此时怀疑是不是在Ibatis的配置文件中新加的SQL引进了错误。如是删掉了刚刚添加的SQL发现,Webservice启动正常。如是定位出使新加的SQL引进的问题的。新加的SQL如下所示:
<!-- 向 登录日志表SUP_USER_LOGIN_LOG中插入数据 -->
<!--Update by R09559 for version on date begin -->
<insert id="insertLoginInfo" parameterClass="ILoginLogDTO">
<![CDATA[
INSERT INTO SUP_USER_LOGIN_LOG
(USERID,
LOGINTIME,
ACCOUNT_TYPE,
LOGIN_IP
)
VALUES
(#USERID#,
to_date(#LOGINTIME#,'yyyy-MM-dd'),
#ACCOUNT_TYPE#,
#LOGIN_IP#
)
]]>
</insert>
<!--Update by R09559 for version date end -->
(3)最后经过分析发现 parameterClass="ILoginLogDTO" 在配置文件中并没有这样的一个别名,它是对应到一个类的。由于没有配置导致Server在解析配置文件时无法识别该类,而导致Cause: java.lang.ClassNotFoundException: ILoginLogDTO
(4)最终的修改意见是
分享到:
相关推荐
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="configLocation"> <value>classpath:SqlMapConfig.xml </bean> <bean id="dao" class="org....
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="configLocation"> <value>classpath:...
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean" p:dataSource-ref="dataSourceProxy"> <property name="configLocation"> <value>classpath:SqlMapConfig.xml...
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="configLocation" value="classpath:sqlmap-config.xml"/> <property name="dataSource" ref=...
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="configLocation"> <value>classpath:ibatis-Base.xml <property name="dataSource"> <ref ...
throw new RuntimeException("Error initializing SqlMapConfig class. Cause: " + e); } ``` 在iBatis中,插入新记录后获取自增长ID值是非常常见的需求。`SqlMapClient`提供了一种方式,通过`<selectKey>`标签来...
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="configLocation" value="WEB-INF/sql-map-config.xml"/> <property name="dataSource" ref=...
通过调用`SqlMapClient.startTransaction()`开启事务,`SqlMapClient.commitTransaction()`提交事务,或者`SqlMapClient.rollbackTransaction()`回滚事务。 6. **异常处理**: 在初始化SqlMapClient或执行数据库...
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="configLocation" value="classpath:sqlMapConfig....
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="configLocation" value="classpath:sqlmap-config.xml" /> <property name="dataSource" ref=...
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="configLocation" value="classpath:com/bitfone/smartdm/dao/sqlmap/sql-map-config.xml"/> ...
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="configLocation" value="classpath:env/ibatis....
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean" scope="singleton"> <property name="configLocation"> <value>classpath:SqlMapConfig.xml <property name=...
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="mapperLocations" value="classpath*:Student.xml...
<property name="driverClass" value="${jdbc.driverClass}" /> <property name="jdbcUrl" value="${jdbc.url}" /> <property name="user" value="${jdbc.user}" /> <property name="password" value="${jdbc....
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"> <!-- 通过文件路径指定iBatis配置文件 --> <property name="configLocation"> <value>/WEB-INF/SqlMapConfig.xml ...
<property name="sqlMapClient" ref="sqlMapClient"/> </bean> ``` 4. **编写SQL Map配置**:在`sqlMapConfig.xml`中,定义Mapper的XML文件和对应的SQL语句。 5. **使用Mapper**:最后,在你的服务类中注入...
<bean id="sqlMapClient" class="com.citipf.liyunpeng.dao.iBatis.SqlSessionFactoryBean"> <!-- 配置细节 --> </bean> ``` 在这个配置中,使用 PropertyPlaceholderConfigurer 来读取 mainConfig.properties ...
<forward name="error" path="/jsp/error.jsp"/> ``` 这里,"/login"是请求路径,`com.example.LoginAction`是处理该请求的Action类,"loginForm"是ActionForm的名称,"success"和"error"是两种可能的转发结果。 ...
<bean id="sqlMapClient" class="org.mybatis.spring.SqlMapClientFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="configLocation" value="classpath:SqlMapConfig.xml"/> </...