java - Why does this incorrect "package" tag in MyBatis XML config work? -


usually define our queries in xml files, , mappers portion of our mybatis xml config looks this:

<mappers>     <mapper resource="mappers/example1.xml"/>     <mapper resource="mappers/example2.xml"/> </mappers> 

and fine.

now contributor added mappers java classes , have mixed configuration both xml files , java packages listed within mappers:

<mappers>     <mapper resource="mappers/example1.xml"/>     <mapper resource="mappers/example2.xml"/>     <package name="it.example.mappers1" />     <package name="it.example.mappers2" /> </mappers> 

i see document type definition http://ibatis.apache.org/dtd/ibatis-3-config.dtd not include package correct content mappers, , told eclipse, gives me error:

the content of element type "mappers" must match "(mapper)+"

however, still works fine when run application. on other hand, when try remove incorrect package elements, mybatis doesn't know find mappers , runtime error:

org.apache.ibatis.binding.bindingexception: type interface it.example.mappers1.mymapper not known mapperregistry

so have wrong configuration works , necessary. why? specifying wrong dtd?

i indeed specifying old dtd ibatis. if replace correct http://mybatis.org/dtd/mybatis-3-config.dtd, validates , works. silly enough


Comments

Popular posts from this blog

Hatching array of circles in AutoCAD using c# -

ios - UITEXTFIELD InputView Uipicker not working in swift -

Python Pig Latin Translator -