Oracle Application Server Containers for J2EE 10g (10.0.3.0.0) Developer Preview
Enterprise Web Services

Content

Introduction

The Oracle Application Server 10g (10.0.3.0) Developer Preview includes the first version of Oracle's JAX-RPC Web Services implementation. It follows the J2EE 1.4 specification, which includes a JAX-RPC 1.1 runtime (see: http://java.sun.com/xml/jaxrpc/) as well as JSR 109 deployment (see http://www.jcp.org/en/jsr/detail?id=109). This document describes the installation steps for running the provided Web Services sample code, it outlines changes against earlier Oracle Web Services implementations, and it lists known restrictions and problems.

Please visit the Oracle Technology Network OTN Web Services Center at http://otn.oracle.com/tech/webservices for current information and to learn about the most recent updates. You can provide feedback and can get questions answered in the OTN Web Services forum at http://www.oracle.com/forums/forum.jsp?forum=97.

Please note that we are also providing the 9i Web Services stack (“Oracle J2EE Web Services”) for backward compatibility. This distribution does not include documentation or sample code for that implementation. Please refer to the original Oracle 9iAS (version 9.0.3 or later) documentation and examples for detailed information.

Installation

Software Requirements

Running the provided JAX-RPC Web Services samples requires the following software.

Environment Setup

The following environment setup must be performed before running any of the examples.

Some of the examples, such as JMS Web Services, CORBA Web Services, and Database Web Services require additional installed software, as well as additional setup steps. Please make sure to follow the instructions provided by their respective how-to files.

Running an OC4J Instance

The OC4J instance must be running. It is recommended that OC4J be started as follows:
java -Xmx256M -jar oc4j.jar.

If OC4J is not running on localhost, port 8888, you will have to modify the ANT script (build.xml) in the respective sample directory to use the correct host and port to your server in the service.url property. In addition, you would need to modify this script if your Web Services connections are made through an HTTP proxy. Add the following two elements to the Java invocation in the "run-demo" target:
<java ...>
<jvmarg value="-Dhttp.proxyHost=your_proxy_host"/>
<jvmarg value="-Dhttp.proxyPort=your_proxy_port"/>
<arg .../> ... </java>

Once you have the server configured and running, just type ant from the top level directory of the example. The service artifacts and implementation class will be compiled and placed into a WAR which is then placed into an EAR. The EAR will be deployed to OC4J. Next the stubs and client will be compiled. Finally the service will be invoked by the client and you should see the output both in the server's message output and on the stdout of the client.

New Features in the OC4J 10g (10.0.3) Developer Preview

Feature Description
JAX-RPC stateless Web service Provides support of building stateless JAX-RPC Web services from Java Class.
JAX-RPC stateful Web service Provides support of building stateful JAX-RPC Web services from Java Class.
Top-down document-literal Web service Provides support for building document-literal Web services starting from WSDL file.
Top-down RPC-literal Web service Provides support for building RPC-literal Web services starting from WSDL file.
JAX-RPC handlers and Handler chains Provides support for creating user defined handlers and handler chains.
SOAP Headers Provides support for creating and processing SOAP Headers.
SOAP with Attachment APIs for Java(SAAJ) Provides support for creating and processing MIME attachments with SAAJ.
Web Services Metadata annotation Provides support for creating Web services of different styles ( rpc/lit, doc/lit rpc/enc etc) with source code Metadata annotation in JavaDoc comments.
EJB 2.1 Web service Provides support for creating Web services from EJB 2.1 stateless session beans using service endpoint model.
EJB 2.0 Web service Provides support for creating Web services from EJB 2.0 stateless session beans .
J2EE 1.4 Web services EJB Client Provides support for creating J2EE 1.4 complaint EJB Web services client.
J2EE 1.4 Web services Application Client Provides support for creating J2EE 1.4 complaint Web Services Application Client .
J2EE 1.4 Web services Web Client Provides support for creating J2EE 1.4 complaint Web Services Web client.
PL/SQL Web services Provides support for creating Web services from PL/SQL stored procedures
SQL DML operations as Web services Provides support for creating Web services from SQL DML operations.
SQL Queries as Web services Provides support for creating Web services from SQL Queries as Web services.
Database Web Services from Java class Provides support for creating Web services from database server-side Java class.
Database Web Service Client Provides support for creating Web services Client in Database via PL/SQL wrapper.
Asynchronous Web services Provides support for creating Asynchronous JAX-RPC Web services from JMS topics and queues.
CORBA Web services Expose CORBA servants as JAX-RPC Web service
WS-I basic profile 1.0 Provides support for WS-I basic profile 1.0

How To Examples for OC4J 10g (10.0.3) Developer Preview

How-To with Web services view download all(zip) Description
JAX-RPC stateless Web service html zip Demonstrates how-to build JAX-RPC web services from Java Class
JAX-RPC stateful Web service html zip Demonstrates how-to build stateful JAX-RPC web services from Java Class
Top-down document-literal Web service html zip Demonstrates how-to build document-literal style Web service starting from WSDL
Top-down RPC-literal Web service html zip Demonstrates how-to build RPC-literal style Web service starting from WSDL
JAX-RPC handlers and handler chains html zip Demonstrates how-to build JAX-RPC handlers and handler chains
SOAP Headers html zip Demonstrates how-to build JAX-RPC web service with support for SOAP headers
SOAP with Attachment API's for Java(SAAJ) html zip Demonstrates how-to build JAX-RPC web service with support for creating and processing MIME attachments with SAAJ
Web Services Metadata annotation html zip Demonstrates how-to build JAX-RPC web service directly from a Java Source with Web Services Metadata annotation in JavaDoc comments
EJB 2.1 Web service html zip Demonstrates how-to build JAX-RPC web service from EJB 2.1 SLSB
EJB 2.0 Web service html zip Demonstrates how-to build JAX-RPC web service from EJB 2.0 SLSB
J2EE 1.4 Web services EJB Client html zip Demonstrates how-to build J2EE 1.4 EJB as Web services client.
J2EE 1.4 Web services Application client html zip Demonstrates how-to build J2EE 1.4 Application client
J2EE 1.4 Web services Web Client html zip Demonstrates how-to build J2EE 1.4 Web client
PL/SQL Web services html zip Demonstrates how-to build Web services form PL/SQL packages
SQL DML operations as Web services html zip Demonstrates how-to expose SQL DML operations as Web service
SQL Queries as Web services html zip Demonstrates how-to expose SQL Queries as Web services
Database Web Services from Java class html zip Demonstrates how-to create embedded Database Java class as Web Service
Database Web Service Client html zip Demonstrates how-to create Database Web services client
Asynchronous Web services html zip Demonstrates how-to create Asynchronous JAX-RPC Web services from JMS topics and queues.
CORBA Web services html zip Demonstrates how-to wrap CORBA Servants as Web services.
WS-I basic profile 1.0 html zip Demonstrates how-to build complete WS-I basic 1.0 profile sample Application