2017-06-19 4 views
0

J'ai un problème avec le service soapClient de webMethods Integration Server intégré (non accessible). D'une manière ou d'une autre, il modifie la demande qu'il doit envoyer lors du traitement, en renommant le paramètre articles à article.WebMethods Integration Server pub.client.soapclient modifie les noms des éléments de requête

ce qui est envoyé à la méthode:

<request> 
    <t1>1</t1> 
    <operation>op</operation> 
    <service>1</service> 
    <params> 
    <count>1</count> 
    <items> 
     <key>12</key> 
     <value>12</value> 
    </items> 
    </params> 
</request> 

ce que demande webMethods envoie:

<request> 
    <t1>1</t1> 
    <operation>op</operation> 
    <service>1</service> 
    <params> 
    <count>1</count> 
    <item> 
     <key>12</key> 
     <value>12</value> 
    </item> 
    </params> 
</request> 

Je serais reconnaissant pour toute solution/idée d'une solution.

+0

La classe fonctionne bien (vous ne devriez pas décompiler et le code postal du vendeur !! Ce n'est pas! Légale S'il vous plaît supprimer le lien dès que possible!). Très probablement votre service de flux où vous générez les données n'utilise/produit pas une liste de documents pour des "articles" mais un simple document nommé "article". S'il te plaît, vérifie cela. –

+0

Voici comment je le débogue: http://i.imgur.com/csC40Hs.png Il modifie toujours le xml à dans les deux cas. – SSV

+0

Pouvez-vous s'il vous plaît poster un exemple/capture d'écran comment exactement vous passez ce document au service de savon? comment créez-vous votre demande de savon? Pouvez-vous exporter votre colis et l'afficher ici? –

Répondre

0

Je vois dans votre exemple de code que vous créez d'abord un document nommé "items", puis vous mappez ce document à une liste de documents nommée "items". Ce n'est pas valide. Notez que le pipeline dans IntegrationServer n'est rien d'autre qu'une carte de valeur-clé et que les clés doivent être uniques. C'est la raison pour laquelle vous avez toujours un seul document nommé "items" au lieu d'une liste de documents. Renommez votre document à quelque chose comme "élément", puis utilisez appendToDocumentList pour l'ajouter à la liste de documents "items".

Wrong mapping

+0

Je voulais créer un flux rapide décrivant un problème et faire une erreur, faire un document Votre chemin ne change rien. Jetez un oeil à ce paquet: (ajouter des éléments en entrée lors du débogage). Le problème ne devrait pas se produire ici https://ufile.io/cwg74 – SSV

+0

Désolé, ce paquet est juste beaucoup plus mince pour reproduire n'importe quoi! S'il vous plaît fournir un échantillon de travail où ce problème est reproduit, sinon il est difficile/impossible d'aider. –

+0

juste essayer d'envoyer la demande formée comme ça en utilisant webMethods soapClient. On dirait que c'est une erreur d'implémentation de la part de Software AG, je vais juste écrire une implémentation Java de la communication SOAP et l'utiliser dans mon flux. – SSV