Fusion Middleware Documentation
Advanced Search


Understanding WebLogic Web Services for Oracle WebLogic Server
Close Window

Table of Contents

Show All | Collapse

2 Features and Standards Supported by WebLogic Web Services

This chapter describes the features and standards supported by WebLogic Web services. Many specifications that define Web service standards are written so as to allow for broad use of the specification throughout the industry. The Oracle implementation of a particular specification might not cover all possible usage scenarios covered by the specification.

Note:

The JAX-WS implementation in Oracle WebLogic Server is extended from the JAX-WS Reference Implementation (RI) developed by the GlassFish Community (see https://jax-ws.java.net/). All features defined in the JAX-WS specification (JSR-224) are fully supported by Oracle WebLogic Server.

The JAX-WS RI also contains a variety of extensions, provided by Glassfish contributors. Unless specifically documented, JAX-WS RI extensions are not supported for use in Oracle WebLogic Server.

Oracle considers interoperability of Web service platforms to be more important than providing support for all possible edge cases of the Web service specifications. Oracle complies with the following specifications from the Web Services Interoperability Organization and considers them to be the baseline for Web services interoperability:

The WebLogic Web service documentation set does not necessarily document all of the specification requirements; it does, however, document features that are beyond the requirements of these specifications.

The following table summarizes the features and specifications supported by WebLogic Web services.

Table 2-1 Features and Standards Supported by WebLogic Web Services

Feature Description JAX-WS JAX-RS JAX-RPC

Programming model (based on metadata annotations) and runtime architecture

JSR 109: Implementing Enterprise Web Services—Programming model and runtime architecture for implementing Web services in Java that run on a Java EE application server, such as WebLogic Server. See JSR 109: Implementing Enterprise Web Services 1.3.

Version 1.3

N/A

Version 1.3

Programming model (based on metadata annotations) and runtime architecture

Web Services Metadata for the Java Platform 2.0 (JSR-181)—Standard annotations that you can use in your Java Web service (JWS) file to facilitate the programming of Web services. See Web Services Metadata for the Java Platform 2.0 (JSR-181).

Supports

N/A

Supports

Programming APIs

Java API for XML-based Web Services (JAX-WS)—Standards-based API for coding, assembling, and deploying Java Web services. The integrated stack includes JAX-WS 2.1, JAXB 2.1, and SAAJ 1.3. See Java API for XML-based Web Services (JAX-WS) 2.2.

See also Developing JAX-WS Web Services for Oracle WebLogic Server.

Version 2.2

N/A

N/A

Programming APIs

Java API for RESTful Web Services (JAX-RS)—Provides a standard JAVA API for developing Web services based on the Representational State Transfer (REST) architectural style. See Java API for RESTful Web Services (JAX-RS) 1.1.

See also Developing and Securing RESTful Web Services for Oracle WebLogic Server.

N/A

1.1 (Jersey 1.13 JAX-RS RI)

N/A

Programming APIs

Java API for XML-based RPC (JAX-RPC)—Java APIs for making XML-based remote procedure calls (RPC). See Java API for XML-based RPC (JAX-RPC) 1.1.

See also Developing JAX-RPC Web Services for Oracle WebLogic Server.

N/A

N/A

Version 1.1

Data binding

Java Architecture for XML Binding (JAXB)—Implementation used to bind an XML schema to a representation in Java code. JAXB is supported by JAX-WS Web services only. See Java Architecture for XML Binding (JAXB) 2.2.

See also "Using JAXB Data Binding" in Developing JAX-WS Web Services for Oracle WebLogic Server.

Version 2.2

Version 2.2

N/A

Data binding

Apache XMLBeans—A technology for binding XML schema to Java types and for accessing XML data in a variety of ways. XMLBeans is the default binding technology for JAX-RPC Web services. See Apache XMLBeans 2.0.

See also "Understanding Data Binding" in Developing JAX-RPC Web Services for Oracle WebLogic Server.

N/A

N/A

2.0

Web service description

Web Services Description Language (WSDL)—XML-based specification that describes a Web service. See Web Services Description Language (WSDL) 1.1.

See also:

Version 1.1

N/A

Version 1.1

Web service description

Web Application Description Language (WADL)—XML-based specification that provides a machine-readable description of HTTP-based Web applications. See Web Application Description Language (WADL) 2009 Membership Submission.

N/A

2009 Member Submission

N/A

Web service description

Web Services Policy Framework (WS-Policy)—General purpose model and corresponding syntax to describe and communicate the policies of a Web service. See Web Services Policy Framework (WS-Policy) 1.5 and 1.2.

Versions 1.5 and 1.2

N/A

Versions 1.5 and 1.2

Web service description

Web Services Policy Attachment (WS-PolicyAttachment)—Abstract model and an XML-based expression grammar for policies. See Web Services Policy Attachment (WS-Policy Attachment) 1.5 and 1.2.

Versions 1.5 and 1.2

N/A

Versions 1.5 and 1.2

Data exchange between Web service and requesting client

Simple Object Access Protocol (SOAP)—Lightweight XML-based protocol used to exchange information in a decentralized, distributed environment. See Simple Object Access Protocol (SOAP) 1.1 and 1.2.

Versions 1.2 and 1.1

N/A

Versions 1.2 and 1.1

Data exchange between Web service and requesting client

SOAP with Attachments API for Java (SAAJ) 1.3—Implementation that developers can use to produce and consume messages conforming to the SOAP 1.1 specification and SOAP with Attachments notes. See SOAP with Attachments API for Java (SAAJ) 1.3.

Version 1.3

N/A

Version 1.3

Security

Web Services Security (WS-Security)—Standard set of SOAP [SOAP11, SOAP12] extensions that can be used when building secure Web services to implement message content integrity and confidentiality. See Web Services Security (WS-Security) 1.1 and 1.0.

See also Securing WebLogic Web Services for Oracle WebLogic Server.

Versions 1.1 and 1.0

N/A

Versions 1.1 and 1.0

Security

Web Services Security Policy (WS-SecurityPolicy)—Set of security policy assertions for use with the WS-Policy framework. See Web Services Security Policy (WS-SecurityPolicy) 1.3.

See also Securing WebLogic Web Services for Oracle WebLogic Server.

Version 1.3

N/A

Version 1.3

Security

Security Assertion Markup Language (SAML)—XML standard for exchanging authentication and authorization data between security domains. See Security Assertion Markup Language (SAML) 2.0 and 1.1.

See also Securing WebLogic Web Services for Oracle WebLogic Server.

Versions 2.0 and 1.1

N/A

Versions 2.0 and 1.1

Security

Security Assertion Markup Language (SAML) Token Profile—Set of WS-Security SOAP extensions that implement SOAP message authentication and encryption. See Security Assertion Markup Language (SAML) Token Profile 1.1 and 1.0.

See also Securing WebLogic Web Services for Oracle WebLogic Server.

Versions 1.1 and 1.0

N/A

Versions 1.1 and 1.0

Reliable communication

Web Services Addressing (WS-Addressing)—Transport-neutral mechanisms to address Web services and messages. See Web Services Addressing (WS-Addressing) 1.0 and 2004/08 Member Submission.

Version 1.0 and 2004/08

N/A

Version 1.0 and 2004/08

Reliable communication

Web Services Reliable Messaging (WS-ReliableMessaging)—Implementation that enables two endpoints (Web service and client) running on different WebLogic Server instances to communicate reliably in the presence of failures in software components, systems, or networks. See Web Services Reliable Messaging (WS-ReliableMessaging).

See also:

Versions 1.2, 1.1

N/A

Version 1.1 and 1.0

Reliable communication

Web Services Reliable Messaging Policy Assertion (WS-RM Policy)—Domain-specific policy assertion for reliable messaging for use with WS-Policy and WS-ReliableMessaging. See Web Services Reliable Messaging Policy Assertion (WS-RM Policy).

See also:

Versions 1.2 and 1.1

N/A

Versions 1.1 and 1.0

Reliable communication

Web Services Trust Language (WS-Trust)—Extensions that build on Web Services Security (WS-Security) to secure asynchronous communication. See Web Services Trust Language (WS-Trust).

See also "Configuring Message-Level Security" in Securing WebLogic Web Services for Oracle WebLogic Server.

Version 1.4 and 1.3

N/A

Version 1.3

Reliable communication

Web Services Secure Conversation Language (WS-SecureConversation)—Extensions that build on Web Services Security (WS-Security) and Web Services Trust Language (WS-Trust) to secure asynchronous communication. See Web Services Secure Conversation Language (WS-SecureConversation).

See also "Configuring Message-Level Security" in Securing WebLogic Web Services for Oracle WebLogic Server.

Version 1.4

N/A

Version 1.3

Asynchronous communication

Asynchronous Request Response—When you invoke a Web service synchronously, the invoking client application waits for the response to return before it can continue with its work. In cases where the response returns immediately, this method of invoking the Web service is common. However, because request processing can be delayed, it is often useful for the client application to continue its work and handle the response later on. This can be accomplished using asynchronous Web service invocation. For example, see:

Supported

Supported

Supported

Asynchronous communication

WS-MakeConnection—Provides a mechanism for the transfer of messages between two endpoints when the sending endpoint is unable to initiate a new connection to the receiving endpoint. See Web Services MakeConnection 1.1.

See also "Developing Asynchronous Clients" in Developing JAX-WS Web Services for Oracle WebLogic Server.

Version 1.1

N/A

N/A

Atomic transactions

Web Services Atomic Transaction—Defines the Atomic Transaction coordination type that is to be used with the extensible coordination framework described in the Web Services Coordination specification. The WS-AtomicTransaction and WS-Coordination specifications define an extensible framework for coordinating distributed activities among a set of participants. See Web Services Atomic Transaction (WS-AtomicTransaction) Version 1.2, 1.1, and 1.0.

See also "Using Web Services Atomic Transactions" in Developing JAX-WS Web Services for Oracle WebLogic Server.

Note: For JAX-RPC similar functionality can be accomplished using @WebMethod inside a transaction (@weblogic.jws.Transactional). For more information, see "weblogic.jws.Transaction" in WebLogic Web Services Reference for Oracle WebLogic Server.

Versions 1.2, 1.1, and 1.0

N/A

N/A (see Note in description)

Atomic transactions

Web Services Coordination—Defines an extensible framework for providing protocols that coordinate the actions of distributed applications. The WS-AtomicTransaction and WS-Coordination specifications define an extensible framework for coordinating distributed activities among a set of participants. See Web Services Coordination (WS-Coordination) Version 1.2, 1.1, and 1.0.

See also "Using Web Services Atomic Transactions" in Developing JAX-WS Web Services for Oracle WebLogic Server.

Versions 1.2, 1.1, and 1.0

N/A

N/A

Client event notification

Web service callbacks—Callbacks notify a client of your Web service that some event has occurred. For example, you can notify a client when the results of that client's request are ready, or when the client's request cannot be fulfilled.

For more information, see:

Supported

Not supported

Supported

Optimizing XML transmission

Fast Infoset—Compressed binary encoding format that provides a more efficient serialization than the text-based XML format. Fast Infoset optimizes both document size and processing performance. See "Fast Infoset".

See also "Optimizing XML Transmission Using Fast Infoset" in Developing JAX-WS Web Services for Oracle WebLogic Server.

Supported

Not supported

Not supported

Optimizing XML transmission

Message Transmission Optimization Mechanism (MTOM)—Defines a method for optimizing the transmission of XML data of type xs:base64Binary or xs:hexBinary in SOAP messages. For more information, see:

Supported

Not supported

Supported

SOAP Over JMS Transport

SOAP over JMS transport—Typically, client applications use HTTP/S as the connection protocol when invoking a WebLogic Web service. You can, however, configure a WebLogic Web service so that client applications use JMS as the transport instead. See "SOAP Over JMS Transport 1.0".

For more information, see:

Supported

Not supported

Supported

Stand-alone Java SE client access

Stand-alone Java SE client JAR file—If your computer does not have WebLogic Server installed, you can still invoke a Web service by using the stand-alone WebLogic Web services client JAR file. For more information, see:

Supported

Supported

Supported

Advertisement (registration and discovery)

Universal Description, Discovery, and Integration (UDDI)—The UDDI v2.0 registry and UDDIExplorer applications have been removed in this release. Customers are encouraged to consider upgrading to Oracle Enterprise Repository or Oracle Service Registry, which provide SOA visibility and governance. For more information, see http://www.oracle.com/us/technologies/soa/soa-governance/index.html. From the list of products at the bottom of the page, select Oracle Service Registry. On the lower right, expand the Brochures and Data Sheets section to access the Oracle Enterprise Repository and Oracle Service Registry for SOA Governance data sheet.

N/A

N/A

N/A

Advertisement (registration and discovery)

Java API for XML Registries (JAXR)—Uniform and standard Java API for accessing different kinds of XML Registries. See Java API for XML Registries (JAXR) 1.0.

Version 1.0

N/A

Version 1.0


The following sections describe the specifications in more detail. Specifications are listed in alphabetical order. Additional specifications that WebLogic Web services support are listed in Additional Specifications Supported by WebLogic Web Services.

A Note About JAX-WS 2.2 RI/JDK 7.0 Extensions

A subset of the APIs described in this document (such as com.sun.xml.ws.developer APIs) are supported as an extension to the JDK 7.0 or JAX-WS 2.2 Reference Implementation (RI). Because the APIs are not provided as part of the JDK 7.0 or WebLogic Server software, they are subject to change. The APIs include, but are not limited to:

com.sun.xml.ws.api.server.AsyncProvider
com.sun.xml.ws.client.BindingProviderProperties
com.sun.xml.ws.developer.JAXWSProperties
com.sun.xml.ws.developer.SchemaValidation
com.sun.xml.ws.developer.SchemaValidationFeature
com.sun.xml.ws.developer.StreamingAttachment
com.sun.xml.ws.developer.StreamingAttachmentFeature
com.sun.xml.ws.developer.StreamingDataHandler

Apache XMLBeans 2.0

Apache XMLBeans 2.0, described at http://xmlbeans.apache.org, provides a technology for binding XML schema to Java types and for accessing XML data in a variety of ways. XMLBeans uses XML Schema to compile Java interfaces and classes that use to access and modify XML instance data. XMLBeans is the default binding technology for JAX-RPC Web services.

Fast Infoset

Fast Infoset is a compressed binary encoding format that provides a more efficient serialization than the text-based XML format. Fast Infoset optimizes both document size and processing performance.

When enabled, Fast Infoset converts the XML Information Set in the SOAP envelope into a compressed binary format before transmitting the data. Fast Infoset optimizes encrypted and signed messages, MTOM-enabled messages, and SOAP attachments, and supports both HTTP and JMS transports.

The Fast Infoset specification, ITU-T Rec. X.891 and ISO/IEC 24824-1 (Fast Infoset) is defined by both the ITU-T and ISO standards bodies. The specification can be downloaded from the ITU Web site: http://www.itu.int/rec/T-REC-X.891-200505-I/en

For more information, see "Optimizing XML Transmission Using Fast Infoset" in Developing JAX-WS Web Services for Oracle WebLogic Server.

Java API for RESTful Web Services (JAX-RS) 1.1

The Java API for RESTful Web Services (JAX-RS) specification described at http://jcp.org/en/jsr/detail?id=311, provides a standard JAVA API for developing Web services based on the Representational State Transfer (REST) architectural style.

WebLogic Server supports Jersey 1.13 JAX-RS Reference Implementation (RI), which is a production quality implementation of the JSR-311 JAX-RS 1.1 specification. As required, you can use a more recent version of the Jersey JAX-RS RI.

For more information, see Developing and Securing RESTful Web Services for Oracle WebLogic Server.

Java API for XML Registries (JAXR) 1.0

The Java API for XML Registries (JAXR) specification, described at http://java.sun.com/webservices/jaxr, provides a uniform and standard Java API for accessing different kinds of XML Registries. An XML registry is an enabling infrastructure for building, deploying, and discovering Web services.

JAXR enables Java software programmers to use a single, easy-to-use abstraction API to access a variety of XML registries. Simplicity and ease of use are facilitated within JAXR by a unified JAXR information model, which describes content and metadata within XML registries.

Java API for XML-based RPC (JAX-RPC) 1.1

Namespace: http://java.sun.com/xml/ns/jax-rpc

The Java API for XML-based RPC (JAX-RPC) specification, described at https://jax-rpc.java.net/, is a specification that defines the Java APIs for making XML-based remote procedure calls (RPC). In particular, these APIs are used to invoke and get a response from a Web service using SOAP 1.1, and XML-based protocol for exchange of information in a decentralized and distributed environment.

WebLogic Server implements all required features of the JAX-RPC Version 1.1 specification. Additionally, WebLogic Server implements optional data type support, as described in "Understanding Data Binding" in Developing JAX-RPC Web Services for Oracle WebLogic Server. WebLogic Server does not implement optional features of the JAX-RPC specification, other than what is described in this chapter.

For more information, see Developing JAX-RPC Web Services for Oracle WebLogic Server.

Note:

Because JAX-WS is the successor to the JAX-RPC and it implements many of the new features in Java EE 6, Oracle recommends that you develop Web services with JAX-WS. JAX-RPC is considered legacy and the specification is no longer evolving.

Java API for XML-based Web Services (JAX-WS) 2.2

Namespace: http://java.sun.com/xml/ns/jaxws

The Java API for XML-based Web Services (JAX-WS) specification, described at http://jcp.org/aboutJava/communityprocess/mrel/jsr224/index2.html, is a standards-based API for coding, assembling, and deploying Java Web services. The "integrated stack" includes JAX-WS 2.2, Java Architecture for XML Binding (JAXB) 2.2 and SOAP with Attachments API for Java (SAAJ) 1.3.

For more information, see Developing JAX-WS Web Services for Oracle WebLogic Server.

Java Architecture for XML Binding (JAXB) 2.2

Namespace: http://java.sun.com/xml/ns/jaxb

The Java Architecture for XML Binding (JAXB) specification, described at http://jcp.org/en/jsr/detail?id=222, provides a convenient way to bind an XML schema to a representation in Java code. This makes it easy for you to incorporate XML data and processing functions in applications based on Java technology without having to know much about XML itself.

For more information, see "Using JAXB Data Binding" in Developing JAX-WS Web Services for Oracle WebLogic Server.

Note:

JAXB cannot be used with JAX-RPC.

JSR 109: Implementing Enterprise Web Services 1.3

The JSR 109: Implementing Enterprise Web Services specification, described at http://www.jcp.org/en/jsr/detail?id=109, defines the programming model and runtime architecture for implementing Web services in Java that run on a Java EE application server, such as WebLogic Server. In particular, it specifies that programmers implement Java EE Web services using one of two components:

  • Java class running in the Web container

  • Stateless session EJB running in the EJB container

The specification also describes a standard Java EE Web services packaging format, deployment model, and runtime services, all of which are implemented by WebLogic Web services.

Security Assertion Markup Language (SAML) 2.0 and 1.1

Namespaces:

urn:oasis:names:tc:SAML:2.0:assertion

urn:oasis:names:tc:SAML:2.0:protocol

The Security Assertion Markup Language (SAML) specification provides an XML standard for exchanging authentication and authorization data between security domains. For more information, see:

For more information, see Securing WebLogic Web Services for Oracle WebLogic Server.

Security Assertion Markup Language (SAML) Token Profile 1.1 and 1.0

Namespace: urn:oasis:names:tc:SAML:1.0:assertion

The Web Services Security: SAML Token Profile 1.1 specification defines a set of SOAP extensions that implement SOAP message authentication and encryption. For more information, see:.

For more information, see Securing WebLogic Web Services for Oracle WebLogic Server.

Simple Object Access Protocol (SOAP) 1.1 and 1.2

Namespace: http://schemas.xmlsoap.org/wsdl/soap

Simple Object Access Protocol (SOAP), described at http://www.w3.org/TR/SOAP, is a lightweight XML-based protocol used to exchange information in a decentralized, distributed environment. WebLogic Server includes its own implementation of versions 1.1 and 1.2 of the SOAP specification. The protocol consists of:

  • An envelope that describes the SOAP message. The envelope contains the body of the message, identifies who should process it, and describes how to process it.

  • A set of encoding rules for expressing instances of application-specific data types.

  • A convention for representing remote procedure calls and responses.

This information is embedded in a Multipurpose Internet Mail Extensions (MIME)-encoded package that can be transmitted over HTTP, HTTPs, or other Web protocols. MIME is a specification for formatting non-ASCII messages so that they can be sent over the Internet.

The following example shows a SOAP 1.1 request for stock trading information embedded inside an HTTP request:

POST /StockQuote HTTP/1.1
Host: www.sample.com:7001
Content-Type: text/xml; charset="utf-8"
Content-Length: nnnn
SOAPAction: "Some-URI"

<SOAP-ENV:Envelope 
   xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
         SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
     <SOAP-ENV:Body>
          <m:GetLastStockQuote xmlns:m="Some-URI">
               <symbol>ORCL</symbol>
          </m:GetLastStockQuote>
     </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

By default, WebLogic Web services use version 1.1 of SOAP; if you want your Web services to use version 1.2, you must specify the binding type in the JWS file that implements your service.

SOAP Over JMS Transport 1.0

SOAP over Java Messaging Service (JMS) transport is supported as a connection protocol for JAX-WS and JAX-RPC WebLogic Web services.

For JAX-WS, this feature supports the new W3C SOAP over Java Message Service 1.0 standard (February 2012), available at: http://www.w3.org/TR/soapjms/

For more information, see:

SOAP with Attachments API for Java (SAAJ) 1.3

The SOAP with Attachments API for Java (SAAJ) specification, described at https://saaj.java.net, describes how developers can produce and consume messages conforming to the SOAP 1.1 specification and SOAP with Attachments notes.

The single package in the API, javax.xml.soap, provides the primary abstraction for SOAP messages with MIME attachments. Attachments may be entire XML documents, XML fragments, images, text documents, or any other content with a valid MIME type. In addition, the package provides a simple client-side view of a request-response style of interaction with a Web service.

Web Application Description Language (WADL) 2009 Membership Submission

Namespace: http://wadl.dev.java.net/2009/02/wadl.xsd

Web Application Description Language (WADL), described at http://www.w3.org/Submission/wadl, is an XML-based specification that provides a machine-readable description of HTTP-based Web applications. Developers of WebLogic Web services do not need to create the WADL files; you generate these files automatically as part of the WebLogic Web services development process.

For more information, see Developing and Securing RESTful Web Services for Oracle WebLogic Server.

Web Services Addressing (WS-Addressing) 1.0 and 2004/08 Member Submission

Namespaces:

http://www.w3.org/2005/08/addressing

http://www.w3.org/2007/05/addressing/metadata

The Web Services Addressing (WS-Addressing) Core specification, described at http://www.w3.org/TR/ws-addr-core, provides transport-neutral mechanisms to address Web services and messages. In particular, the specification defines a number of XML elements used to identify Web service endpoints and to secure end-to-end endpoint identification in messages.

In addition to 1.0, the current release supports Web Services Addressing (August 2004 Member Submission), described at http://www.w3.org/Submission/2004/SUBM-ws-addressing-20040810.

The Web Services Addressing (WS-Addressing) Metadata specification, described at http://www.w3.org/TR/ws-addr-metadata, defines how the abstract properties defined in Web Services Addressing Core are described using WSDL and how WS-Policy can be used to indicate the support of WS-Addressing by a Web service.

Web Services Atomic Transaction (WS-AtomicTransaction) Version 1.2, 1.1, and 1.0

The Web Services Atomic Transaction (WS-AtomicTransaction) specification, described at http://docs.oasis-open.org/ws-tx/wstx-wsat-1.2-spec-cs-01/wstx-wsat-1.2-spec-cs-01.html, defines the Atomic Transaction coordination type that is to be used with the extensible coordination framework described in the Web Services Coordination specification. The WS-AtomicTransaction and WS-Coordination specifications define an extensible framework for coordinating distributed activities among a set of participants.

For more information, see "Using Web Services Atomic Transactions" in Developing JAX-WS Web Services for Oracle WebLogic Server.

Web Services Coordination (WS-Coordination) Version 1.2, 1.1, and 1.0

The Web Services Coordination (WS-Coordination) specification, described at http://docs.oasis-open.org/ws-tx/wstx-wscoor-1.2-spec-cs-01/wstx-wscoor-1.2-spec-cs-01.html, defines an extensible framework for providing protocols that coordinate the actions of distributed applications. The WS-AtomicTransaction and WS-Coordination specifications define an extensible framework for coordinating distributed activities among a set of participants.

Web Services Description Language (WSDL) 1.1

Namespace: http://schemas.xmlsoap.org/wsdl

Web Services Description Language (WSDL), described at http://www.w3.org/TR/wsdl, is an XML-based specification that describes a Web service. A WSDL document describes Web services operations, input and output parameters, and how a client application connects to the Web service.

Developers of WebLogic Web services do not need to create the WSDL files; you generate these files automatically as part of the WebLogic Web services development process.

The following example, for informational purposes only, shows a WSDL file that describes the stock trading Web services StockQuoteService that contains the method GetLastStockQuote:

<?xml version="1.0"?>
  <definitions name="StockQuote"
               targetNamespace="http://sample.com/stockquote.wsdl"
               xmlns:tns="http://sample.com/stockquote.wsdl"
               xmlns:xsd="http://www.w3.org/2000/10/XMLSchema"
               xmlns:xsd1="http://sample.com/stockquote.xsd"
               xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
               xmlns="http://schemas.xmlsoap.org/wsdl/">
      <message name="GetStockPriceInput">
          <part name="symbol" element="xsd:string"/>
      </message>
      <message name="GetStockPriceOutput">
          <part name="result" type="xsd:float"/>
      </message>
      <portType name="StockQuotePortType">
          <operation name="GetLastStockQuote">
             <input message="tns:GetStockPriceInput"/>
             <output message="tns:GetStockPriceOutput"/>
          </operation>
      </portType>
      <binding name="StockQuoteSoapBinding" type="tns:StockQuotePortType">
          <soap:binding style="rpc" 
                        transport="http://schemas.xmlsoap.org/soap/http"/>
          <operation name="GetLastStockQuote">
             <soap:operation soapAction="http://sample.com/GetLastStockQuote"/>
             <input>
                 <soap:body use="encoded" namespace="http://sample.com/stockquote"
                           encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
             </input>
             <output>
             <soap:body use="encoded" namespace="http://sample.com/stockquote"
                           encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
             </output>
          </operation>>
      </binding>
      <service name="StockQuoteService">
          <documentation>My first service</documentation>
          <port name="StockQuotePort" binding="tns:StockQuoteSoapBinding">
             <soap:address location="http://sample.com/stockquote"/>
          </port>
      </service>
  </definitions>  

The WSDL specification includes optional extension elements that specify different types of bindings that can be used when invoking the Web service. The WebLogic Web services runtime:

  • Fully supports SOAP bindings, which means that if a WSDL file includes a SOAP binding, the WebLogic Web services will use SOAP as the format and protocol of the messages used to invoke the Web service.

  • Ignores HTTP GET and POST bindings, which means that if a WSDL file includes this extension, the WebLogic Web services runtime skips over the element when parsing the WSDL.

  • Partially supports MIME bindings, which means that if a WSDL file includes this extension, the WebLogic Web services runtime parses the element, but does not actually create MIME bindings when constructing a message due to a Web service invoke.

For more information, see:

Web Services MakeConnection 1.1

Namespace: http://docs.oasis-open.org/ws-rx/wsmc/200702

The Web Services MakeConnection specification, described at http://docs.oasis-open.org/ws-rx/wsmc/200702, provides a mechanism for the transfer of messages between two endpoints when the sending endpoint is unable to initiate a new connection to the receiving endpoint. For example, to enable asynchronous Web service invocation from behind a firewall.

For more information, see "Developing Asynchronous Clients" in Developing JAX-WS Web Services for Oracle WebLogic Server.

Web Services Metadata for the Java Platform 2.0 (JSR-181)

Oracle recommends that you take advantage of the metadata annotations feature, described at http://download.oracle.com/javase/7/docs/technotes/guides/language/annotations.html, and use a programming model in which you create an annotated Java file and then use Ant tasks to convert the file into the Java source code of a standard Java class or EJB and automatically generate all the associated artifacts.

The Java Web Service (JWS) annotated file (called a JWS file for simplicity) is the core of your Web service. It contains the Java code that determines how your Web service behaves. A JWS file is an ordinary Java class file that uses JDK metadata annotations to specify the shape and characteristics of the Web service. The JWS annotations you can use in a JWS file include the standard ones defined by the Web Services Metadata for the Java Platform specification (JSR-181), described at http://www.jcp.org/en/jsr/detail?id=181, as well as a set of other standard or WebLogic-specific ones, depending on the type of Web service you are creating.

Note:

As an alternative to using a JWS annotated file, you can program a WebLogic Web service manually by coding the standard Java class or EJB from scratch and generating its associated artifacts by hand (deployment descriptor files, WSDL, data binding artifacts for user-defined data types, and so on). However, the entire process can be difficult and tedious and is not recommended.

Web Services Policy Attachment (WS-Policy Attachment) 1.5 and 1.2

Namespaces:

WS-Policy Attachment 1.5: http://www.w3.org/ns/ws-policy

WS-PolicyAttachment 1.2: http://schemas.xmlsoap.org/ws/2004/09/policy

The Web Services Policy Attachment (WS-Policy Attachment) specification defines an abstract model and an XML-based expression grammar for policies. The specification defines two general-purpose mechanisms for associating such policies with the subjects to which they apply. This specification also defines how these general-purpose mechanisms can be used to associate WS-Policy with WSDL and UDDI descriptions.

For more information, see:

For more information, see Securing WebLogic Web Services for Oracle WebLogic Server.

Web Services Policy Framework (WS-Policy) 1.5 and 1.2

Namespaces:

WS-Policy Framework 1.5: http://www.w3.org/ns/ws-policy

WS-Policy 1.2: http://schemas.xmlsoap.org/ws/2004/09/policy

The WS-Policy Framework (WS-Policy) specification provides a general purpose model and corresponding syntax to describe and communicate the policies of a Web service. WS-Policy defines a base set of constructs that can be used and extended by other Web services specifications to describe a broad range of service requirements, preferences, and capabilities.

For more information, see:

For more information, see Securing WebLogic Web Services for Oracle WebLogic Server.

Web Services Reliable Messaging (WS-ReliableMessaging)

Namespace: http://docs.oasis-open.org/ws-rx/wsrm/200702

The Web Services Reliable Messaging (WS-ReliableMessaging) specification, at http://docs.oasis-open.org/ws-rx/wsrm/200702, describes how two Web services running on different WebLogic Server instances can communicate reliably in the presence of failures in software components, systems, or networks. In particular, the specification provides for an interoperable protocol in which a message sent from a source endpoint to a destination endpoint is guaranteed either to be delivered or to raise an error.

For more information, see:

Note:

The WebLogic Server WS-ReliableMessaging supports backward compatibility with older versions of the specification. For example, a WS-ReliableMessaging 1.2 Web service can be accessed by clients conforming to either the WS-ReliableMessaging 1.2 or 1.1 specifications. However, a WS-ReliableMessaging 1.2/1.1 client cannot communicate with a WS-ReliableMessaging 1.0 server. Note that WS-ReliableMessaging 1.2 (client or service) is supported on JAX-WS only.

Web Services Reliable Messaging Policy Assertion (WS-RM Policy)

Namespace: http://docs.oasis-open.org/ws-rx/wsrmp/200702

The Web Services Reliable Messaging Policy Assertion (WS-RM Policy) specification defines a domain-specific policy assertion for reliable messaging for use with WS-Policy and WS-ReliableMessaging. This specification enables an RM Destination and an RM Source to describe their requirements for a given sequence.

For specification information, see:

For more information, see:

Web Services Secure Conversation Language (WS-SecureConversation)

Namespace: http://docs.oasis-open.org/ws-sx/ws-secureconversation/200512

The Web Services Secure Conversation Language (WS-SecureConversation) specification defines extensions that build on Web Services Security (WS-Security) 1.1 and 1.0 and Web Services Trust Language (WS-Trust) to provide secure communication across one or more messages. Specifically, this specification defines mechanisms for establishing and sharing security contexts, and deriving keys from established security contexts (or any shared secret).

For more information, see:

For more information, see Securing WebLogic Web Services for Oracle WebLogic Server.

Web Services Security (WS-Security) 1.1 and 1.0

Namespaces: http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecuritysecext-1.0.xsd, http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurityutility-1.0.xsd, http://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd

The following description of Web Services Security is taken directly from the OASIS standard 1.1 specification, titled Web Services Security: SOAP Message Security, dated February 2006:

This specification proposes a standard set of SOAP [SOAP11, SOAP12] extensions that can be used when building secure Web services to implement message content integrity and confidentiality. This specification refers to this set of extensions and modules as the "Web Services Security: SOAP Message Security" or "WSS: SOAP Message Security".

This specification is flexible and is designed to be used as the basis for securing Web services within a wide variety of security models including PKI, Kerberos, and SSL. Specifically, this specification provides support for multiple security token formats, multiple trust domains, multiple signature formats, and multiple encryption technologies. The token formats and semantics for using these are defined in the associated profile documents.

This specification provides three main mechanisms: ability to send security tokens as part of a message, message integrity, and message confidentiality. These mechanisms by themselves do not provide a complete security solution for Web services. Instead, this specification is a building block that can be used in conjunction with other Web service extensions and higher-level application-specific protocols to accommodate a wide variety of security models and security technologies.

These mechanisms can be used independently (for example, to pass a security token) or in a tightly coupled manner (for example, signing and encrypting a message or part of a message and providing a security token or token path associated with the keys used for signing and encryption).

For more information, see the OASIS Web Service Security Web page at http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wss.

WebLogic Web services also implement the following token profiles:

  • Web Services Security: SOAP Message Security

  • Web Services Security: Username Token Profile

  • Web Services Security: X.509 Certificate Token Profile

  • Web Services Security: SAML Token Profile 1.0 and 1.1

For more information, see Securing WebLogic Web Services for Oracle WebLogic Server.

Web Services Security Policy (WS-SecurityPolicy) 1.3

Namespace: http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702

The Web Services Security Policy (WS-SecurityPolicy) specification, described at http://docs.oasis-open.org/ws-sx/ws-securitypolicy/v1.3/cd/ws-securitypolicy-1.3-spec-cd-03.html, defines a set of security policy assertions for use with the WS-Policy framework to describe how messages are to be secured in the context of WS-Security, WS-Trust and WS-SecureConversation.

All the asynchronous features of WebLogic Web services (callbacks, conversations, and Web service reliable messaging) use addressing in their implementation, but Web service programmers can also use the APIs that conform to this specification stand-alone if additional addressing functionality is needed.

For more information, see Securing WebLogic Web Services for Oracle WebLogic Server.

Web Services Trust Language (WS-Trust)

Namespace: http://schemas.xmlsoap.org/ws/2005/02/trust

The Web Services Trust Language (WS-Trust) specification defines extensions that build on Web Services Security (WS-Security) 1.1 and 1.0 to provide a framework for requesting and issuing security tokens, and to broker trust relationships.

For more information, see:

For more information, see Securing WebLogic Web Services for Oracle WebLogic Server.

Additional Specifications Supported by WebLogic Web Services