-
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
SOAP Fault detail does not accept ComplexModel/Raw lxml element may be required #582
Comments
It'll be there until Spyne 3. I don't know when if ever there will be a Spyne 3 |
Thank you for the information, I guess I'll just need to be on the lookout for a major release then. |
I'm aware of this issue but I did not have time to think about a an api or method about this. At worst you can patch the outgoing document via |
I'll look into that when the need arises; for now, I'm happy assembling an lxml.etree. I have to admit though, that I wondered why it doesn't accept a ComplexModel? My best guess is, that this is not trivially implemented |
You can always use I seem to remember that subclassing fault object used to work. Maybe you can do:
though I'm not sure whether that'd work. |
I tried to do the subclassing, but that didn't work out; Here's the minified example:
curl-command:
For completeness the stacktrace (the home-path has been shortened and a project name redacted):
Using However, there is some small anomaly in the resulting XML-Doc:
Looking back at my terminal history, the second, empty |
Hello,
First of all: working with spyne has been pretty straightforward; it seems to be the most advanced framework for python to write soap (and other) services with!
Problem description / My PoV
For my current project, a requirement specifies that I must send a list of complex objects in the detail-field of the Fault.
I can actually do with only one element, so the limitation of only one element in the detail-field is not that much of a problem;
but: the complex object I'm supposed to send contains attributes; this is not possible to do with a plain dict.
Unfortunately, I have absolutely no influence on these requirements :-(
I worked around this by using a deprecated, not-documented feature, namely manually building the lxml tree and using that for the detail-field.
Actual request:
The "accept raw lxml elements as detail" feature is commented as deprecated (https://github.com/arskom/spyne/blob/master/spyne/protocol/xml.py#L877) - can you please keep it until another solution/option is in place?
Of course I'm open for other suggestions/approaches on how to solve this issue on my side.
The text was updated successfully, but these errors were encountered: