2010-08-27 10 views
1

J'ai un fragments sql définis dans un espace de nom particulier comme:Ibatis fragments sql utilisés dans différents espaces de noms

<sqlMap namespace="firstNamespace"> 
    ..... 
    <sql id="fragmentOne"> 

puis d'un autre espace de noms que je suis en train de l'utiliser, mais il semble que Ibatis n'est pas capable de le trouver.

Impossible de trouver instruction SQL pour inclure avec refid Maintenant, je sais que « firstNamespace.fragmentOne »

l'ordre de chargement est important, de sorte que le fichier SqlMapConfig.xml je place le fichier xml contenant le fragment d'abord, mais aucun résultat.

Avez-vous une idée sur la façon d'utiliser un fragment sql d'un autre espace de noms?

Merci Roberto

Répondre

1

Par ailleurs, pour mettre Attention les fichiers XML dans le bon ordre à l'intérieur sqlMapConfig.Xml.

0
<sqlMapConfig> 
    <settings useStatementNamespaces="true" /> <!-- add this line --> 
    <sqlMap resource="ibatis/Web-Registration-Report.xml" /> 
</sqlMapConfig> 

Note:
assez facile à résoudre le problème, il suffit d'ajouter la ligne suivante dans la configuration iBatis et assurez-vous, maintenant utiliser l'espace de noms lors de l'appel.

Soyez conscient. Depuis maintenant, le code produira une erreur si vous n'utilisez pas l'espace de noms. Il sera donc plus sage de prendre une décision finale quant à l'utilisation ou non de l'espace de noms.