Introduction to WebLogic Web Services

 

Overview of Web Services

Why Use Web Services?

Web Service Standards


BEA Implementation of Web Service Specifications
SOAP
WSDL 1.1
JAX-RPC 1.0
Web Services Security (WS-Security)
UDDI 2.0
Additional Specifications Supported by WebLogic Web Services

 

WebLogic Web Service Features

Unsupported Features

Examples of Creating and Invoking a Web Service

Creating WebLogic Web Services: Main Steps

Roadmap to Common Tasks for Creating Web Services

Editing XML Files

 


Architectural Overview

 

Overview of WebLogic Web Services Architecture

Back-end Component Operation

Back-end Component and SOAP Message Handler Chain Operation

SOAP Message Handler Chain Operation

 


Creating a WebLogic Web Service: A Simple Example

 

Overview of the Web Service Example

Building and Running the Trader WebLogic Web Service Example

Anatomy of the Example


The EJB Java Interfaces and Implementation Class
Remote Interface (Trader.java)
Session Bean Implementation Class (TraderBean.java)
Home Interface (TraderHome.java)
The Non-Built-In Data Type TraderResult
The EJB Deployment Descriptors
ejb-jar.xml
weblogic-ejb-jar.xml
The servicegen Ant Task That Assembles the Web Service
The Client Application to Invoke The Web Service

 


Designing WebLogic Web Services

 

Choosing the Back-end Components of Your Web Service


EJB Back-end Component
Java Class Back-end Component

 

Choosing Between Synchronous or Asynchronous Operations

Choosing RPC-Oriented or Document-Oriented Web Services

Using Built-In and Non-Built-In Data Types

Using SOAP Message Handlers to Intercept the SOAP Message

Mimicking a Conversational (Stateful) WebLogic Web Service

 


Implementing WebLogic Web Services

 

Overview of Implementing a WebLogic Web Service

Examples of Implementing WebLogic Web Services

Implementing a WebLogic Web Service: Main Steps

Writing the Java Code for the Components


Implementing a Web Service By Writing a Stateless Session EJB
Implementing a Web Service By Writing a Java Class
Implementing Non-Built-In Data Types
Implementing a Document-Oriented Web Service
Generating a Partial Implementation From a WSDL File
Running the wsdl2Service Ant Task
Sample build.xml Files for the wsdl2Service Ant Task
Using SOAP Attachments
java.lang.String
javax.activation.DataHandler
Implementing Multiple Return Values
Using Out and In-Out Parameters
Using Holder Classes to Implement Multiple Return Values
Throwing SOAP Fault Exceptions

 

Supported Built-In Data Types


XML Schema-to-Java Mapping for Built-In Data Types
Java-to-XML Mapping for Built-In Data Types

 


Assembling WebLogic Web Services Using Ant Tasks

 

Overview of Assembling WebLogic Web Services Using Ant Tasks

Examples of Assembling WebLogic Web Services

Assembling WebLogic Web Services Using the servicegen Ant Task


What the servicegen Ant Task Does
Assembling WebLogic Web Services Automatically: Main Steps
Creating the Build File That Specifies the servicegen Ant Task

 

Assembling WebLogic Web Services Using Individual Ant Tasks


Assembling a Web Service Starting with Java
Assembling a Web Service Starting with an XML Schema
Running the source2wsdd Ant Task
Running the autotype Ant Task
Running the clientgen Ant Task
Running the wspackage Ant task

 

The Web Service EAR File Package

Non-Built-In Data Types Supported by servicegen and autotype Ant Tasks


Supported XML Non-Built-In Data Types
Supported Java Non-Built-In Data Types
Data Type Non-Compliance with JAX-RPC

 

Non-Roundtripping of Generated Data Type Components

Deploying and Testing WebLogic Web Services


WebLogic Web Services Home Page and WSDL URLs
Denying Access to the WSDL and Home Page of a WebLogic Web Service

 


Invoking Web Services from Client Applications and WebLogic Server

 

Overview of Invoking Web Services


JAX-RPC API 1.0
The Runtime Client JAR Files
Examples of Clients That Invoke Web Services

 

Creating Java Client Applications to Invoke Web Services: Main Steps


Generating the Client JAR File by Running the clientgen Ant Task
Getting Information About a Web Service
Writing the Java Client Application to Invoke a Web Service
Writing a Simple Client Application
Writing a Client That Uses Out or In-Out Parameters

 

Writing an Asynchronous Client Application


Description of the Generated Asynchronous Web Service Client Stub
Writing the Asynchronous Client Java Code

 

Using Web Services System Properties

Invoking Web Services from WebLogic Server


Creating and Using Portable Stubs
Using the VersionMaker Utility to Update Client JAR Files

 

Writing Advanced Java Client Applications


Writing a Dynamic Client That Uses WSDL
Writing a Dynamic Client That Does Not Use WSDL
Writing a Dynamic Client That Uses Non-Built-In Data Types
Writing a J2ME Client
Writing a J2ME Client That Uses SSL

 


Using the WebLogic Web Services APIs

 

Overview of the WebLogic Web Service APIs

Registering Data Type Mapping Information in a Dynamic Client

Accessing HttpSession Information from a Web Service Component

Introspecting the WSDL from a Client Application

 


Using JMS Transport to Invoke a WebLogic Web Service

 

Overview of Using JMS Transport

Specifying JMS Transport for a WebLogic Web Service: Main Steps

Updating the web-services.xml File to Specify JMS Transport

Invoking a Web Service Using JMS Transport

 


Using Reliable SOAP Messaging

 

Overview of Reliable SOAP Messaging


Reliable SOAP Messaging Architecture
Receiver Transactional Context
Guidelines For Programming the EJB That Implements a Reliable Web Service Operation
Guidelines for Programming the Java Class That Implements a Reliable Web Service Operation
Configuring the Transaction
Limitations of Reliable SOAP Messaging

 

Using Reliable SOAP Messaging: Main Steps


Configuring the Sender WebLogic Server
Configuring the Receiver WebLogic Server
Writing the Java Code to Invoke an Operation Reliably
Handling Sender Server Failures
Updating the web-services.xml File Manually for Reliable SOAP Messaging

 


Using Non-Built-In Data Types

 

Overview of Using Non-Built-In Data Types

Creating Non-Built-In Data Types Manually: Main Steps


Writing the XML Schema Data Type Representation
Writing the Java Data Type Representation
Writing the Serialization Class
Creating the Data Type Mapping File
Updating the web-services.xml File With XML Schema Information

 


Creating SOAP Message Handlers to Intercept the SOAP Message

 

Overview of SOAP Message Handlers and Handler Chains

Creating SOAP Message Handlers: Main Steps

Designing the SOAP Message Handlers and Handler Chains

Implementing the Handler Interface


Implementing the Handler.init() Method
Implementing the Handler.destroy() Method
Implementing the Handler.getHeaders() Method
Implementing the Handler.handleRequest() Method
Implementing the Handler.handleResponse() Method
Implementing the Handler.handleFault() Method
Directly Manipulating the SOAP Request and Response Message Using SAAJ
The SOAPPart Object
The AttachmentPart Object
Manipulating Image Attachments in a SOAP Message Handler

 

Extending the GenericHandler Abstract Class

Updating the web-services.xml File with SOAP Message Handler Information

Using SOAP Message Handlers and Handler Chains in a Client Application

 


Configuring Security

 

Overview of Web Services Security

What Type of Security Should You Configure?

Configuring Message-Level Security (Digital Signatures and Encryption)


Main Use Cases
Unimplemented Features of the Web Services Security Core Specification
Terminology
Architectural Overview of Message-Level Security
Configuring Message-Level Security: Main Steps
Configuring The Identity Asserter Provider for the myrealm Security Realm
Updating the servicegen build.xml File
Updating Security Information in the web-services.xml File
Encrypting Passwords in the web-services.xml File
Updating a Java Client to Invoke a Data-Secured Web Service

 

Configuring Transport-Level Security (SSL): Main Steps

Configuring SSL for a Client Application


Using the WebLogic Server-Provided SSL Implementation
Configuring the WebLogic SSL Implementation Programatically
Using SSL Socket Sharing When Using the WebLogic SSL Implementation
Using a Third-Party SSL Implementation
Extending the SSLAdapterFactory Class
Configuring Two-Way SSL For a Client Application
Using a Proxy Server

 

Configuring Access Control Security: Main Steps


Controlling Access to WebLogic Web Services
Securing the Entire Web Service and Its Operations
Securing the Web Service URL
Securing the Stateless Session EJB and Its Methods
Securing the WSDL and Home Page of the Web Service
Specifying the HTTPS Protocol
Coding a Client Application to Authenticate Itself to a Web Service

 

Testing a Secure WebLogic Web Service From Its Home Page

 


Internationalization

 

Overview of Internationalization

Internationalizing a WebLogic Web Service


Specifying the Character Set for a WebLogic Web Service
Updating the web-services.xml File
Setting a WebLogic Server System Property
Order of Precedence of Character Set Configuration Used By WebLogic Server

 

Invoking a Web Service Using a Specific Character Set


Setting the Character Set When Invoking a Web Service
Character Set Settings in HTTP Request Headers Honored by WebLogic Web Services

 


Using SOAP 1.2

 

Overview of Using SOAP 1.2

Specifying SOAP 1.2 for a WebLogic Web Service: Main Steps

Updating the web-services.xml File Manually

Invoking a Web Service Using SOAP 1.2

 


Creating JMS-Implemented WebLogic Web Services

 

Overview of JMS-Implemented WebLogic Web Services

Designing JMS-Implemented WebLogic Web Services


Retrieving and Processing Messages
Example of Using JMS Components

 

Creating JMS-Implemented WebLogic Web Services

Configuring JMS Components for Message-Style Web Services

Assembling JMS-Implemented WebLogic Web Services Using servicegen

Assembling JMS-Implemented WebLogic Web Services Manually


Packaging the JMS Message Consumers and Producers
Updating the web-services.xml File With Component Information
Sample web-services.xml File for JMS Component Web Service

 

Deploying JMS-Implemented WebLogic Web Services

Invoking JMS-Implemented WebLogic Web Services


Invoking an Asynchronous Web Service Operation to Send Data
Invoking a Synchronous Web Service Operation to Send Data

 


Administering WebLogic Web Services

 

Overview of Administering WebLogic Web Services

Using the Administration Console to Administer Web Services

 


Publishing and Finding Web Services Using UDDI

 

Overview of UDDI


UDDI and Web Services
UDDI and Business Registry
UDDI Data Structure

 

WebLogic Server UDDI Features

UDDI 2.0 Server


Configuring the UDDI 2.0 Server
Description of Properties in the uddi.properties File

 

UDDI Directory Explorer

UDDI Client API

Pluggable tModel


XML Elements and Permissible Values
XML Schema for Pluggable tModels
Sample XML for a Pluggable tModel

 


Interoperability

 

Overview of Interoperability

Avoid Using Vendor-Specific Extensions

Stay Current With the Latest Interoperability Tests

Understand the Data Models of Your Applications

Understand the Interoperability of Various Data Types

Results of SOAPBuilders Interoperability Lab Round 3 Tests

Interoperating With .NET

 


Troubleshooting

 

Using the Web Service Home Page to Test Your Web Service


URL Used to Invoke the Web Service Home Page
Testing the Web Service

 

Viewing SOAP Messages


Setting Verbose Mode with Ant
Setting Verbose Mode Programatically

 

Posting the HTTP SOAP Message

Debugging Problems with WSDL

Verifying a WSDL File

Verifying an XML Schema

Debugging Data Type Generation (Autotyping) Problems


Common XML Schema Problems
Common Java Problems

 

Debugging Performance Problems

Performance Hints

Re-Resolving IP Addresses in the Event of a Failure

BindingException When Running clientgen or autotype Ant Task

Client Error When Using the WebLogic Web Service Client to Connect to a Third-Party SSL Server

Client Error When Invoking Operation That Returns an Abstract Type

Including Nillable, Optional, and Empty XML Elements in SOAP Messages

 


Upgrading WebLogic Web Services

 

Overview of Upgrading WebLogic Web Services

Upgrading a 7.0 WebLogic Web Service to 8.1

Upgrading a 6.1 WebLogic Web Service to 8.1


Converting a 6.1 build.xml file to 8.1
Updating the URL Used to Access the Web Service

 


Using WebLogic Workshop With WebLogic Web Services

 

Overview of WebLogic Workshop and WebLogic Web Services


WebLogic Workshop and WebLogic Web Services
EJBGen
Using Meta-Data Tags When Creating EJBs and Web Services

 

Using WebLogic Workshop To Create a WebLogic Web Service: A Simple Example

Using WebLogic Workshop To Create a WebLogic Web Service: A More Complex Example


Description of the Example
Assumptions
The Example
Sample build.xml File
Source Code for Supporting Java Objects
Item.java
PurchaseOrder.java
PurchasingManagerBean.java
PurchaseOrderFactory.java

WebLogic Web Service Deployment Descriptor Elements

 

Overview of web-services.xml

Graphical Representation

Element Reference


clock-precision
clocks-synchronized
components
ejb-link
encryptionKey
enforce-precision
fault
generate-signature-timestamp
handler
handler-chain
handler-chains
inbound-expiry
init-param
init-params
java-class
jms-receive-queue
jms-send-destination
jndi-name
name
operation
operations
outbound-expiry
param
params
password
reliable-delivery
require-signature-timestamp
return-param
security
signatureKey
spec:BinarySecurityTokenSpec
spec:ElementIdentifier
spec:EncryptionSpec
spec:SecuritySpec
spec:SignatureSpec
spec:UsernameTokenSpec
stateless-ejb
timestamp
type-mapping
type-mapping-entry
types
user
web-service
web-services

Web Service Ant Tasks and Command-Line Utilities

 

Overview of WebLogic Web Services Ant Tasks and Command-Line Utilities


List of Web Services Ant Tasks and Command-Line Utilities
Using the Web Services Ant Tasks
Differences in Operating System Case Sensitivity When Manipulating WSDL and XML Schema Files
Setting the Classpath for the WebLogic Ant Tasks
Using the Web Services Command-Line Utilities

 

autotype

clientgen

servicegen


servicegen
service
client
handlerChain
reliability
security

 

source2wsdd

wsdl2Service

wsdlgen

wspackage

source2wsdd Tag Reference

 

Overview of Using source2wsdd Tags

@wlws:webservice

@wlws:operation

@wlws:part partname

Customizing WebLogic Web Services

 

Publishing a Static WSDL File

Creating a Custom WebLogic Web Service Home Page

Assembling a WebLogic Web Service Manually

 

Overview of Assembling a WebLogic Web Service Manually

Assembling a WebLogic Web Service Manually: Main Steps

Understanding the web-services.xml File

Creating the web-services.xml File Manually: Main Steps


Creating the <components> Element
Creating <operation> Elements
Specifying the Type of Operation
Specifying the Parameters and Return Value of the Operation

 

Examining Different Types of web-services.xml Files


EJB Component Web Service with Built-In Data Types
EJB Component Web Service with Non-Built-In Data Types
EJB Component and SOAP Message Handler Chain Web Service
SOAP Message Handler Chain Web Service

Skip footer navigation  Back to Top Previous Next