Jump To Close Expand all Collapse all Table of contents Developing Applications Using JAX-WS I. Starting from Java Code Expand section "I. Starting from Java Code" Collapse section "I. Starting from Java Code" 1. Bottom-Up Service Development Expand section "1. Bottom-Up Service Development" Collapse section "1. Bottom-Up Service Development" 1.1. Creating the SEI 1.2. Annotating the Code Expand section "1.2. Annotating the Code" Collapse section "1.2. Annotating the Code" 1.2.1. Required Annotations 1.2.2. Optional Annotations 1.2.3. Apache CXF Annotations 1.3. Generating WSDL 2. Developing a Consumer Without a WSDL Contract Expand section "2. Developing a Consumer Without a WSDL Contract" Collapse section "2. Developing a Consumer Without a WSDL Contract" 2.1. Creating a Service Object 2.2. Adding a Port to a Service 2.3. Getting a Proxy for an Endpoint 2.4. Implementing the Consumer's Business Logic II. Starting from WSDL Expand section "II. Starting from WSDL" Collapse section "II. Starting from WSDL" 3. A Starting Point WSDL Contract 4. Top-Down Service Development Expand section "4. Top-Down Service Development" Collapse section "4. Top-Down Service Development" 4.1. Generating the Starting Point Code 4.2. Implementing the Service Provider 5. Developing a Consumer From a WSDL Contract Expand section "5. Developing a Consumer From a WSDL Contract" Collapse section "5. Developing a Consumer From a WSDL Contract" 5.1. Generating the Stub Code 5.2. Implementing a Consumer III. Common Development Tasks Expand section "III. Common Development Tasks" Collapse section "III. Common Development Tasks" 6. Finding WSDL at Runtime Expand section "6. Finding WSDL at Runtime" Collapse section "6. Finding WSDL at Runtime" 6.1. Instantiating a Proxy by Injection 6.2. Using a JAX-WS Catalog 6.3. Using a contract resolver 7. Generic Fault Handling Expand section "7. Generic Fault Handling" Collapse section "7. Generic Fault Handling" 7.1. Runtime Faults 7.2. Protocol Faults 8. Publishing a Service Expand section "8. Publishing a Service" Collapse section "8. Publishing a Service" 8.1. APIs Used to Publish a Service 8.2. Publishing a Service in a Plain Java Application 8.3. Publishing a Service in an OSGi Container IV. Working with Data Types Expand section "IV. Working with Data Types" Collapse section "IV. Working with Data Types" 9. Basic Data Binding Concepts Expand section "9. Basic Data Binding Concepts" Collapse section "9. Basic Data Binding Concepts" 9.1. Including and Importing Schema Definitions 9.2. XML Namespace Mapping 9.3. The Object Factory 9.4. Adding Classes to the Runtime Marshaller 10. Using XML Elements 11. Using Simple Types Expand section "11. Using Simple Types" Collapse section "11. Using Simple Types" 11.1. Primitive Types 11.2. Simple Types Defined by Restriction 11.3. Enumerations 11.4. Lists 11.5. Unions 11.6. Simple Type Substitution 12. Using Complex Types Expand section "12. Using Complex Types" Collapse section "12. Using Complex Types" 12.1. Basic Complex Type Mapping 12.2. Attributes 12.3. Deriving Complex Types from Simple Types 12.4. Deriving Complex Types from Complex Types 12.5. Occurrence Constraints Expand section "12.5. Occurrence Constraints" Collapse section "12.5. Occurrence Constraints" 12.5.1. Occurrence Constraints on the All Element 12.5.2. Occurrence Constraints on the Choice Element 12.5.3. Occurrence Constraints on Elements 12.5.4. Occurrence Constraints on Sequences 12.6. Using Model Groups 13. Using Wild Card Types Expand section "13. Using Wild Card Types" Collapse section "13. Using Wild Card Types" 13.1. Using Any Elements 13.2. Using the XML Schema anyType Type 13.3. Using Unbound Attributes 14. Element Substitution Expand section "14. Element Substitution" Collapse section "14. Element Substitution" 14.1. Substitution Groups in XML Schema 14.2. Substitution Groups in Java 14.3. Widget Vendor Example Expand section "14.3. Widget Vendor Example" Collapse section "14.3. Widget Vendor Example" 14.3.1. The checkWidgets Operation 14.3.2. The placeWidgetOrder Operation 15. Customizing How Types are Generated Expand section "15. Customizing How Types are Generated" Collapse section "15. Customizing How Types are Generated" 15.1. Basics of Customizing Type Mappings 15.2. Specifying the Java Class of an XML Schema Primitive 15.3. Generating Java Classes for Simple Types 15.4. Customizing Enumeration Mapping 15.5. Customizing Fixed Value Attribute Mapping 15.6. Specifying the Base Type of an Element or an Attribute 16. Using A JAXBContext Object V. Advanced Programming Tasks Expand section "V. Advanced Programming Tasks" Collapse section "V. Advanced Programming Tasks" 17. Using SOAP over JMS 18. Developing Asynchronous Applications Expand section "18. Developing Asynchronous Applications" Collapse section "18. Developing Asynchronous Applications" 18.1. WSDL for Asynchronous Examples 18.2. Generating the Stub Code 18.3. Implementing an Asynchronous Client with the Polling Approach 18.4. Implementing an Asynchronous Client with the Callback Approach 18.5. Catching Exceptions Returned from a Remote Service 19. Using Raw XML Messages Expand section "19. Using Raw XML Messages" Collapse section "19. Using Raw XML Messages" 19.1. Using XML in a Consumer Expand section "19.1. Using XML in a Consumer" Collapse section "19.1. Using XML in a Consumer" 19.1.1. Usage Modes 19.1.2. Data Types 19.1.3. Working with Dispatch Objects 19.2. Using XML in a Service Provider Expand section "19.2. Using XML in a Service Provider" Collapse section "19.2. Using XML in a Service Provider" 19.2.1. Messaging Modes 19.2.2. Data Types 19.2.3. Implementing a Provider Object 20. Working with Contexts Expand section "20. Working with Contexts" Collapse section "20. Working with Contexts" 20.1. Understanding Contexts 20.2. Working with Contexts in a Service Implementation 20.3. Working with Contexts in a Consumer Implementation 20.4. Working with JMS Message Properties Expand section "20.4. Working with JMS Message Properties" Collapse section "20.4. Working with JMS Message Properties" 20.4.1. Inspecting JMS Message Headers 20.4.2. Inspecting the Message Header Properties 20.4.3. Setting JMS Properties 21. Writing Handlers Expand section "21. Writing Handlers" Collapse section "21. Writing Handlers" 21.1. Handlers: An Introduction 21.2. Implementing a Logical Handler 21.3. Handling Messages in a Logical Handler 21.4. Implementing a Protocol Handler 21.5. Handling Messages in a SOAP Handler 21.6. Initializing a Handler 21.7. Handling Fault Messages 21.8. Closing a Handler 21.9. Releasing a Handler 21.10. Configuring Endpoints to Use Handlers Expand section "21.10. Configuring Endpoints to Use Handlers" Collapse section "21.10. Configuring Endpoints to Use Handlers" 21.10.1. Programmatic Configuration 21.10.2. Spring Configuration A. Maven Tooling Reference Expand section "A. Maven Tooling Reference" Collapse section "A. Maven Tooling Reference" Plug-in Setup cxf-codegen-plugin java2ws Index Trademark Disclaimer Third Party Acknowledgements Settings Close Language: English Format: Multi-page Single-page PDF Format: Multi-page Single-page PDF Language and Page Formatting Options Language: English Format: Multi-page Single-page PDF Format: Multi-page Single-page PDF Red Hat Training A Red Hat training course is available for Red Hat Fuse Appendix A. Maven Tooling Reference Appendix A. Maven Tooling Reference Previous Next