2014-09-06 13 views
0

Я пытаюсь интегрировать весну с mybatis.I сделал все конфигурации. У меня есть следующие варианты: Spring: 3.0.6 Mybatis: 3.0.6 mybatis-весна: 1.0.2Проблема с интеграцией mybatis-spring

Когда я использую выше комбинации банок, при запуске кота, он бросает исключение, SqlSessionFactoryBean ClassNotFound и когда я действительно проверяю майбатис-весна-1.0.2, SqlSessionFactoryBean на самом деле не существует.

Затем я перешел на mybatis-весна-1.2.0 Теперь при использовании этого банки, при запуске сервера, я получаю следующее сообщение об ошибке:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in ServletContext resource [/WEB-INF/applicationContext.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.mybatis.spring.SqlSessionFactoryBean]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: org/apache/ibatis/mapping/VendorDatabaseIdProvider 

конфигурации, используемых являются:

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> 
    <!-- org.springframework.jdbc.datasource.DriverManagerDataSource" --> 
     <property name="driverClassName" value="oracle.jdbc.driver.OracleDriver"/> 
     <property name="url" value="jdbc:oracle:thin:@10.10.10.10:1521:xe"/> 
     <property name="username" value="uname"/> 
     <property name="password" value="pwd"/> 
    </bean> 

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> 
     <property name="dataSource" ref="dataSource" /> 
     <property name="configLocation" value="/WEB-INF/mybatis-config.xml"/> 
    </bean> 

<bean id="transactionDao" class="com.abc.daoImpl.TransactionDaoImpl"> 
     <property name="sqlSessionFactory" ref="sqlSessionFactory" /> 
    </bean> 

Не могли бы вы сообщить мне, что это за проблема. Спасибо заранее.

+0

в основном я борюсь с получением правильного сочетания баночек для весны + ibatis configuration.Can кто-нибудь, кто уже работал на весну + мой Интеграция batis может сообщить мне, какие версии являются совместимыми друг с другом. Latest Я попробовал mybatis-3.0.4 и mybatis-spring-1.0.0 и spring-3.0.5, но я получаю следующий exceptionorg.apache.ibatis.builder. xml.XMLConfigBuilder. (Ljava/IO/InputStream; Ljava/языки/String; Ljava/Util/Свойства;) V \t в org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean (AbstractAutowireCapableBeanFactory.java:1420) – user2603985

+0

я изменил к следующему jars: Spring: 3.0.6, mybatis-3.0.6, mybatis-spring-1.0.0 и выше исключения ушли, но теперь я получаю следующее исключение: Ошибка создания компонента с именем «sqlSessionFactory», определенным в ресурсе ServletContext [/ WEB -INF/applicationContext.xml]: вызов метода init не выполнен; Вложенное исключение - org.apache.ibatis.builder.BuilderException: ошибка при создании экземпляра документа. Причина: java.net.ConnectException: время ожидания подключения: connect – user2603985

+0

таймаут соединения, как правило, означает, что ошибка подключения к базе данных? –

ответ

0

Этот сорт принадлежит Ibatis и не MyBatis. Убедитесь, что у вас есть Ibatis как прямая зависимость, так и транзитивная зависимость.

0

Я поставил это так:

<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> 
    <property name="dataSource" ref="dataSource" /> 
</bean> 


<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> 
    <property name="dataSource" ref="dataSource" /> 
    <property name="typeAliasesPackage" value="mx.com.dctechnology.model"/> 
    <property name="mapperLocations" value="classpath*:mx/com/dctechnology/dao/maps/*.xml" /> 
</bean> 


<bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate"> 
    <constructor-arg index="0" ref="sqlSessionFactory" /> 
</bean> 

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> 
    <property name="basePackage" value="mx.com.dctechnology.dao" /> 
</bean> 

Используется в pom.xml:

<mybatis.version>3.4.1</mybatis.version> 
<mybatis-spring.version>1.3.0</mybatis-spring.version> 


<dependency> 
    <groupId>org.mybatis</groupId> 
    <artifactId>mybatis</artifactId> 
    <version>${mybatis.version}</version> 
</dependency> 
<dependency> 
    <groupId>org.mybatis</groupId> 
    <artifactId>mybatis-spring</artifactId> 
    <version>${mybatis-spring.version}</version> 
</dependency> 
Смежные вопросы