Bonjour,
Je voulais générer un fichier .wsdd (format XML). J'ai alors choisi JDOM. La génération commence bien, seulement, je n'arrive pas à mettre les éléments parameter , car dans un élément service, il y a plusieurs éléments parameter.
Exemple de WSDD
Voici, mon code Java
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> <!-- Services from EquationService WSDL service --> <service name="Equation" provider="java:RPC" style="rpc" use="encoded"> <parameter name="wsdlTargetNamespace" value="http://localhost:8080/axis/services/Equation"/> <parameter name="wsdlServiceElement" value="EquationService"/> <parameter name="schemaUnqualified" value="http://localhost:8080/axis/services/Equation"/> <parameter name="wsdlServicePort" value="Equation"/> <parameter name="className" value="equation.EquationSoapBindingImpl"/> <parameter name="wsdlPortType" value="Equation"/> <parameter name="typeMappingVersion" value="1.2"/> <operation name="saisirEquation" qname="operNS:saisirEquation" xmlns:operNS="http://equation" returnQName="saisirEquationReturn" returnType="rtns:Solution" xmlns:rtns="http://localhost:8080/axis/services/Equation" soapAction="" > <parameter qname="mesCoefs" type="tns:Coefficient" xmlns:tns="http://localhost:8080/axis/services/Equation"/> </operation> ..... ...... </service> ........ ........ </deployement>
et voici le résultat obtenu (seuls les attributs du dernier parameter apparaissent !)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42 public class GenerXML { public GenerXML() { // TODO Raccord de constructeur auto-généré } /** * @param args */ public static void main(String[] args) { // TODO Raccord de méthode auto-généré CreerElement tuto = new CreerElement(); Element racine = new Element("deployement"); Namespace ns=Namespace.getNamespace("http://xml.apache.org/axis/wsdd/"); Namespace nsjava=Namespace.getNamespace("java", "http://xml.apache.org/axis/wsdd/providers/java"); racine.setNamespace(ns); racine.addNamespaceDeclaration(nsjava); Document document = new Document(racine); Element service = new Element("service"); service.setAttribute("name", "Equation"); service.setAttribute("provider", "java:RPC"); service.setAttribute("style", "rpc"); service.setAttribute("use", "encoded"); Element param1 = new Element("param1"); param1.setName("parameter"); param1.setAttribute("name", "wsdlTargetNamespace"); param1.setAttribute("value", "http://localhost:8080/axis/services/Equation"); Element param2 = new Element("param2"); param2.setName("parameter"); param1.setAttribute("name", "wsdlServiceElement"); param1.setAttribute("value", "EquationService"); service.addContent(param1); service.addContent(param2); racine.addContent(service);
Qui a une idée pour moi ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <?xml version="1.0" encoding="UTF-8" ?> - <deployement xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> - <service xmlns="" name="Equation" provider="java:RPC" style="rpc" use="encoded"> <parameter name="wsdlServiceElement" value="EquationService" /> <parameter /> .............. </service> ................. ................... </deployement>
merci d'avance.
Partager