Bonjour,
tout d'abord je tiens à m'excuser d'avance si je ne poste pas dans le bon forum, j'ai bien mis 10min à savoir où j'allais poster ! Merci de me prévenir si je me suis tromper.
Alors mon problème concerne une fonction spécifique oracle qu'est xmlelement. Mais je pense que le problème vient concrètement d'hibernate.
Voici mon SQL :
Alors comme vous pouvez le voir j'utilise des fonctions géométriques, mais ce n'est pas cela qui me pose problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT xmlelement("ouvrage", xmlattributes( 'http://www.opengis.net/gml' as "xmlns:gml"), xmlforest(xmltype(sdo_util.to_gmlgeometry(geometry)) as "gml:geometryProperty")) AS theXMLElements FROM ouvrage WHERE id_ouvrage = 'toto';
Si j'exécute cette requête directement sous SQL Plus, elle fonctionne sans soucis.
Si je l'exécute avec Hibernate j'obtiens l'erreur suivante :
En fait dans le chaînes mises en gras dans le premier extrait, vous pouvez constater qu'il y a des ":" qui sépare mes mots. Et apparemment hibernate n'aime pas cela ! En effet quand je les enlève, ma requête avec hibernate fonctionne sans soucis. Cependant j'ai besoin des mes ":" ! Je suis donc dans l'impasse !org.hibernate.QueryException: Not all named parameters have been set: [gml", geometryProperty"] [...]
Est-ce que cette exception est normal ? Y a t'il un quelconque caractère d'échappement qui pourrait m'aider que je ne connais pas ?
Merci beaucoup d'avance pour votre aide !
Cordialement,
ReiVon.
EDIT : Bon, en fait le ":" est utilisé pour les paramètres nommés. Mais comment "escape" ce symbole svp ? Je n'ai trouvé aucun moyen pour le moment ...
Partager