Table of Contents
- Title and Copyright Information
- Preface
- Part I Introduction
-
Part II Developing Basic JAX-WS Web Services
-
3
Developing JAX-WS Web Services
- Overview of the WebLogic Web Service Programming Model
- Configuring Your Domain For Advanced Web Services Features
- Developing WebLogic Web Services Starting From Java: Main Steps
- Developing WebLogic Web Services Starting From a WSDL File: Main Steps
- Creating the Basic Ant build.xml File
- Running the jwsc WebLogic Web Services Ant Task
- Running the wsdlc WebLogic Web Services Ant Task
- Updating the Stubbed-out JWS Implementation Class File Generated By wsdlc
- Deploying and Undeploying WebLogic Web Services
- Browsing to the WSDL of the Web Service
- Configuring the Server Address Specified in the Dynamic WSDL
- Testing the Web Service
- Integrating Web Services Into the WebLogic Split Development Directory Environment
-
4
Programming the JWS File
- Overview of JWS Files and JWS Annotations
- Java Requirements for a JWS File
-
Programming the JWS File: Typical Steps
- Example of a JWS File
- Specifying that the JWS File Implements a Web Service (@WebService Annotation)
- Specifying the Mapping of the Web Service to the SOAP Message Protocol (@SOAPBinding Annotation)
- Specifying That a JWS Method Be Exposed as a Public Operation (@WebMethod and @OneWay Annotations)
- Customizing the Mapping Between Operation Parameters and WSDL Elements (@WebParam Annotation)
- Customizing the Mapping Between the Operation Return Value and a WSDL Element (@WebResult Annotation)
- Specifying the Binding to Use for an Endpoint (@BindingType Annotation)
- Accessing Runtime Information About a Web Service
- Should You Implement a Stateless or Singleton Session EJB?
- Programming the User-Defined Java Data Type
- Invoking Another Web Service from the JWS File
- Using SOAP 1.2
- Validating the XML Schema
- JWS Programming Best Practices
-
5
Using JAXB Data Binding
- Overview of Data Binding Using JAXB
- Developing the JAXB Data Binding Artifacts
- Standard Data Type Mapping
-
Customizing Java-to-XML Schema Mapping Using JAXB Annotations
- Example of JAXB Annotations
- Specifying Default Serialization of Fields and Properties (@XmlAccessorType Annotation)
- Mapping Properties to Local Elements (@XmlElement)
- Specifying the MIME Type (@XmlMimeType Annotation)
- Mapping a Top-level Class to a Global Element (@XmlRootElement)
- Binding a Set of Classes (@XmlSeeAlso)
- Mapping a Value Class to a Schema Type (@XmlType)
- Customizing XML Schema-to-Java Mapping Using Binding Declarations
- Using the Glassfish RI JAXB Data Binding and JAXB Providers
- 6 Examples of Developing JAX-WS Web Services
-
3
Developing JAX-WS Web Services
-
Part III Developing Basic JAX-WS Web Service Clients
- 7 Roadmap for Developing JAX-WS Web Service Clients
-
8
Developing Web Service Clients
- Overview of WebLogic Web Services Client Development
- Invoking a Web Service from a Java SE Client
- Invoking a Web Service from a Standalone Java SE Client
- Invoking a Web Service from Another WebLogic Web Service
- Configuring Web Service Clients
- Defining a Web Service Reference Using the @WebServiceRef Annotation
- Managing Client Identity
- Using a Proxy Server When Invoking a Web Service
- Client Considerations When Redeploying a Web Service
- Client Considerations When Web Service and Client Are Deployed to the Same Managed Server
- 9 Examples of Developing JAX-WS Web Service Clients
-
Part IV Developing Advanced Features of JAX-WS Web Services
- 10 Using Web Services Addressing
- 11 Roadmap for Developing Asynchronous Web Service Clients
-
12
Developing Asynchronous Clients
- Overview of Asynchronous Web Service Invocation
- Steps to Invoke Web Services Asynchronously
- Configuring Your Servers for Asynchronous Web Service Invocation
- Building the Client Artifacts for Asynchronous Web Service Invocation
-
Developing Scalable Asynchronous JAX-WS Clients (Asynchronous Client Transport)
-
Enabling and Configuring the Asynchronous Client Transport Feature
- Configuring the Address of the Asynchronous Response Endpoint
- Configuring the ReplyTo and FaultTo Headers of the Asynchronous Response Endpoint
- Configuring the Context Path of the Asynchronous Response Endpoint
- Publishing the Asynchronous Response Endpoint
- Configuring Asynchronous Client Transport for Synchronous Operations
- Developing the Asynchronous Handler Interface
- Propagating User-defined Request Context to the Response
-
Enabling and Configuring the Asynchronous Client Transport Feature
- Using Asynchronous Web Service Clients From Behind a Firewall (Make Connection)
- Using the JAX-WS Reference Implementation
- Propagating Request Context to the Response
- Monitoring Asynchronous Web Service Invocation
- Clustering Considerations for Asynchronous Web Service Messaging
- 13 Roadmap for Developing Reliable Web Services and Clients
-
14
Using Web Services Reliable Messaging
- Overview of Web Services Reliable Messaging
- Steps to Create and Invoke a Reliable Web Service
- Configuring the Source and Destination WebLogic Server Instances
- Creating the Web Service Reliable Messaging WS-Policy File
- Programming Guidelines for the Reliable JWS File
- Invoking a Reliable Web Service from a Web Service Client
-
Configuring Reliable Messaging
- Configuring Reliable Messaging on WebLogic Server
- Configuring Reliable Messaging on the Web Service Endpoint
- Configuring Reliable Messaging on Web Service Clients
- Configuring the Base Retransmission Interval
- Configuring the Retransmission Exponential Backoff
- Configuring the Sequence Expiration
- Configuring Inactivity Timeout
- Configuring a Non-buffered Destination for a Web Service
- Configuring the Acknowledgement Interval
- Implementing the Reliability Error Listener
- Managing the Life Cycle of a Reliable Message Sequence
- Monitoring Web Services Reliable Messaging
- Grouping Messages into Business Units of Work (Batching)
- Client Considerations When Redeploying a Reliable Web Service
- Interoperability with WebLogic Web Service Reliable Messaging
-
15
Using Web Services Atomic Transactions
- Overview of Web Services Atomic Transactions
- Configuring the Domain Resources Required for Web Service Advanced Features
- Enabling the Web Services Atomic Transactions Feature
- Enabling Web Services Atomic Transactions on Web Services
- Enabling Web Services Atomic Transactions on Web Service Clients
- Configuring Web Services Atomic Transactions Using the Administration Console
- Using Web Services Atomic Transactions in a Clustered Environment
- More Examples of Using Web Services Atomic Transactions
- 16 Optimizing XML Transmission Using Fast Infoset
-
17
Using SOAP Over JMS Transport
- Overview of SOAP Over JMS Transport
- Configuring the WebLogic Server Domain for JMS Transport
- Developing Web Services Using JMS Transport—Starting From Java
- Developing Web Services Using JMS Transport—Starting From WSDL
- Invoking a WebLogic Web Service Using JMS Transport
-
Configuring JMS Transport Properties
- Summary of JMS Transport Configuration Properties
- Configuration Methods and Order of Precedence
- Configuring JMS Transport Using the Administration Console
- Configuring JMS Transport Using WLST
- Configuring the JMS URI
- Configuring the JMS Request URI
- Configuring the WS-Addressing Headers
- Configuring the JMS Response Queue
- Configuring the JMS Message Type
- Configuring HTTP Access to the WSDL File
- Monitoring SOAP Over JMS Transport
-
18
Creating and Using SOAP Message Handlers
- Overview of SOAP Message Handlers
- Adding Server-side SOAP Message Handlers: Main Steps
- Adding Client-side SOAP Message Handlers: Main Steps
- Designing the SOAP Message Handlers and Handler Chains
-
Creating the SOAP Message Handler
- Example of a SOAP Handler
- Example of a Logical Handler
- Implementing the Handler.handleMessage() Method
- Implementing the Handler.handleFault() Method
- Implementing the Handler.close() Method
- Using the Message Context Property Values and Methods
- Directly Manipulating the SOAP Request and Response Message Using SAAJ
- Configuring Handler Chains in the JWS File
- Creating the Handler Chain Configuration File
- Compiling and Rebuilding the Web Service
- Configuring the Client-side SOAP Message Handlers
-
19
Handling Exceptions Using SOAP Faults
- Overview of Exception Handling Using SOAP Faults
- Contents of the SOAP Fault Element
- Using Modeled Faults
- Using Unmodeled Faults
- Customizing the Exception Handling Process
- Disabling the Stack Trace from the SOAP Fault
- Other Exceptions
- 20 Optimizing Binary Data Transmission
- 21 Managing Web Service Persistence
- 22 Configuring Message Buffering for Web Services
-
23
Managing Web Services in a Cluster
- Overview of Web Services Cluster Routing
- Cluster Routing Scenarios
- How Web Service Cluster Routing Works
-
Configuring Web Services in a Cluster
- Setting Up the WebLogic Cluster
- Configuring the Domain Resources Required for Web Service Advanced Features in a Clustered Environment
- Extending the Front-end SOAP Router to Support Web Services
- Enabling Routing of Web Services Atomic Transaction Messages
- Enabling Routing of Web Services Make Connection Messages
- Configuring the Identity of the Front-end SOAP Router
- Configuring the Identity of the Front-end SOAP Router Using Network Channels
- Monitoring Cluster Routing Performance
-
24
Using Provider-based Endpoints and Dispatch Clients to Operate on SOAP Messages
- Overview of Web Service Provider-based Endpoints and Dispatch Clients
- Usage Modes and Message Formats for Operating at the XML Level
-
Developing a Web Service Provider-based Endpoint (Starting from Java)
- Developing a Synchronous Provider-based Endpoint
- Developing an Asynchronous Provider-based Endpoint
- Specifying the Message Format
- Specifying that the JWS File Implements a Web Service Provider (@WebServiceProvider Annotation)
- Specifying the Usage Mode (@ServiceMode Annotation)
- Defining the invoke() Method for a Synchronous Provider-based Endpoints
- Defining the invoke() Method for an Asynchronous Provider-based Endpoints
- Defining the Callback Handler for the Asynchronous Provider-based Endpoint
- Developing a Web Service Provider-based Endpoint (Starting from WSDL)
- Using SOAP Handlers with Provider-based Endpoints
- Developing a Web Service Dispatch Client
- 25 Sending and Receiving SOAP Headers
- 26 Using Callbacks
- 27 Developing Dynamic Proxy Clients
- 28 Publishing a Web Service Endpoint
- 29 Using XML Catalogs
- 30 Programming Web Services Using XML Over HTTP
- 31 Programming Stateful JAX-WS Web Services Using HTTP Session
- 32 Testing and Monitoring Web Services
- Part V Reference
-
A
Pre-packaged WS-Policy Files for Web Services Reliable Messaging and Make Connection
- DefaultReliability1.2.xml (WS-Policy File)
- DefaultReliability1.1.xml (WS-Policy File)
- DefaultReliability.xml WS-Policy File (WS-Policy) [Deprecated]
- LongRunningReliability.xml WS-Policy File (WS-Policy) [Deprecated]
- Mc1.1.xml (WS-Policy File)
- Mc.xml (WS-Policy File)
- Reliability1.2_ExactlyOnce_WithMC1.1.xml (WS-Policy File)
- Reliability1.2_SequenceSTR.xml (WS-Policy File)
- Reliability1.1_SequenceSTR.xml (WS-Policy File)
- Reliability1.2_SequenceTransportSecurity.xml (WS-Policy File)
- Reliability1.1_SequenceTransportSecurity.xml (WS-Policy File)
- Reliability1.0_1.2.xml (WS-Policy File)
- Reliability1.0_1.1.xml (WS-Policy.xml File)
- B Example Client Wrapper Class for Batching Reliable Messages
- C Migrating JAX-RPC Web Services and Clients to JAX-WS