Part I. JEUS 8 Web Services

JEUS 8 web service supports JAX-WS web service which is the Java EE 7 web service standard. The most important feature of JAX-WS web service is the ability to freely implement POJO web services without configuration files. The POJO web service is implemented using the annotation function of Java SE 5.

This document discusses how to implement the JAX-WS web service and run the service on JEUS, and how to create a client which invokes JAX-WS web service and handle the declaration of custom binding, handlers, and messages at the XML level. It also describes how to transmit a message more efficiently through asynchronous and MIME attachments, how to implement faster web services, and finally how to handle web services, UDDI, JAXR, and XML for interoperation in various ways.

The following chapters explain how JEUS 8 web services support JAX-WS web services.

Table of Contents

3. Implementing JEUS Web Services
3.1. Overview
3.2. Implementing Web Services from Java Classes
3.3. Implementing EJB Web Services
3.4. Implementing Web Services from WSDL
4. Creating and Deploying Web Services
4.1. Overview
4.2. Creating and Deploying Java Class Web Services
4.3. Creating and Deploying EJB Web Services
4.4. Creating and Deploying WSDL Web Services
4.5. How to Determine an Endpoint Address
4.5.1. Servlet Endpoint
4.5.2. EJB Endpoint
5. Invoking Web Services
5.1. Overview
5.2. Web Service Invocation Using Dynamic Proxy
5.2.1. Creating Client Artifacts
5.2.2. Java SE Client Invocation
5.2.3. Java EE Client Invocation
5.3. Web Service Invocation Using Dispatch Method
6. Standardized Binding Declaration and Customization
6.1. Overview
6.2. Declaring Standard Binding
6.2.1. Declaring in External Documents (Files)
6.2.2. Declaring in WSDL Documents
6.3. Standard Binding Customization
6.3.1. Global Bindings
6.3.2. Customizing a Package Name
6.3.3. Wrapper Style
6.3.4. Asynchronization
6.3.5. Provider Interface
6.3.6. Customizing Class Name
6.3.7. Customizing Java Methods
6.3.8. Customizing Java Parameters
6.3.9. Customizing XML Schema
6.3.10. Customizing Handler Chains
7. Handler Framework
7.1. Overview
7.2. Handler Chain Execution Order
7.3. Handler Class Organization
7.3.1. Declaring Handler Classes
7.4. Configuring a Handler Class
7.4.1. Creating a Web service from Java Class
7.4.2. Creating a Web Service from WSDL
7.4.3. Creating a Client
7.5. Example of a Web Service that Use a Handler Chain
7.6. Executing Handler Framework in Web Services
8. Provider and Dispatch Interfaces
8.1. Overview
8.2. Provider Interface for Service Endpoint
8.2.1. Provider Interface
8.2.2. Example of a Provider Interface
8.2.3. Executing a Provider Interface
8.3. Client Dispatch Interface
8.3.1. Dispatch Interface
8.3.2. Example of a Dispatch Interface
8.3.3. Executing a Dispatch Interface
8.4. XML/HTTP Binding
8.4.1. RESTful Web Services
8.4.2. Example of a RESTful Web Service
8.4.3. Executing a RESTful Web Service
9. Asynchronous Web Services
9.1. Overview
9.2. Asynchronous Client Operation
9.2.1. Using a Service Endpoint Interface Stub with Asynchronous Methods
9.2.2. Using a Dispatch Interface
9.3. Asynchronous Web Services
9.3.1. Configuring Asynchronous Web Services
10. Transmitting Messages Using MIME Attachment
10.1. Overview
10.2. MTOM/XOP
10.2.1. Basic Operations
10.2.2. Binary Data Attachment Size Configuration
10.2.3. Example of MTOM/XOP
10.2.4. Executing MTOM/XOP Example
10.3. swaRef
10.3.1. Using swaRef
10.3.2. Example of swaRef
10.3.3. Executing swaRef Example
10.4. Processing Attachments Using Streaming Method
11. Web Services Using Fast Infoset
11.1. Overview
11.2. Using Fast Infoset
11.2.1. Content Negotiation
11.3. Example of Fast Infoset
11.4. Executing Fast Infoset Web Services
12. JAX-WS JMS Transport
12.1. Overview
12.2. Configuring JAX-WS JMS Transport
12.2.1. Configuring a JMS Server
12.2.2. Creating a Web Service
12.2.3. Configuring a WSDL
12.2.4. Creating a Web Service Client
13. Web Service Policy
13.1. Overview
13.2. Web Service Policy (WS-Policy)
13.3. Server Policy
13.3.1. Creating a Web Service from WSDL
13.3.2. Creating a Web Service from Java Classes
13.4. Client Policy
14. Web Services Addressing
14.1. Overview
14.2. Server Configurations
14.2.1. Configuring from Java Class
14.2.2. Configuring from WSDL
14.3. Client Configurations
14.4. Example
14.5. Executing the Example
15. Reliable Messaging
15.1. Overview
15.2. Server Settings
15.2.1. Using WSDL
15.2.2. Using Java Class
15.3. Client Settings
15.4. Example
15.5. Executing the Example
16. Web Service Transactions
16.1. Overview
16.2. Server Applications
16.2.1. Using WSDL
16.2.2. Using Java Class
16.3. Client Settings
16.4. Coordinator Service
16.5. Web Service Transaction Example
17. Web Service Security
17.1. Overview
17.2. Transport-level Security
17.3. Message-level Security
17.3.1. Web Service Security Policy
17.3.2. Web Service Security
17.3.3. Web Services Secure Conversation
17.3.4. Web Service Trust
17.4. Message Level Security Configurations
17.4.1. Common Configurations
17.4.2. Improving Symmetric Binding through Username Authentication
17.4.3. Mutual Certificates Security
17.4.4. SAML Authentication through SSL
17.4.5. Secure Conversation
17.4.6. Web Service Trust (WS-Trust)
17.4.7. Client Execution
17.5. How to Migrate JAX-RPC (JEUS 5) Web Service Security
17.5.1. Encryption
17.5.2. Signature
17.5.3. Timestamp
17.5.4. Username Token
17.6. How to Invoke Access-Controlled Web Services
17.6.1. Creating Portable Artifacts
17.6.2. Creating Web Service Clients
18. Server-Sent Event
18.1. Overview
18.2. Server-Sent Events (SSE) Support in the JAX-RS Resource
18.2.1. Simple SSE Resource Method
18.3. SSE Event Processing in the JAX-RS Client
18.3.1. SSE Event Reading by using EventInput
18.3.2. Asynchronous SSE Processing by using EventSource
19. UDDI
19.1. Overview
19.1.1. Using UDDI
19.2. Operating UDDI Server in JEUS
19.2.1. Creating UDDI DataStore
19.2.2. Deploying JEUS UDDI Server
19.2.3. Configuring UDDI Server
19.2.4. Adding a New User
19.2.5. Starting UDDI Server
19.3. Using UDDI Explorer in JEUS Server
19.3.1. Querying UDDI Registry
19.3.2. Publishing UDDI Registry
19.3.3. Configuring JEUS UDDI Explorer
19.4. Creating UDDI Client
19.4.1. Creating UDDI Client
19.4.2. Compiling UDDI Client
19.4.3. Executing UDDI Client
19.5. How to Use XML Digital Signature
19.5.1. Digital Signature
19.5.2. How to Create XML Signature in UDDI Client
19.5.3. Verifying XML signature in UDDI Client
19.6. How to Use UDDI Subscription
19.6.1. Basic Concept
19.6.2. How to Create UDDI Subscription
19.6.3. UDDI Subscription Example
19.6.4. UDDI Subscription Client Programming
19.6.5. Configurations for Receiving E-Mail Notifications
19.7. How to Use UDDI WSDL Publishing
19.7.1. UDDI WSDL Publishing
19.7.2. Using wsdl2uddi
20. XML of JEUS Web Services
20.1. Overview
20.2. Java Architecture for XML Binding (JAXB)
20.2.1. Binding Compiler (XJC) Related Programming Techniques
20.2.2. Schemagen Programming Techniques
20.3. Java Standard API for XML Processing (JAXP)
20.3.1. Java Streaming APIs for XML Parser (StAX)