BC SOAP, SU consume, WSDL et namespaces supplémentaires

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

BC SOAP, SU consume, WSDL et namespaces supplémentaires

Nicolas MEFFRE
Bonjour,

En exposant un service JBI avec un SU consume, le BC SOAP semble ajouter un certain nombre de namespaces inutiles dans le header, qui se référencent les uns les autres.
On constate cela en récupérant le wsdl exposé sur le port 8084 du BC SOAP. Il n'y a apparemment pas d'influence du SU provide consommé par le consume SOAP (testé avec un provider SOAP et un autre sur un composant "maison").

Exemple :
<w:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:ns10="http://petals.ow2.org/wsdlExtensions" 
xmlns:ns12="ns14" xmlns:ns13="soap" xmlns:ns14="wsdl" xmlns:ns14_="ns9" xmlns:ns15="ns10" xmlns:ns16="ns12" xmlns:ns17="xs" xmlns:ns18="ns17" xmlns:ns19="xml" xmlns:ns20="ns8" 
xmlns:ns21="soap12" xmlns:ns21_="ns21" xmlns:ns22="ns7" xmlns:ns23="ns18" xmlns:ns24="ns15" xmlns:ns25="ns24" xmlns:ns26="xsd" xmlns:ns28="mime" xmlns:ns28_="ns14_" xmlns:ns29="w" 
xmlns:ns30="ns19" xmlns:ns31="ns16" xmlns:ns32="ns30" xmlns:ns33="ns13" xmlns:ns34="ns22" xmlns:ns36="ns20" xmlns:ns37="ns29" xmlns:ns38="http" xmlns:ns39="ns23" xmlns:ns41="ns25" 
xmlns:ns42="tns" xmlns:ns43="ns26" xmlns:ns44="ns28" xmlns:ns7="http://www.w3.org/ns/wsdl" xmlns:ns8="http://www.w3.org/ns/wsdl/http" xmlns:ns9="http://www.w3.org/ns/wsdl/soap" 
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:tns="http://www.mydomain.com/my/path/to/target/namespace/" 
xmlns:w="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
name="MyExposedService" targetNamespace="http://www.mydomain.com/my/path/to/target/namespace/">

Versions utilisées : BC Soap 4.3.5, petals ESB 4.2.3.

J'ai trouvé ce post : http://forum.petalslink.com/WSDL-lt-definition-gt-td2689680.html
et ce ticket : https://jira.petalslink.com/browse/EASYWSDL-17
qui semblent évoquer le sujet.

Est-ce un bug ? Si oui, une résolution est-elle prévue (voir déjà embarquée dans une autre version) ?

Rien de critique a priori puisque le WSDL obtenu est valide et exploitable, simplement cela n'aide pas la lisibilité du contrat d'interface pour les clients des services du bus.

Merci d'avance.

Cordialement,
Nicolas MEFFRE
Reply | Threaded
Open this post in threaded view
|

Re: BC SOAP, SU consume, WSDL et namespaces supplémentaires

Victor Noël
Administrator
Effectivement, le problème existe. C'est pas vraiment un bug (comme expliqué dans les liens que tu cites) mais ça peut être gênant oui.

Il n'est pas résolu dans les dernières versions, mais on va ouvrir une issue autour du sujet et si l'occasion se présente ce sera amélioré au moins dans le BC SOAP 4.4.x (pour Petals 5).
Si il y a moyen (et ça devrait être le cas je pense), on pourra ensuite le backporter aussi au 4.3.x.
Reply | Threaded
Open this post in threaded view
|

Re: BC SOAP, SU consume, WSDL et namespaces supplémentaires

Victor Noël
Administrator
Reply | Threaded
Open this post in threaded view
|

Re: BC SOAP, SU consume, WSDL et namespaces supplémentaires

Nicolas MEFFRE
Merci Victor.
En ce qui nous concerne, inutile d'embarquer une correction en 4.3.x, étant donné qu'une migration de l'ESB en version 5 est prévue pour bientôt : on changera aussi les composants à ce moment-là.