Please sign in to comment.
+ Added a simple mime reader that reads the incoming multipart mime soap message and split out the Preamble and the actual attachment data. * SoapSerializationEnvelope.java + (writeProperty): For Collabnet Teamforge instances, supplying a 'null' for certain values caused an exception (Probably somethig with the version of axis used). Setting it to a 'nil' instead makes it work. So irrespective of the SOAP version, pass in 'nil' when a null value needs to be sent * SoapSerializationEnvelopeTest.java + Fix the test so that when a nil value is required expect 'nil' instead of 'null' * HttpTransportSE.java + (call): Check if the incoming response is a multipart message and call Transport's processMultipartResponse * Transport.java + (processMultipartResponse): Send the incoming message to SimpleMimeReader. It then reads the preamble and sends to processResponse for getting the SOAP Message. Finally, it fetches the first attachment data. All of these are set as PropertyInfo's on the SOAPObject, which is then fed to envelope.bodyIn. Note: Following cases may not work + SOAP messages with multiple attachments + Trying to get some context out of the preamble in the SOAP message. In the cases I tested, there was nothing in preamble, so couldnt test much TODO: + Add a testcase for multipart messages
- Loading branch information...
Showing with 788 additions and 48 deletions.
- +668 −0 ksoap2-base/src/main/java/org/ksoap2/multipart/SimpleMimeReader.java
- +2 −1 ksoap2-base/src/main/java/org/ksoap2/serialization/SoapSerializationEnvelope.java
- +111 −44 ksoap2-base/src/main/java/org/ksoap2/transport/Transport.java
- +1 −1 ksoap2-base/src/test/java/org/ksoap2/serialization/SoapSerializationEnvelopeTest.java
- +6 −2 ksoap2-j2se/src/main/java/org/ksoap2/transport/HttpTransportSE.java
Oops, something went wrong.