WS-Objects: First-class Objects as Web Service Parameters
Résumé
Web services lack the possibility to exchange first-class objects as parameters and results. In current SOA practices, one has to give up years of experience in object-oriented programming, and return to procedural programming, passing as parameters XML data rather than objects. We propose to tackle this problem with our WS-object model which, by transmitting methods in XQuery, as well as data in XML, strives to combine Web service calls with the power of object-oriented programming. Our concept reinterprets the basics of objects, state and behavior, within the XML world, and is based on the use of interfaces and their implementation by classes generated at run-time to convert WS-objects into native language objects that can then be used by server- and client-side programs. WS-objects simplify decoupling, enhance the confidentiality of data and make Web services more stable and resistant to changes. This paper introduces the WS-object concept and illustrates it with a first implementation in Java.