List of Figures

UML Class Diagram
UML Sequence Diagram
UML Use Case Diagram

Web Services Overview

The transformation in computer system deployment.
The monolithic approach to software development.
Client-server computing separated data management from app logic.
N-tier development created a business-logic layer that accessed data.
Services use open protocols that can be accessed through the Internet.
Structured design involves decomposing larger processes into smaller ones.
Object-oriented development encapsulates both data and behavior into classes and objects.
Component-based development involves a small group of objects with a contractually specified interface, working together to provide an app function.
In service-based development, services are usually components wrapped in a service layer.
Web services technology stack.
The enterprise app integration hub-and-spoke topology.
The enterprise app integration Web services topology.
A simple Web service scenario.
A composite Web service scenario.
A middleware Web service scenario.
A service bus.

Service-Oriented Architecture

Software architecture describes a system's components and connectors.
Web services are one set of technologies for implementing service-oriented architecture.
The "find-bind-execute" paradigm.
A service proxy.
A conceptual service model.
Fine-grained distributed objects.
Coarse-grained services.
Degrees of granularity.
Multi-grained services.
A method that returns only account-holder information.
A method that returns both the account-holder's information and address.
A method that returns either the account-holder's information or address.
A method that returns just the attributes requested.

Component-Based Service Development

Development lifecycle of a component-based service.
The requirements analyst creates a set of artifacts that describes the app.
Degrees of modifiability.
One way to improve integrability is to adapt the service for use over different protocols.
Architecture refers to core assets grouped into three viewpoints.
The conceptual architecture for a typical component-based service consists of six layers.
A typical session façade and business logic layer.
Example functional and technical services.
The IEEE Maintenance Process Activities diagram.

SOAP

SOAP and the enterprise
The Web services communication stack
SOAP nodes
SOAP message structure
Mapping of Listing 4.1a to elements of the SOAP message structure
SOAP nodes and intermediaries
The SAAJ object model

WSDL

WSDL document- a conceptual representation
Dynamic interaction of a service and its consumer
A logical class diagram of the key WSDL elements
BillPayservice service WSDL mapped to the WSDL conceptual model
The definitions element
The types element
The message element
The schema for the operations element
A one-way operation
A request-response operation
A solicit-response operation
A notification operation
The portType element
The binding element
The SOAP header
The multipartRelated element
(a) RPC and (b) document styles
The service element
Vendor tool tasks
Tasks performed by Hvendor tools for WSDL
xrpcc can read an XML configuration file to generate client-side code.

UDDI

UDDI interaction
Creating a business entity
Details for the business entity
Creating a business service
Creating a binding template
Creating a tModel
UDDI core data structures
businessEntity
businessService
bindingTemplate
tModel
Binding template activity
UDDI interoperability

ebXML

ebXML frameworks (adapted from the ebXML Business Process Specification Schema)
Design-time and runtime components
Graphic process modeling and the Business Process Specification Schema
Use cases map to collaborations grouped as discrete transactions (adapted from the ebXML Business Process Specification Schema)
The XML elements in a Collaboration-Protocol Profile
A Collaboration-Protocol Agreement is agreed upon based on the Collaboration-Protocol Profile documents
The XML elements in a Collaboration-Protocol Agreement
Design-time and runtime components in detail
Relationships in the Registry Information Model
ebXML Registry Information Model (source- ebXML RIM specifications)
Registry interfaces
Registry bindings
The ebXML message (source- ebXML Message Service Specification)
ebXML messaging system modules
ebXML messaging
A business collaboration scenario

Java Web Service Developer Pack

Java WSDP components
The Tomcat Web server administration console
Sample tasks for creating a JAX-RPC server
The wsdeploy tool
Sample tasks for creating a JAX-RPC client
The registry browser

JAXP

Logical JAXP architecture
JAXP architecture
Schema showing tree structure of DOM
The org.w3c.dom package
XML validation with JAXP 1.2
XSLT transformation process
XML transformed into HTML
Transcoding XML into different formats
Logical tiering
JAXP and XSLT
XSLTc architecture
Class diagram for JDOM. Note the lack of relationships between classes.

JAX-RPC

The JAX-RPC model
JAX-RPC client-server interaction
(a) RPC style. (b) Document style.
Service deployment
xrpcc artifacts
WSDL elements and dynamic interaction of a service and its consumer.
Handler architecture
Fault handling in handlers
Handler example
Using XML attachments with JAX-RPC for asynchronous invocation
Serializers and deserializers
The type mapping system
EJB endpoint for JAX-RPC
EJB invoking other Web services

JAXM

MOM
Centralized MOM topology
Decentralized MOM topology
Hybrid MOM topology
Synchronous Web services
Asynchronous Web services
Conceptual model for JMS
Point-to-point messaging
Publish-subscribe messaging
The JMS API
JMS messaging
Sending messages with point-to-point messaging
Conceptual JavaMail model
The JavaMail API
Sending mail using JavaMail
Message structure for (a) simple messages and (b) multipart messages
Retrieving mail using JavaMail
Asynchronous B2B messaging using JavaMail
Conceptual model for JAXM
Architectural stack for JAXM
SOAP message structure with a profile
Point-to-point messaging from a client without a provider
Synchronous messaging with response
Synchronous messaging with acknowledgment
Provider roles in asynchronous messaging
Asynchronous messaging with response
Asynchronous messaging with acknowledgment
Asynchronous one way messaging
SAAJ model in the javax.xml.soap package
Synchronous messaging
Implementing a synchronous service
Asynchronous messaging
Sequence diagram of provider-to-provider communication
Sequence diagram of provider-to-provider communication
JAXM Provider Administration in the reference implementation
Realizing an asynchronous JAXM service
JAXM, JAX-RPC, and relationship to SAAJ
JAXM interoperability scenarios
JMS providers using SOAP

JAXR

Registry usage
JAXR Architecture
The core JAXR information model
Inheritance relationships in the information model
Classification of registry objects
The basic subdivisions of matter
NAICS code assignment
Classification with an internal taxonomy
An example of an external taxonomy
Classification with an internal taxonomy
An extramural association between two organizations
JAXR API
The LifeCycleManager and the BusinessLifeCycleManager
The QueryManager and the BusinessQueryManager
The DeclarativeQueryManager for level 1 providers
Flute Bank as registered in the IBM UDDI registry
WSDL representation in UDDI
WSDL information published in UDDI
ebXML registry browser

JAXB

JAXB architecture
The binding compiler
Declaration scope

Transaction Management

The two-phase commit protocol
Nested transactions
JTS transaction manager components
Atomicity relaxed, travel agency example
app and BTP elements overview
app and BTP elements in an atom/cohesion
BTP and app elements
BTP actors and messages overview
A simple atom example illustrating the BTP two-phase protocol
Cohesion completion
BTP element tree
Roles played by superiors and inferiors
BTP SOAP message shown pictorially
Relationship between WS-Coordination and WS-Transaction

Security

Secure Sockets Layer
SAML
SAML assertion
SAML assertion response
WS-I specifications
Married couple interaction
JAAS pluggable authentication
Bank wire transfer process
Mobile access through gateways
Security federations
Delegation of trust
Federated network identity

Practical Considerations

Accounting service
XMLPay flow
Downtime cost as a function of impact
Redundant infrastructure for high availability
Typical J2EE architecture
Cluster architecture
Web services using grid computing
Web services summary

Future Standards

The service description stack
BPEL process and partner services
Core elements of a BPEL process document
Basic structure of a BPEL document
WS-routing and SOAP intermediaries

XML Schema

Role of XML Schema and schema validators
Simple DTD for the employeeList document
XML Schema for the employeeList document
Extending XML schema using the appinfo element

JSTL

The outout from the JSTL example