Skip navigation.

Programming WebLogic Web Services

   Previous Next vertical dots separating previous/next from contents/index/pdf Contents View as PDF   Get Adobe Reader

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

Using a Proxy Server with the WebLogic Web Services Client

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

Accessing the MessageContext of a Handler From the Backend Component

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

Implications of Using SSL With Web Services

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

Configuring an External LDAP Server

51acumen.ldif File Contents

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

Composing the SOAP Request

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

SSLKeyException When Trying to Invoke a Web Service Using HTTPS

Autotype Ant Task Not Generating Serialization Classes for All Specified Java Types

Client Gets HTTP 401 Error When Invoking a Non-Secure Web Service

Asynchronous Web Service Client Using JMS Transport Not Receiving Response Messages From WebLogic Server

Running autotype Ant Task on a Large WSDL File Returns java.lang.OutOfMemoryError

Error When Trying to Log Onto the UDDI Explorer

Data Type Non-Compliance with JAX-RPC

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

@wlws:exclude

Customizing WebLogic Web Services

Publishing a Static WSDL File

Creating a Custom WebLogic Web Service Home Page

Configuring Basic Microsoft MIME Types in the Generated web.xml

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