Client-side Development with Axis
8.7 Summary and Bibliographical Notes
SOAP is an XML-based communication protocol and encoding format for inter-application communication. SOAP provides technology for distributed object communication. Given the signature of a remote method Web service and the rules for invoking the method, SOAP allows for representing the remote method call in XML. SOAP supports loose-coupling of distributed applications that interact by exchanging one-way asynchronous messages among each other. SOAP is not aware of the semantics of the messages being exchanged through it. Any communication pattern, including request-response, has to be implemented by the applications that use SOAP for communication. The body of the SOAP message can contain any arbitrary XML content as the message payload. SOAP is widely viewed as the backbone to a new generation of cross-platform cross-language distributed computing applications, termed Web services. Service description plays a key role in a service-oriented architecture SOA in maintaining the loose coupling between the service customers and the service providers. Service description is a formal mechanism to unambiguously describe a Web service for the service customers. A Service description is involved in each of the three operations of SOA: publish, find and bind. In this chapter I reviewed the WSDL version 2.0 standard for describing Web services and how it is used to provide functional description of the Web services SOA model. There are other standards such as Web Services Flow Language WSDL and WSEL Web Services Endpoint Language which are used to describe the non functional aspects of Web services. The reader interested in these should consult the relevant Web sources. WSDL 2.0 is the current standard at the time of this writing. It is somewhat different from the previous version WSDL 1.1, and the interested reader may wish to consult [Dhesiaseelan, 2004] for details. Briefly, a reader familiar with WSDL 1.1 will notice that WSDL 2.0 does not have message elements. These are specified using the XML Schema type system in the types element. Also, portType element is renamed to interface and port is renamed to endpoint . Web Services Inspection Language WSILis a lightweight alternative to UDDI. The W3C website and recommendation documents for SOAP are at: http:www.w3.orgTRsoap . The latest is SOAP version 1.2 specification. This document has been produced by the XML Protocol Working Group, which is part of the Web Services Activity. Ivan Marsic • Rutgers University 298 http:soapuser.com WSDL at: http:www.w3.orgTRwsdl20 [Armstrong et al., 2005] A. Dhesiaseelan, “What’s new in WSDL 2.0,” published on XML.com, May 20, 2004. Available at: http:webservices.xml.comlptaws20040519wsdl2.html Problems Section 8.3 7.1 WSDL, although flexible, is rather complex and verbose. Suppose you will develop a set of Web services for a particular domain, e.g., travel arrangements. Define your own service language and then use XSLT to generate the WSDL. 7.2 TbdParts
» | Komputasi | Suatu Permulaan
» Why Software Engineering Is Difficult
» Book Organization What is Software Engineering?
» Symbol Language Software Engineering Lifecycle
» Requirements Analysis and System Specification
» Object-Oriented Analysis and the Domain Model
» Object-Oriented Design Software Engineering Lifecycle
» Case Study 1: From Home Access Control to Adaptive Homes
» Case Study 2: Personal Investment Assistant
» Relationships and Communication Object Model
» Design of Objects Object Model
» PROPHASE 2. METAPHASE TELOPHASE 3. ANAPHASE
» Project 2: Restaurant Automation Student Team Projects
» Stock Market Investment Fantasy League
» Web-based Stock Forecasters Student Team Projects
» Summary and Bibliographical Notes
» Agile Development Software Development Methods
» Types of Requirements Requirements Analysis and Use Cases
» Use Cases Requirements Analysis and Use Cases
» Requirements Elicitation through Use Cases
» Modeling System Workflows Requirements Analysis and Use Cases
» Why Software Engineering Is Difficult 1
» Identifying Concepts Analysis: Building the Domain Model
» Concept Associations and Attributes
» Contracts: Preconditions and Postconditions
» Design Principles for Assigning Responsibilities
» Class Diagram Design: Assigning Responsibilities
» Why Software Engineering Is Difficult 2
» Software Architecture | Komputasi | Suatu Permulaan
» Implementation | Komputasi | Suatu Permulaan
» World Phenomena and Their Abstractions
» Events, Signals, and Messages
» Context Diagrams and Domains
» Systems and System Descriptions
» Basic Formalisms for Specifications
» UML Object Constraint Language OCL
» TLA+ Notation Notations for System Specification
» Problem Frame Notation Problem Frames
» Problem Decomposition into Frames
» Composition of Problem Frames
» Specifying Goals Summary and Bibliographical Notes
» Measurement Theory Fundamentals of Measurement Theory
» What to Measure? | Komputasi | Suatu Permulaan
» Cyclomatic Complexity Measuring Complexity
» Internal Cohesion or Syntactic Cohesion
» Semantic Cohesion Measuring Module Cohesion
» Algorithmic Information Content Psychological Complexity
» Applications of Publisher-Subscriber Indirect Communication: Publisher- Subscriber
» Control Flow Indirect Communication: Publisher- Subscriber
» Pub-Sub Pattern Initialization Indirect Communication: Publisher- Subscriber
» Exclusive Resource Access—Exclusion Synchronization
» Cooperation between Threads—Condition
» Concurrent Programming Example Concurrent Programming
» Broker Pattern Broker and Distributed Computing
» Java Remote Method Invocation RMI
» Symmetric and Public-Key Cryptosystems
» Release publicly the public key, which is the pair of numbers n and E, K
» Syntax Structure of XML Documents
» Document Type Definition DTD
» Namespaces Structure of XML Documents
» XML Parsers Structure of XML Documents
» XML Schema Basics XML Schemas
» Models for Structured Content
» XPointer and Xpath Indexing and Linking
» Document Transformation and XSL
» Components, Ports, and Events
» Property Access Event Firing
» Custom Methods JavaBeans: Interaction with Components
» Run-Time Type Identification Computational Reflection
» Automatic Component Binding Computational Reflection
» State Persistence for Transport
» Port Interconnections A Component Framework
» Levels of A Component Framework
» Service Oriented Architecture | Komputasi | Suatu Permulaan
» The SOAP Section 5 Encoding Rules
» SOAP Communication SOAP Communication Protocol
» Binding SOAP to a Transport Protocol
» The WSDL 2.0 Building Blocks
» Defining a Web Service’s Abstract Interface
» Binding a Web Service Implementation
» Using WSDL to Generate SOAP Binding
» Non-functional Descriptions and Beyond WSDL
» UDDI for Service Discovery and Integration
» Server-side Development with Axis
» Client-side Development with Axis
» OMG Reusable Asset Specification Summary and Bibliographical Notes
» Aspect-Oriented Programming | Komputasi | Suatu Permulaan
» OMG MDA | Komputasi | Suatu Permulaan
» Autonomic Computing | Komputasi | Suatu Permulaan
» Software-as-a-Service SaaS End User Software Development
Show more