0
を開くことができません。ApplicationContextの中は、Springテスト(スポック)で動作する、ネストされたMyBatisの-config.xmlには、私はこのようなファイル構造を構成してい
Project/
war/
WEB-INF/
applicationContext.xml
mybatis-config.xml
(both two xml files are under same directory:WEB-INF)
MyBatisの設定ファイル。このようなXML:設定上
<!-- SqlSessionFactory -->
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="typeAliasesPackage" value="com.domain.model" />
<property name="configLocation" value="WEB-INF/mybatis-config.xml" />
</bean>
は、Webアプリケーションで動作し、私はこのようなスポックユニットテストを持っている:
@ContextConfiguration(locations = "file:war/WEB-INF/applicationContext.xml")
public class SeniorPerWorkerMsgPusherTest extends Specification {
@Autowired
MyBatisMapper mapper
.....
}
それを実行すると
、ブロー誤差はプリントアウトしてしまった:
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in URL [file:war/WEB-INF/applicationContext.xml]: Invocation of init method failed; nested exception is java.io.FileNotFoundException: class path resource [WEB-INF/mybatis-config.xml] cannot be opened because it does not exist
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1578)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:351)
... 124 more
Caused by: java.io.FileNotFoundException: class path resource [WEB-INF/mybatis-config.xml] cannot be opened because it does not exist
at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:172)
at org.mybatis.spring.SqlSessionFactoryBean.buildSqlSessionFactory(SqlSessionFactoryBean.java:407)
at org.mybatis.spring.SqlSessionFactoryBean.afterPropertiesSet(SqlSessionFactoryBean.java:381)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1637)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1574)
... 131 more
質問は次のとおりです。 なぜ同じApplicationContextのWebアプリケーションとの仕事ではなく、春のテスト(スポック)で動作しますか?
あなたのテストクラスは '@WebAppConfiguration(「戦争」)'と注釈を付けた場合はどうなりますか? –