我正在开发基于Mybatis 3.0.5,Mybatis-spring 1.0.1和Spring 3.0.5.RELEASE的Java EE应用程序,我发现在mybatis-config.xml中使用Alias存在问题。跟踪是:
org.springframework.beans.factory.BeanCreationException:
在ServletContext资源[/WEB-INF/applicationContext.xml]中定义名称为“sqlSessionFactory”的bean创建时出错:
调用init方法失败;嵌套异常是org.springframework.core.NestedIOException:
无法解析配置资源:类路径资源[mybatis-config.xml];嵌套异常是org.apache.ibatis.builder.BuilderException:
解析SQL Mapper配置时出错。原因:org.apache.ibatis.builder.BuilderException:
为“accesoUsuario”注册typeAlias时出错。原因:java.lang.ClassNotFoundException:
找不到课程:[包括我在内] .AccesoUsuario
如何解决此问题?
这是我的mybatis-config.xml( MYPACKAGE = es.my.package )。
<settings>
<setting name="lazyLoadingEnabled" value="false" />
</settings>
<typeAliases>
<typeAlias alias="accesoUsuario" type="MYPACKAGE.persistencia.entidades.AccesoUsuario" />
<typeAlias alias="agrupacion" type="MYPACKAGE.persistencia.entidades.Agrupacion" />
<typeAlias alias="consulta" type="MYPACKAGE.persistencia.entidades.Consulta" />
<typeAlias alias="consultaDim" type="MYPACKAGE.persistencia.entidades.ConsultaDim" />
<typeAlias alias="consultaFiltro" type="MYPACKAGE.persistencia.entidades.ConsultaFiltro" />
<typeAlias alias="dato" type="MYPACKAGE.persistencia.entidades.Dato" />
<typeAlias alias="dimension" type="MYPACKAGE.persistencia.entidades.Dimension" />
<typeAlias alias="dominio" type="MYPACKAGE.persistencia.entidades.Dominio" />
<typeAlias alias="dominioDep" type="MYPACKAGE.persistencia.entidades.DominioDep" />
<typeAlias alias="entidad" type="MYPACKAGE.persistencia.entidades.Entidad" />
<typeAlias alias="error" type="MYPACKAGE.persistencia.entidades.ErrorProceso" />
<typeAlias alias="informe" type="MYPACKAGE.persistencia.entidades.Informe" />
<typeAlias alias="informeCabecera" type="MYPACKAGE.persistencia.entidades.InformeCabecera" />
<typeAlias alias="informeSeccion" type="MYPACKAGE.persistencia.entidades.InformeSeccion" />
<typeAlias alias="restriVariable" type="MYPACKAGE.persistencia.entidades.RestriVariable" />
<typeAlias alias="usuario" type="MYPACKAGE.persistencia.entidades.Usuario" />
<!-- ... -->
<typeAlias alias="cadena" type="java.lang.String" />
</typeAliases>
答案 0 :(得分:0)
如果没有看到一些实际的源代码,我怀疑我们可以查明任何错误,但它可能有助于take a look at this example on DZone。
他们特别指出的一点是,如果你没有在mybatis-config.xml文件中遵循正确的顺序,它可能会导致异常。可能是某个东西只是在该文件中的错误位置。
如果您想发布更多代码,我可以尝试提供更多帮助。
答案 1 :(得分:0)
您的套餐不适用于myBatis。您需要使用配置来定义它:
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="es.your.packacke"/>
</bean>