I manage a iPhone/Android project and one of these days my client asked me if it is possible for application to handle dynamically different WSDLs.
So I forward this question to you 🙂
Thanks for your help.
UPDATE: The application is displaying a filling form (edit boxes, checkboxes, …) which come from a SOAP Ws and which is by default a known WSDL. The ideea is that the client wants to have dynamic forms, in dependence of the WSDL which is loaded from somewhere from internet. For example the user is loading some WSDL which has approximately the same scheme with the exception of fields which should be displayed. The fields may vary from a form to another form.
Using WSDLs this way is pain. Of course it’s possible, but the general point of a WSDL is to generate code that parses and validates SOAP. You can’t dynamically generate that code in a deployed app (definitely not on iPhone, and I assume not on Android, though that’s not my specialty). So you’re going to have to dynamically manage all the SOAP parsing, which is a royal pain.
This kind of interface is much easier in JSON, since JSON just encodes free-form data, which is basically what you’re creating here. If there is any way you can convert from SOAP to REST+JSON, this would be much easier. Otherwise, I would develop a WSDL that can encode a generic form rather than creating a new WSDL for every form.
Of course this is a corollary to a deeper rule: there is never a situation on iOS when SOAP is the good answer (required, perhaps, but never good). Napier’s SOAP Conjecture is that there is never any situation in which SOAP is a good answer, but I’ve only been able to prove it on iOS. I’ve heard there might be counter-examples in other spaces….