J'ai un WSDL qui contient 3 schémas à l'intérieur de son élément "Types". Les schémas ne sont pas définis dans des xsds externes mais à l'intérieur de l'élément Types.
Je veux personnaliser un élément à l'intérieur du schéma numéro 2 et modifier son nom pour éviter un conflit. P>
donc dans la schémax faire ça? Malgré la question, j'ai la voie à suivre: p> mais je ne suis pas celui qui l'a trouvé mais une collègue de mes miens qui ne travaille plus avec moi. Y a-t-il une ressource où je peux trouver l'explication même si je le comprends? Un lien ou un livre? Quelque part où je peux trouver aussi d'autres exemples. P> Mon problème est la valeur Schemalocation (../ WSDL-Files / MYWSDL.WSDL # Types? Schema2) Pas la XPath. Je veux connaître toutes les possibilités de faire référence à un schéma à l'intérieur d'une WSDL. J'ai besoin d'une documentation pour cela ou quelque chose. P> Merci beaucoup p> p>
3 Réponses :
Le JAXB RI V2.1 Ajout de la prise en charge de [Componateurs de schéma] [1], qui vous permet de référencer des composants de schéma symboliquement, plutôt que par leur emplacement de fichier et son emplacement XPath. En principe, cela est beaucoup plus agréable à utiliser, mais je ne l'ai jamais utilisé moi-même. P>
Je ne suis pas sûr à quel point cela est largement soutenu. Il y en a très peu de mention de celui-ci ailleurs autre que cette entrée de blog. Il convient de mentionner qu'il faisait partie de la spécification proposée pour JAXB 2.1, de sorte que si cela a été passé, il devrait être mis en œuvre par chaque mise en œuvre JAXB 2.1, y compris Java6. C'est possible, cependant, qu'il n'a jamais été réellement ajouté à la spécification. P>
Merci mec! Ça a fière allure. Mais avez-vous quelque chose qui décrit ceux-ci: #Types? Schema2 Merci!
@DAULTMATETROOPER: Le point de SCD est que vous n'avez pas besoin de spécifier l'emplacement de schéma dans la personnalisation de la liaison, vous vous référez aux éléments de schéma par nom.
D'après ce que j'ai trouvé, SCD n'est toujours pas pris en charge officiellement, mais Sun's XJC l'utilisera s'il est donné l'option code> -extension code> et des outils dépendants tels que CXF Travailler avec elle aussi. La syntaxe est encore plus difficile à grok que XPath, mais elle peut être faite pour fonctionner.
avait un problème similaire (cinq schémas de types de noms communs) et d'une manière ou d'une autre n'avoir pas de SCD à fonctionner correctement. Ma solution suivait:
CustomBinding.xml: P>
<target name="xjc_generate"> <exec executable="xjc" > <arg value="-wsdl" /> <arg value="${wsdl.base}/service/wsdlfile.wsdl" /> <arg value="-d" /> <arg value="${dir.src}" /> <arg value="-b" /> <arg value="${wsdl.base}/service/custombinding.xjb" /> </exec> </target>
Vous devez spécifier l'emplacement du schéma dans le WSDL comme celui-ci - s'il s'agit du 2e schéma.
E.g: myWsdl.wsdl # Types2
Si le 10ème, MyWSDL.WSDL # Types10 P> blockQuote>espérons que cela aide quelqu'un. p>
xxx pré> p>
Mon problème est la valeur Schemalalocation (../ WSDL-Files / MyWSDL.WSDL # Types? Schema2) Ce n'est pas le XPath, etc. Je veux connaître toutes les possibilités de référencer un schéma à l'intérieur d'une WSDL, etc. J'ai besoin d'une documentation pour cela ou quelque chose. Merci encore
Quel outil utilisez-vous pour lier le WSDL?
Vous devez modifier votre question et mettre le contenu de votre commentaire en tant que section "mise à jour:". Puis supprimez le commentaire.
La syntaxe que vous avez donnée pour spécifier un schéma à l'intérieur d'un fichier WSDL est horrible - mais cela fonctionne! Dans CXF, j'ai pu faire un accès de nœud basé sur XPath à l'aide d'un suffixe de
# Type6 code>, où le schéma en question était le 6ème du fichier. SCD suggéré par Skaffman fonctionne effectivement beaucoup mieux, mais vous m'avez aidé à résoudre ce problème particulier, tellement merci!