Architecting Web Services
Chapter 1: What are Web Services?
- Figure 1-1: N-tier architecture model
- Figure 1-2: Application partnership through presentation links
- Figure 1-3: Application partnership through a frameset
- Figure 1-4: Light request/heavy response process
- Figure 1-5: Heavy request/heavy response process
- Figure 1-6: Heavy request/light response process
- Figure 1-7: Shared objects in a single system
- Figure 1-8: Shared objects across systems in a closed environment
- Figure 1-9: Shared objects between distinct environments
- Figure 1-10: Web service development life cycle
- Figure 1-11: Web service integration model
- Figure 1-12: Application partnership through Web services
Chapter 2: Web Services Architecture
- Figure 2-1: The partners in a Web services-based application
- Figure 2-2: The shifting of partners in a Web services-based application
- Figure 2-3: Partner C as the application owner
- Figure 2-4: Partners in a brokered Web services application
- Figure 2-5: Partners in a hybrid Web services application
- Figure 2-6: The communication architecture for a Web services call
- Figure 2-7: A functional view of a Web service
- Figure 2-8: Asynchronous or delayed response Web service
- Figure 2-9: A functional view of a Web service client
- Figure 2-10: Logical architecture of an n-tier Web application
- Figure 2-11: Web service and consumer logical architecture
- Figure 2-12: Web service logical architecture
- Figure 2-13: Web service integration with another Web service
- Figure 2-14: Web Service consumer logical architecture
- Figure 2-15: Logical architecture of an application with stacked Web services
- Figure 2-16: Web service consumer presentation logical sublayers
- Figure 2-17: Visual segmentation of presentation sublayers
- Figure 2-18: Combined logical and communication architecture for a Web services call
Chapter 3: XML Technical Primer
- Figure 3-1: Internet Explorer view of an XML document
- Figure 3-2: Schema data type relationships
- Figure 3-3: Complex type content models
- Figure 3-4: Three-tier schema hierarchy design
Chapter 4: Using XML
- Figure 4-1: A graphical view of the DOM representation of XML
- Figure 4-2: Document_Node relationships
- Figure 4-3: Document_Fragment_Node relationships
- Figure 4-4: Document_Type_Node relationships
- Figure 4-5: Entity_Node relationships
- Figure 4-6: Entity_Reference_Node relationships
- Figure 4-7: Element_Node relationships
- Figure 4-8: Attribute_Node relationships
- Figure 4-9: Processing_Instruction_Node relationships
- Figure 4-10: Comment_Node relationships
- Figure 4-11: Text_Node relationships
- Figure 4-12: CDATA_Section_Node relationships
- Figure 4-13: Notation_Node relationships
- Figure 4-14: Elements versus elements and attributes as child nodes
- Figure 4-15: Graphical representation of the DOM and SAX APIs
- Figure 4-16: XSL mapping of XML
Chapter 5: Web Services Models
- Figure 5-1: Masked Web service usage in an application
- Figure 5-2: Interaction with a user by an isolated Web service
- Figure 5-3: An input interface provided by an isolated Web service
- Figure 5-4: An input interface provided by the consumer
- Figure 5-5: Travel site results screen with a distinctive listing
- Figure 5-6: Travel site results screen with generic listings
- Figure 5-7: Presentation service options
- Figure 5-8: Output of Web service result with content
- Figure 5-9: Presentation scenario 1
- Figure 5-10: Presentation scenario 2
- Figure 5-11: Purchase order screen
- Figure 5-12: Validation levels in a Web service application
- Figure 5-13: Browser view of address verification form elements
- Figure 5-14: Compromising a Web service process
- Figure 5-15: A process flow diagram
- Figure 5-16: Appointment process flow as a Web service
- Figure 5-17: Extending the appointment Web service
- Figure 5-18: State management in a Web service application
- Figure 5-19: A two-step Web service workflow with individual requests
- Figure 5-20: A two-step Web service workflow with double-duty responses
- Figure 5-21: Optimized appointment process flow Web service
- Figure 5-22: Dynamic request handling by the provider
- Figure 5-23: Conditional responses for the appointment service
- Figure 5-24: Appointment service baseline process
- Figure 5-25: Date selection exception handling
- Figure 5-26: Date availability exception handling applications
- Figure 5-27: Time availability exception handling
- Figure 5-28: Typical system access process for Web servers
- Figure 5-29: Direct versus proxied Web services calls to application servers
- Figure 5-30: Proxy Web server as conduit for multiple Web services
- Figure 5-31: Authentication scenarios
- Figure 5-32: Peer-to-peer communication with Web services
- Figure 5-33: Encrypting data between the application provider and the Web service provider
- Figure 5-34: Sourcing consumer and user authentication data
- Figure 5-35: Container representation of user-to-role association
- Figure 5-36: Profile storage for the consumer and user
Chapter 6: Building a Web Services Call
- Figure 6-1: Visual Age workspace view of the CompoundInterestWS class
- Figure 6-2: Selecting the export function in Visual Age
- Figure 6-3: Export options of Visual Age
- Figure 6-4: Directory export options of Visual Age
- Figure 6-5: Viewing the referenced dependencies in Visual Age
- Figure 6-6: The WebSphere administrative console
- Figure 6-7: Creating a new web application in WebSphere
- Figure 6-8: The WebSphere new web application dialog box
- Figure 6-9: Creating a new servlet in WebSphere
- Figure 6-10: WebSphere's new servlet dialog box
- Figure 6-11: Specifying a servlet's web path(s) in WebSphere
- Figure 6-12: Visual Interdev New File dialog box
- Figure 6-13: Internet Services Manager console
- Figure 6-14: Virtual Directory Alias screen
- Figure 6-15: Web Site Content Directory screen
- Figure 6-16: Certificate Authority Web site
- Figure 6-17: Request Certificate Type screen
- Figure 6-18: Identifying Information screen
- Figure 6-19: Pending Certificate Request screen
- Figure 6-20: Viewing the pending certificate requests
- Figure 6-21: Issuing a certificate request
- Figure 6-22: Viewing issued certificates
- Figure 6-23: Checking on pending certificate requests
- Figure 6-24: Specifying the certificate request
- Figure 6-25: Installing the issued certificate
- Figure 6-26: Successful certificate installation
- Figure 6-27: Web Site Directory Security properties
- Figure 6-28: Web Site Secure Communications properties
- Figure 6-29: Certificate Trust List wizard
- Figure 6-30: Selecting trusted certificate authorities
- Figure 6-31: Entering certificate trust list information
- Figure 6-32: Specifying the Web application's secure communictions properties
Chapter 7: Building a Web Services Workflow
- Figure 7-1: Storyboard for the isolated service user interface
- Figure 7-2: Baseline reservation system business process flow
- Figure 7-3: Modified process flow for embedded service consumers
- Figure 7-4: Modified process flow for isolated service consumers
- Figure 7-5: Hotel detail view for reservation service
- Figure 7-6: Confirmation of personal information for reservation request
- Figure 7-7: Web service proxy-host infrastructure
- Figure 7-8: The wsFetchAvailability process flow
- Figure 7-9: Logical interface schema hierarchy map
- Figure 7-10: Availability request schema map
- Figure 7-11: Hotel detail view schema map
- Figure 7-12: Reservation request schema map
- Figure 7-13: Physical embedded interface schema hierarchy diagram
- Figure 7-14: Availability form schema map
- Figure 7-15: Reservation form schema map
- Figure 7-16: Browser view of hotel availability request form
- Figure 7-17: Process flow for isolated service without confirmation interaction
- Figure 7-18: Physical interface schema hierarchy diagram with isolated interactions
- Figure 7-19: Flow diagram for the service listener
- Figure 7-20: Process diagram for the service responder workflow
- Figure 7-21: Session-consumer data model
- Figure 7-22: Hotel content data model
- Figure 7-23: Test client form view
Chapter 8: Consuming Web Services
- Figure 8-1: The integration and presentation layers in a consumer application
- Figure 8-2: Java application consumer interface in the Visual Composition editor
- Figure 8-3: Tying the Button Click event to logic in Visual Age
- Figure 8-4: A successful run of our weather forecaster consumer application
- Figure 8-5: The Web site for Find-A-Home Realtors
- Figure 8-6: Find-A-Home Realtors home details view
- Figure 8-7: The process flow for the Find-A-Home Realtors updated Web site
- Figure 8-8: Find-A-Home Realtors home details view with mortgage calculator
- Figure 8-9: Find-A-Home Realtors home details view with calculated payment
- Figure 8-10: AAA Conferences homepage
- Figure 8-11: View conference details page
- Figure 8-12: Personal registration page
- Figure 8-13: Credit card payment page
- Figure 8-14: Registration confirmation page
- Figure 8-15: Registration confirmed page
- Figure 8-16: AAA Conferences registration process workflow
- Figure 8-17: Reservation Web service consumer process workflow
- Figure 8-18: Adding the hotel option step to the registration process
- Figure 8-19: AAA Conferences modified registration process
- Figure 8-20: Web service interaction within the registration process
- Figure 8-21: Hotel option web page
- Figure 8-22: Hotel criteria web page
- Figure 8-23: Hotel selection web page
- Figure 8-24: Hotel confirmation web page
- Figure 8-25: Registration confirmation web page
- Figure 8-26: Registration confirmed web page
Chapter 9: The Direction of Web Services
- Figure 9-1: The UDDI business registry
- Figure 9-2: Bowstreet's Web services directory
- Figure 9-3: IBM UDDI browser