8
votes

"Générateur de formulaire Java" à partir d'un fichier WSDL donné

J'essaie de développer un générateur de formulaire en Java, dans lequel les utilisateurs seront en mesure d'écrire une URL WSDL et d'obtenir la liste des opérations prises en charge par le service Web dans un ComboBox. Lorsque l'utilisateur sélectionne l'un des éléments de Combobox, il verra les champs de formulaire générés à l'aide de l'URL WSDL.

Je suis un débutant dans Web Service Technologies, après avoir recherché sur les analyseurs de services Web sur le net, j'ai décidé d'utiliser Axis Bibliothèque. Mais je ne sais vraiment pas quelle partie du document WSDL devrais-je analyser

Je n'essaie pas de créer des classes Java du service Web, je dois générer des champs de formulaire pour toute URL WSDL.

Par exemple, voici un service Web qui fournit 9 opérations

http://services.aonaware.com/dictservice/dicsevice.asmx

et le fichier WSDL est ici:

http://services.aonaware.com/dictservice/dicsevice.asmx?wsdl

J'ai besoin de savoir quelles parties du fichier WSDL doivent être analysées, toute aide serait appréciée.


2 commentaires

Un outil comme celui-ci serait très utile, allez-vous le relâcher comme un projet open source?


C'était un projet d'école, je ne suis pas sûr que je puisse le trouver. Peut-être que je peux en écrire un nouveau et vous pouvez être sûr que si j'écris un, il sera publié sous GPL3;)


4 Réponses :


1
votes

Ce n'est pas un projet trivial, et vous constaterez peut-être qu'une bibliothèque qui constitue déjà votre meilleure approche, mais les endroits de démarrage des attributs de mappage des composants de formulaire HTML et du minc / max se trouvent à des événements JavaScript.

Il serait probablement beaucoup plus facile d'écrire votre formulaire de votre compréhension de la WSDL. Quant à quelque chose qui pourrait aider, vous pouvez utiliser quelque chose comme

http://www.soapui.org/

ou pour quelque chose de Web basé (que je viens de tester avec votre WSDL et que cela fonctionne), vous pouvez essayer

http://www.soapclient.com/soaptsest.html

Je sais que ces deux liens pourraient être totalement de base pour ce que vous essayez d'accomplir cependant, alors bonne chance dans vos efforts pour aborder ce défi :)


0 commentaires

8
votes

Pour commencer avec WSDL et comprendre comment un tel document est structuré, vous devez peut-être consulter un article sur un article comme Comprendre WSDL ou le Tutorial WSDL ou toute autre ressource débutante que vous trouverez sur Google.

Maintenant, pour répondre à votre question de manière simplifiée, vous devrez commencer par l'élément porttype contenant:

Un ensemble d'opérations abstraite appuyé par un ou plusieurs points d'extrémité (communément appelés interface); Les opérations sont définies par un échange de messages

Par exemple, dans votre cas: xxx

et, pour chaque opération, vous devez analyser les messages d'entrée et de sortie, un Message Être:

Définition d'un message abstrait qui peut être composé de plusieurs parties, chaque partie peut être d'un type différent.

ici, par exemple, le message d'entrée de l'opération précédente est le suivant: xxx

puis, pour comprendre le contenu du message, jetez un coup d'œil à la Types :

Conteneur pour les définitions de type abstrait définies à l'aide de Schema XML

ici, le dictionnaire est défini comme un élément de complets vide: xxx

comme je l'ai dit, c'est vraiment un très La réponse simplifiée en tant que WSDL ne peut pas être résumée dans quatre paragraphes et, pour être honnête, ce que vous allez faire n'est vraiment pas une tâche triviale. Laissez-moi reformuler ceci: il y aura du sang! Donc, même si ces quelques lignes peuvent vous aider (très peu) à commencer, je ne commencerais certainement pas un tel projet à partir de zéro mais utilisez-moi plutôt. une bibliothèque ou un outil existant (comme XYDRA ou Eclipse Générateur de formulaires XML ou ...) qui permettrait de ne pas réinventer la roue.

par La façon dont j'ai remarqué que vous avez décidé d'utiliser l'axe et que vous ne voulez pas générer des cours de Java, mais je recommanderais chaleureusement à pas Utiliser l'axe de toute façon. En fait, j'utiliserais Jax-Ws Ri Wich Wich Bundled à Java 6 et est une API beaucoup plus facile. Juste au cas où, pour générer les classes Java, il suffit d'exécuter: xxx


0 commentaires

3
votes

Voici un bon tutoriel sur "Lecture d'un fichier WSDL" de Thomas Bayer http://www.predic8.com/wsdl-reading.htm


0 commentaires

1
votes

Je ne peux pas parler pour le côté WSDL, mais vous pouvez envisager Metawidget pour le côté de génération de formulaire: une fois que vous "VE extrait et analysé le WSDL, vous pouvez le repousser en métawidget et obtenir beaucoup de bonté de l'interface utilisateur gratuitement (support pour différentes plates-formes, différentes bibliothèques de widget, etc.)

Cordialement,

Richard.


0 commentaires