我们长期使用带有mybatis弹簧的mybatis,我们的应用程序遇到了间歇性问题:
org.apache.ibatis.executor.ExecutorException: Cannot get Configuration as configuration factory was not set.
at org.apache.ibatis.executor.loader.ResultLoaderMap$LoadPair.getConfiguration(ResultLoaderMap.java:220)
at org.apache.ibatis.executor.loader.ResultLoaderMap$LoadPair.load(ResultLoaderMap.java:191)
at org.apache.ibatis.executor.loader.AbstractEnhancedDeserializationProxy.invoke(AbstractEnhancedDeserializationProxy.java:78)
at org.apache.ibatis.executor.loader.cglib.CglibProxyFactory$EnhancedDeserializationProxyImpl.intercept(CglibProxyFactory.java:184)
奇怪的是,我的应用程序,即REST服务,很长一段时间都被很多消费者使用,而且直到最近,在不改变代码库中的任何内容的情况下,才会出现这个问题。当我的REST服务从连续数千次调用它的spring-batch应用程序调用时,就会发生这种情况。直接呼叫相同的服务有效。间歇性地出现错误(并不总是相同的URL)。
MyBatis版本为3.2.8,mybatis-spring为1.0。我尝试使用更新的版本(MyBatis 3.4.1和mybatis-spring 1.2.3),但发生了同样的错误。
由于特定的种族状况或其他原因,应该会出现一些奇怪的问题......有人已经有同样的问题吗?它不是配置问题,因为应用程序工作正常并且只是间歇性地失败。
此致
卢瓦克