-
Notifications
You must be signed in to change notification settings - Fork 313
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Change name of part in wsdl message “wsdl:part” #543
Comments
I've also come across this need.. I'm working with Deltek Vision, and their Invoke Web Service request expects the message part |
@kcollins-ene Hey, I've forked repo and made a little bit of workaround -> przemyslaw-szurmak@cb1814d which works fine for me. Just keep in mind that I did not synchronized with main repo recently so code there is pretty old |
questions go to the mailing list. I see that the provided patches hardcode "parameters". I can't accept them. I can accept a patch that parametrizes the value though. |
If I end up moving forward with spyne for this project (that requires this adjustment), I'll have a go at putting that together, @plq. Thanks for helping with this great project! |
I've created this as a question on Stack but maybe I could find answer here a bit quicker :)
in my case, in order to keep conformance with some existing SOAP client "name" of "part" in "message" element of WSDL needs to be "parameters" like here
Currently I don't see any way of doing that in Spyne. I went through documentation, source code and it seems that WSDL generator always takes the same value for "name" of "part" as for "name" of whole "message"
(spyne/interface/wsdl/wsdl11.py)
So basically "name" for "message"
message_name
ismethod.in_message.get_element_name()
and that's the same case for "name" in "part" asobj.get_element_name()
->method.in_message.get_element_name()
However, in Python I've never done anything larger then 3 lines of code and it took me a while to understand all of this (Swift/Objc programmer here) I might be missing something and maybe there's some nice easy method to do that ?
As a quick and poor hack/workaround I've just changed
part.set('name', obj.get_element_name())
intopart.set('name', 'parameters')
and in my case (my wsdl is really simple with just two methods and not many arguments) it works just fine but I'm totally aware how bad this is in terms of breaking SOAP/WSDL logic and code quality :( SOAP standard looks to me way overcomplicated/complex and it's my first time ever to deal with it so my understanding of importance of each element is quite low :(The text was updated successfully, but these errors were encountered: