Author :
De Labey, S. ; van Dooren, M. ; Steegmans, Eric
Abstract :
Object-oriented programming languages are losing pace with the rapidly evolving Web Services paradigm. They are unable to deal with the distributed, volatile nature of web services, and they lack expressive language constructs for complex web service interactions. In this paper, we present ServiceJ, a Java extension with integrated support for web service programming. By extending the type system with type qualifiers, ServiceJ realizes important objectives from both paradigms. On one hand, ServiceJ resembles Java by promoting reuse and abstraction, and by supporting type- safe web service invocations. On the other hand, ServiceJ supports late web service binding, Quality of Service negotiation, and transparent web service failover. We provide an in-depth discussion of our type system extension, formally prove its type soundness, and compare our language extension with related object-oriented and service-oriented programming languages.
Keywords :
Java; Web services; object-oriented programming; type theory; Java extension; Java programming; ServiceJ; Web service binding; Web service programming; Web services interactions; Web services paradigm; oject-oriented programming languages; quality of service negotiation; service-oriented programming languages; transparent Web service failover; type qualifiers; type system; Computer languages; Computer science; Java; Logic; Middleware; Object oriented modeling; Object oriented programming; Programming profession; Quality of service; Web services;