title: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'
body: <p>I have many DAO that defined like this: </p>
  
  <blockquote>
    <p>IxxxDAO</p>
  </blockquote>
  
  <p>I am using <strong>MyBatis</strong> and here is my configuration:</p>
  
  <pre><code>@Configuration
  @MapperScan(basePackages = {
          "com.dounets.app.adm.**.dao",
          "com.dounets.app.pi.bil.**.dao",
          "com.dounets.app.pi.common.**.dao",
          "com.dounets.app.pi.dd.**.dao",
          "com.dounets.app.pi.dm.**.dao",
          "com.dounets.app.pi.dmv2.**.dao",
          "com.dounets.app.pi.pim.**.dao",
          "com.dounets.app.pi.report.**.dao",
          "com.dounets.app.pi.tat.**.dao",
          "com.dounets.app.pi.ui.**.dao",
          "com.dounets.app.process.dao",
  })
  public class MyBatisConfiguration {
      @Bean
      public SqlSessionFactory sqlSessionFactory(DataSource dataSource, ApplicationContext applicationContext) throws Exception {
          SqlSessionFactoryBean sessionFactoryBean = new SqlSessionFactoryBean();
          sessionFactoryBean.setDataSource(dataSource);
          sessionFactoryBean.setMapperLocations(applicationContext.getResources("classpath:mapper/*.xml"));
          return sessionFactoryBean.getObject();
      }
  }
  </code></pre>
  
  <p>If I comment out some packages, It worked fine. But If I scan all packages, It throws exception:</p>
  
  <pre><code>Unsatisfied dependency expressed through bean property 'sqlSessionFactory'
  </code></pre>
  
  <p>Full error:</p>
  
  <pre><code>Unsatisfied dependency expressed through bean property 'sqlSessionFactory': :
   Error creating bean with name 'IAdmCmtUsrLikeDAO' defined in file [IAdmCmtUsrLikeDAO.class]:
  </code></pre>
  
  <p>I tried to scan each package, And all of packages are fine.</p>
  
  <p>Let see my sample IxxxDAO:</p>
  
  <pre><code>public interface IAdmCmtUsrLikeDAO extends IApplicationDAO {
  
      int delete(AdmCmtUsrLikeVOKey data) throws SQLException;
  
      int insert(AdmCmtUsrLikeVO data) throws SQLException;
  
      List&lt;AdmCmtUsrLikeVO&gt; select() throws SQLException;
  
      AdmCmtUsrLikeVO select(AdmCmtUsrLikeVOKey data) throws SQLException;
  
      int update(AdmCmtUsrLikeVO data) throws SQLException;
  
      int update(HashMap&lt;String, Object&gt; data) throws SQLException;
  }
  </code></pre>