1

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>
4

2 に答える 2

0

実際のソース コードの一部を確認しないと、エラーを正確に特定できないと思いますが、DZone でこの例を確認すると役立つ場合があります。

彼らが特に指摘していることの 1 つは、mybatis-config.xml ファイルで正しい順序に従わないと、例外が発生する可能性があるということです。そのファイルの何かが間違った場所にある可能性があります。

もっと多くのコードを投稿したい場合は、私がもっと役に立ちます。

于 2012-05-25T13:56:14.173 に答える
0

あなたのパッケージは myBatis では利用できません。構成を使用して定義する必要があります。

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
    <property name="basePackage" value="es.your.packacke"/>
</bean>
于 2012-05-25T17:31:33.987 に答える