| help | account  


Building Web Services with Java: Making Sense of XML, SOAP, WSDL, and UDDI
View Larger Image
Stephen Graham, Glen Daniels, Doug Davis, Yuichi Nakamura, et al.
Sams, Paperback, 2nd edition, Published June 2004, 792 pages, ISBN 0672326418
List Price: $54.99
Our Price: $34.95
You Save: $20.04 (36% Off)


FREE Shipping on Orders over $40!*
Availability: Out-Of-Stock
Read an excerpt:
Chapter 3: The SOAP Protocol

     

Reprinted with permission from Sams.

Be the First to Write a Review and tell the world about this title!

People who purchase this book frequently purchase:

Books on similar topics, in best-seller order:Books from the same publisher, in best-seller order:

Sams has assembled a team of experts in web services to provide you with a detailed reference guide on XML, SOAP, USDL and UDDI. Building Web Services with Java is in its second edition and it includes the newest standards for managing security, transactions, reliability and interoperability in web service applications. Go beyond the explanations of standards and find out how and why these tools were designed as they are and focus on practical examples of each concept. Download your source code from the publisher's website and work with a running example of a full enterprise solution. Learn from the best in Building Web Services with Java.

Table of Contents

Introduction.

I. WEB SERVICES BASICS.

1. Web Services Overview and Service-Oriented Architectures.

What Is a Web Service?

Service-Oriented Architectures.

Trends in E-Business.

Why Do We Need Web Services?

The Web Service Opportunity.

Justifying Web Services.

Web Services Interoperability Stack.

Summary.

2. XML Primer.

Document- Versus Data-Centric XML.

XML Instances.

XML Namespaces.

XML Schemas.

Processing XML.

Summary.

Resources.

3. The SOAP Protocol.

Simple Object Access Protocol (SOAP).

Doing Business with SkatesTown.

Inventory Check Web Service.

A Closer Look at SOAP.

The SOAP Messaging Framework.

SOAP Intermediaries.

The SOAP Body.

The SOAP Processing Model.

Versioning in SOAP.

Processing Headers and Bodies.

Faults: Error Handling in SOAP.

Objects in XML: The SOAP Data Model.

The SOAP RPC Conventions.

XML, Straight Up: Document-Style SOAP.

When to Use Which Style.

The Transport Binding Framework.

Using SOAP to Send Binary Data.

Small-Scale SOAP, Big-Time SOAP.

Summary.

Resources.

4. Describing Web Services.

Why Service Descriptions?

Role of Service Description in a Service-Oriented Architecture.

Well-Defined Service.

History of Interface Definition Languages (IDLs).

Web Services Description Language (WSDL).

A Sketch of How WSDL Maps to Java.

Nonfunctional Descriptions in WSDL.

Standardizing WSDL: W3C and WSDL 2.0.

Summary.

Resources.

5. Implementing Web Services with _Apache Axis.

A Brief History of Axis.

Axis Architecture.

The Message APIs and SAAJ.

The Axis Client APIs.

Web Service Deployment Descriptor (WSDD).

Building Services.

A Guide to Web Service Styles.

From XML to Java and Back Again: The Axis Type-Mapping System.

When Things Go Wrong: Faults and Exceptions.

Axis as an Intermediary.

How to Write a Handler.

Built-in Security.

Understanding Axis Transport s.

No API Is an Island: Axis and Its Environment.

Development/Debugging Tools.

Axis Futures: A Quick Tour.

Participating in the Axis Community.

Summary.

Resources.

6. Discovering Web Services.

What Is Service Discovery?

UDDI (Universal Description, Discovery, _and Integration) .

Other Service Discovery Methods.

Summary.

Resources.

II. ENTERPRISE WEB SERVICES

7. Web Services and J2EE.

J2EE Overview.

Using EJBs from Axis.

Using JSR109: Implementing _Enterprise Web Services.

Summary.

Resources.

8. Web Services and _Stateful Resources.

Web Services and State.

WS-Resources.

Stateful Resources.

Modeling Resource Properties.

Using Notifications.

Resource Lifetime.

Other WS-Resource Framework Specifications.

Summary.

9. Securing Web Services.

Example Scenario.

Security Basics.

Web Services Security.

WS-Security.

WS-Trust.

WS-SecurityPolicy.

WS-SecureConversation.

WS-Federation.

Enterprise Security.

J2EE Security.

Authorization in J2EE.

J2EE and Web Services Security.

Security Services.

Summary.

Resources.

10. Web Services Reliable Messaging.

Background of the Web Services Reliable Messaging Protocol (WS-RM).

The WS-RM Specification.

WS-RM Processing Model.

Client-Side Processing.

Server-Side Processing.

Sequence Faults.

Policy Assertions.

SpecVersion Assertion .

DeliveryAssurance Policy.

SequenceExpiration Policy.

InactivityTimeout Assertion.

BaseRetransmissionInterval _Assertion.

AcknowledgementInterval Assertion.

SequenceRef Element.

Flaws and Other Thoughts on the WS-RM Spec.

Putting WS-RM into Use.

Summary.

Resources.

11. Web Services Transactions.

Web Services Coordination and Transaction _(WS-C/Tx).

Transactions: A Brief Introduction.

WS-Coordination.

The CoordinationContext .

The CreateCoordinationContext _Operation.

The Register Operation.

WS-Coordination Fault Codes.

WS-Transaction: Atomic Transactions.

WS-AT Operations.

Commit and Rollback.

AT Protocols.

Two-Phase Commit Protocols.

Committing the Transaction.

Transaction Flow Overview.

Business Activity Protocol.

Reliable Delivery and Security.

Summary.

Resources.

12. Orchestrating Web Services.

Why Are We Composing Web Services?

Two-Level Programming Model.

Stateless and Stateful Web Services.

Evolution of Business Process Languages.

SkatesTown Requirements.

Business Process Execution Language for _Web Services.

Design Goals.

External Interface of a Process.

Overall Structure of a Process.

Basic and Structured Activities.

Process Lifecycle and Related Activities.

Partner Links .

Properties and Correlation Sets.

Invoking Web Services and Providing Web Services.

Data Handling and Related Activities .

More Basic Activities: wait , empty .

Flows.

More Structured Activities: sequence , while , switch , scope .

Fault Handling .

Compensation Handling .

Event Handling .

SkatesTown: Putting It All Together.

Advanced Considerations.

Abstract Processes.

Language Extensibility.

Summary.

Resources.

III. WEB SERVICES IN THE REAL WORLD

13. Web Services Interoperability.

Web Services Interoperability Organization.

WS-I Basic Profile 1.0.

Common Requirements for SOAP Envelope, WSDL Document, and XML Schema _Document.

Understanding the WSDL Document _Structure.

Importing XML Schema and WSDL _Documents.

Defining the Service Interface.

Defining a SOAP Binding.

Publishing a Service Description.

HTTP and SOAP Message Content.

Web Service Security.

WS-I Conformance Claims.

Service Provider, Requestor, and Registry Requirements.

Summary of Basic Profile 1.0 Requirements.

Future WS-I Profiles.

Basic Profile 1.1.

Simple SOAP Binding Profile 1.0.

Attachments Profile 1.0.

Basic Security Profile 1.0.

WS-I Sample Applications.

WS-I Test Tools.

Monitor Overview.

Monitor Configuration File.

Message Log File.

Analyzer Overview.

Analyzer Configuration File.

Test Assertion Document.

Profile Configuration Report.

Summary.

Resources.

14. Web Services Pragmatics.

Enterprise Adoption of Web Services.

Time-Based Adoption Challenges.

Inherent Limitations of SOA.

Top-Down Versus Bottom-Up.

Policies and Processes.

Putting Web Services in Production.

Web Services Technology Map.

System Architectures for Web Services.

Features, Capabilities, and Approaches.

Tools and Platforms.

SOA Testing.

Deployment and Provisioning.

Business Process Automation Using Web _Services.

Operations.

Summary.

Resources.

15. Epilogue: Web Services Futures.

A Roadmap for Web Services.

Age of Invention (Base SOAP, WSDL, _UDDI).

Age of Development (from Hype to _Delivery).

Age of Mainstream Acceptance (Web _Services Become Boring).

Future Trends in Web Services.

Short-Term Trends and Issues.

Medium-Term Trends.

Longer-Term Trends.

Summary.

Appendix A:- Glossary.

Index.

About the Authors

Steve Graham is an architect in the Emerging Technologies division of IBM Software Group. He has spent the last several years working on service-oriented architectures, most recently as part of the IBM Web Services Initiative. Before this, Steve worked as a technologist and consultant working with emerging technologies such as Java and XML; before that, he was an architect and consultant with the IBM Smalltalk consulting organization. Before joining IBM, Steve was a developer with Sybase, a consultant, and a faculty member in the Department of Computer Science at the University of Waterloo. Steve holds a Bachelor of Arts degree in math and a Master of Arts degree in math in computer science from the University of Waterloo.

Doug Davis works in the Emerging Technology organization of IBM, working on IBM's Web Services Toolkit, and he is one of IBM's representatives in the W3C XML Protocol working group. Previous projects include WebSphere's Machine Translation project, TeamConnection, and IBM's FORTRAN 90 compiler. Doug has a Bachelor of Science degree from the University of California at Davis and a Master's degree in Computer Science from Michigan State University.

Simeon (Sim) Simeonov has been developing software for more than 15 years. Sim's areas of expertise encompass object-oriented technology, compiler theory, Internet tools, enterprise computing, and the broad spectrum of XML technologies. As chief architect at Macromedia Inc., Sim provides direction for the evolution of the company's technology and product strategy as well as the architecture of its server-side platform products. Previously, Sim was chief architect at Allaire Corporation, where his initiatives brought about numerous innovations to the core product lines. Sim is currently working on service-oriented architectures for the next generation of distributed XInternet applications. He is actively involved with the Java Community Process in the areas of Internet applications, XML, and Web Services. Sim also represents Macromedia on the W3C working group on XML Protocol. He is a regular speaker at conferences and a monthly columnist for XML Journal. Sim holds a B.A. in Computer Science, Economics, and Mathematics and a MSc in Computer Science.

Glen Daniels has run the gamut in his 13 years in the software industry, from device drivers and network stacks up through user interface and Web site work, in everything from assembly language to C++ to Lisp. Distributed computing has always been a passion, and as such he is currently the technical lead for the JRun Web Services team at Macromedia. Glen is also an active member of the W3C XML Protocol group as well as one of the lead developers of Axis.

Peter Brittenham is a Senior Technical Staff Member working in the IBM Emerging Technology group. Peter is currently an architect applying service-oriented architecture concepts to IBM's Autonomic Computing initiative.

Yuichi Nakamura is a contributor to the Apache SOAP and Axis projects.

Paul Fremantle is a Senior Technical Staff Member in IBM's Software division. Paul works on IBM's Enterprise Service Bus initiative and other Web services activities in the WebSphere product.

Dieter König is a software architect for workflow systems at the IBM Germany Development Laboratory. He joined the laboratory in 1988 and has worked on Resource Measurement Facility for z/OS, MQSeries Workflow, and WebSphere Process Choreographer.

Claudia Zentner is an architect working for IBM's Software Group at the IBM Development Laboratory in Böblingen, Germany. Currently she is an architect for the process choreography component of the WebSphere Business Integration offering.


Forgot your password?
FAQs
Shipping Options
Returns
Your Orders
Your Account