0
При попытке запуска падает с ошибкой:я не могу запустить весной и приложение MyBatis
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [application- context.xml]: Error setting property values; nested exception is org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:
PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'dataSource' threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/jdbc/datasource/TransactionAwareDataSourceProxy
application-context.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath:db.properties</value>
</list>
</property>
</bean>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${db.driver}"/>
<property name="url" value="${db.url}"/>
<property name="username" value="${db.user}"/>
<property name="password" value="${db.password}"/>
</bean>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="typeAliasesPackage" value="com.rest.service.entity" />
</bean>
<bean id="userMapper" class="org.mybatis.spring.mapper.MapperFactoryBean">
<property name="mapperInterface" value="com.rest.service.mapping.UserMapper" />
<property name="sqlSessionFactory" ref="sqlSessionFactory" />
</bean>
Я не понимаю, что это неправильно, выполните следующие инструкции: http://www.mybatis.org/spring/getting-started.html
Инициализируется контекст:общественного класса ApplicationInitializer реализует WebApplicationInitializer {
private static final String DISPATCHER = "dispatcher";
public void onStartup(ServletContext servletContext) throws ServletException {
XmlWebApplicationContext appContext = new XmlWebApplicationContext();
appContext.setConfigLocation("classpath:application-context.xml");
ServletRegistration.Dynamic dispatcher =
servletContext.addServlet(DISPATCHER, new DispatcherServlet(appContext));
dispatcher.addMapping("/");
dispatcher.setLoadOnStartup(1);
}
}
С чем может быть связана проблема?
Зависимость кажется не хватает. Можете ли вы, как ваш pom.xml? – davidxxx
Скорее всего, отсутствующая зависимость, у вас есть jjbc dependency jar? –
Да, у меня отсутствует зависимость spring-jdbc –