IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Format d'échange (XML, JSON...) Java Discussion :

Préciser namespace sur chaque élément d'un xml


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 4
    Points : 4
    Points
    4
    Par défaut Préciser namespace sur chaque élément d'un xml
    Bonjour à tous,

    Je souhaite préciser le namespace sur chaque élément de mon xml.

    J'appelle un webService Java en Biztalk. Cela fonctionne bien... Mais il faut préciser le namespace sur chaque élément afin que la map Biztalk puisse fonctionner.

    Je décris mes web Service via un fichier .wsdd que voici :
    Code XML : 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
    	 <service name="tiersService" provider="java:RPC" style="wrapped" use="literal" elementFormDefault="qualified">
    		 <parameter name="allowedMethods" value="saveOrUpdate"/>
    		 <parameter name="className" value="test.webservice.interfaces.TiersService"/>
    		 <parameter name="scope" value="Session"/> 
    		 <beanMapping qname="tiersNs:Tiers" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.Tiers"/>
             <beanMapping qname="tiersNs:Header" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.binding.Header"/>
             <beanMapping qname="tiersNs:Data" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.Data"/>
             <beanMapping qname="tiersNs:AdresseType" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.AdresseType"/>
             <beanMapping qname="tiersNs:AdresseNumeriqueType" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.AdresseNumeriqueType"/>
             <beanMapping qname="tiersNs:CoordonneBancaireListeTiers" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.CoordonneBancaireListeTiers"/>
             <beanMapping qname="tiersNs:DonneeSocieteTiers" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.DonneeSocieteTiers"/>
             <beanMapping qname="tiersNs:DonneeVentestchatTiers" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.DonneeVentestchatTiers"/>
             <beanMapping qname="tiersNs:TraductionListe" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.binding.TraductionListe"/>
             <beanMapping qname="tiersNs:Traduction" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.binding.Traduction"/>
             <beanMapping qname="tiersNs:TvaListeTiers" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.TvaListeTiers"/>
             <beanMapping qname="tiersNs:TiersPartenaireType" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.TiersPartenaireType"/>
             <beanMapping qname="tiersNs:CoordonneeBancaireType" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.CoordonneeBancaireType"/>
             <beanMapping qname="tiersNs:TvaTiers" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.tiers.binding.TvaTiers"/>
             <beanMapping qname="tiersNs:TalonValiditeType" xmlns:tiersNs="http://app.tiers/" languageSpecificType="java:test.interface.binding.TalonValiditeType"/>
             <beanMapping qname="commonNs:ReponseApplication" xmlns:commonNs="http://app.rep/"  languageSpecificType="java:test.interface.ReponseApplication.binding.ReponseApplication"/>
             <beanMapping qname="commonNs:ListeMessage" xmlns:commonNs="http://app.rep/"  languageSpecificType="java:test.interface.ReponseApplication.binding.ListeMessage"/>
    	 </service>


    Voici la réponse retournée :

    Code XML : 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
    <?xml version="1.0" encoding="UTF-8"?>
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <soapenv:Body>
      <saveOrUpdateResponse xmlns="http://interfaces.webservice.test">
       <saveOrUpdateReturn>
        <applicationHeader>app</applicationHeader>
        <codeMessageOrigineHeader>87d8909d-14c5-4c1c-ad27-17da8c326150</codeMessageOrigineHeader>
        <compteurRejoueHeader>0</compteurRejoueHeader>
        <dateHeureCreationHeader>29/04/2010</dateHeureCreationHeader>
        <destinationHeader>EAI</destinationHeader>
        <erreurMessage xsi:nil="true"/>
        <guiHeader>f7bedb91-c0c3-40ed-a25b-ec0786e20a03</guiHeader>
        <pivotOrigineString xsi:nil="true"/>
        <sequencementHeader>test</sequencementHeader>
        <sourceHeader>test</sourceHeader>
        <type>SUCCES</type>
        <typeHeader>Tiers</typeHeader>
        <versionHeader>1.0.0.0</versionHeader>
       </saveOrUpdateReturn>
      </saveOrUpdateResponse>
     </soapenv:Body>
    </soapenv:Envelope>


    Et j'aimerais obtenir un fichier xml réponse avec des éléments comme suit :

    <ns1:applicationHeader xmlns:ns1="http://app.rep/">ns0:applicationHeader_0</ns1:applicationHeader>

    Est-ce que ma config dans le wsdd est bonne ou bien faut-il rajouter un paramètre ?

    Merci pour vos éclaircissements...

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 552
    Points : 21 608
    Points
    21 608
    Par défaut
    Citation Envoyé par c.soub Voir le message
    J'appelle un webService Java en Biztalk. Cela fonctionne bien... Mais il faut préciser le namespace sur chaque élément afin que la map Biztalk puisse fonctionner.
    J'allais dire "ça m'étonnerait qu'un framework connu soit incapable de gérer du XML de base correctement..." Mais je viens de voir qu'on parle d'une techno Microsoft, du coup je suis moins sûr de moi.

    Citation Envoyé par c.soub Voir le message
    Et j'aimerais obtenir un fichier xml réponse avec des éléments comme suit :

    <ns1:applicationHeader xmlns:ns1="http://app.rep/">ns0:applicationHeader_0</ns1:applicationHeader>

    Est-ce que ma config dans le wsdd est bonne ou bien faut-il rajouter un paramètre ?
    En XML, on n'a pas besoin de s'embêter à déclarer les namespaces sur chaque élément. C'est comme ça que ça fonctionne.
    Il serait donc normal que ça ne concerne pas le WSDD, et qu'il n'y ait aucun paramètre prévu pour ça.

    Après, je ne dis pas qu'il n'existe rien pour faire ça, surtout s'il existe des protocoles connus pour en avoir besoin. Mais je te le dis : il ne serait pas surprenant qu'il n'y ait rien à y faire, et tu devrais commencer à te demander si tu ne t'es pas trompé de direction, ou s'il ne faudrait pas une bibliothèque spécialisée pour parler avec ton service au lieu d'une bibliothèque SOAP générique.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Réponses: 3
    Dernier message: 11/03/2015, 15h11
  2. Réponses: 2
    Dernier message: 23/01/2014, 10h12
  3. Réponses: 4
    Dernier message: 20/03/2013, 18h23
  4. [XSD] XSD qui oblige à un xmlns="" dans chaque élément de l'XML
    Par vanquish dans le forum Valider
    Réponses: 3
    Dernier message: 17/04/2012, 15h07
  5. xsl:Template sur un élément sans namespace
    Par dust45 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 27/10/2005, 16h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo