Skip Navigation Links | |
Exit Print View | |
Oracle Java CAPS HTTP Binding Component User's Guide Java CAPS Documentation |
Using the HTTP Binding Component
About the HTTP Binding Component
HTTP/SOAP Binding Architecture
HTTP Binding Component Features
HTTP Binding Component Example Scenario
SOAP 1.1 WSDL Extensibility Elements
SOAP 1.1 header and headerfault Elements
SOAP 1.2 WSDL Extensibility Elements
SOAP 1.2 header and headerfault Elements
HTTP WSDL Extensibility Elements
Using the HTTP Binding Component with the HTTP POST Method
Configuring the HTTP Binding Component for HTTP Get Interactions
HTTP POST Treatment of http:urlEncoded and http:urlReplacement
HTTP Binding Component Runtime Properties
HTTP Binding Component Client Endpoint Properties
Accessing the HTTP Binding Component Client Endpoint Properties
HTTP BC Client Endpoint Configuration Properties
Using Normalized Message Properties to Propagate Binding Context Information
Using Normalized Message Properties in a BPEL Process
Using Predefined Normalized Message Properties in a BPEL Process
To use predefined normalized message properties in a BPEL process
Adding Additional Normalized Message Properties to a BPEL Process
To add a Normalized Message Property Shortcut to a BPEL process
To edit an NM Property Shortcut
To delete an NM Property Shortcut
To add a Normalized Message Property to a BPEL process
BPEL Code Generation Using NM Properties
SOAP HTTP Binding Component Specific Normalized Message Properties
Quality of Service (QOS) Features
Configuring the Quality of Service Properties
Message Throttling: Configuring and Using
Configuring the HTTP Binding Component Endpoint for Throttling
Redelivery: Configuring and Using
Using the Tango Web Service Features with the HTTP Binding Component
Configuring Reliable Message Delivery
Installing the Synchronous BPEL Process sample
Configuring Web Services for a Project from the CASA Editor
Configuring the Tango Web Services Attributes exposed by the HTTP Binding Component
Accessing the Tango (WSIT) Web Service Attribute Configuration
Accessing the WS-Policy Attachment Editor for a Specific Endpoint
Server Configuration--Web Service Attributes
Client Configuration -- Web Service Attributes
HTTP Binding Component Security
Using Basic Authentication with the HTTP Binding Component
Basic Authentication Supported Features
Authentication Mechanisms for Consumer Endpoints
WssTokenCompare Username/Password Authentication
Using the Access Manager for Authentication and Authorization
Installing the Access Manager Add-on
Installing Access Manager with Java Application Platform SDK
Configure the HTTP Binding Component to use Access Manager
Using the OpenSSO Web Services Security (WSS) Agent for Authentication and Authorization
Install OpenSSO Enterprise Server
Configure the HTTP Binding Component to use OpenSSO Web Service Security
Using the GlassFish Realm Security to Authenticate the HTTP Client Credentials
Configuring Security Mechanisms
Username Authentication with Symmetric Key
Message Authentication over SSL
SAML Sender Vouches with Certificates
STS Issued Token with Service Certificate
Using Application Variables to Define Name/Value Pairs
Using Application Variables for password protection
Creating a password Application Variable
Using Application Configuration to Configure Connectivity Parameters
To apply a named Config Extension to the Application Configuration
Clustering Support for the HTTP Binding Component
Configuring the HTTP Binding Component for Clustering
Understanding the ${HttpDefaultPort} Token
Validating HTTP Extensibility Elements from the WSDL Editor
Adding a SOAP Template to a WSDL Document
Adding an HTTP Template to a WSDL Document
Web Service Client Calling an Operation Using HTTP Basic Authentication
Web Service Implementing an Operation Protected by HTTP Basic Authentication
Web Service Client Calling an Operation Using SSL Authentication
Web Service Implements an Operation Protected by SSL Authentication
The HTTP Binding Component is used as a provider proxy to provide connectivity to services in the JBI environment, or as consumer proxy to invoke services. The binding component implements the HTTP 1.1 GET binding defined in the WSDL 1.1 Specification, enabling applications to consume or provide services from the JBI environment using a web browser-like HTTP GET interaction.
To configure the HTTP Binding Component to function for HTTP GET interactions, the WSDL file of the service to which the binding component is acting as proxy, needs to use the following HTTP binding language elements defined in the WSDL 1.1 Specification:
An <http:binding> element indicating that a WSDL binding uses HTTP GET.
An <http:address> element representing the address of the port.
An <http:operation> element representing a relative address for each operation, that is relative to the <http:address> defined by the port.
An <http:urlEncoded> and <http:urlReplacement> element to indicate how all of the message parts of a request are encoded and made a part of the HTTP request URI.
Examples that demonstrate how to configure the HTTP Binding Component as a provider proxy or consumer proxy are available at Using the HTTP Binding Component with the HTTP GET method and Using the HTTP Binding Component with the HTTP POST Method.
The following sections describe how the HTTP Binding Component supports and implements the HTTP Binding language elements. Unless indicated otherwise, each of the WSDL elements described below are defined in the namespace http://schemas.xmlsoap.org/wsdl/http/.
The <http:binding> element:
Indicates that the binding uses the HTTP protocol.
Must be specified as a subordinate element of a <wsdl:binding>
Note - Currently the HTTP Binding Component only supports GET and POST values (please note that HTTP methods are case-sensitive).
Example:
<http:binding verb="POST"/>
The <http:address> element:
Represents the address of the port.
Must be specified as a subordinate element of a <wsdl:port>
Requires a location attribute that specifies the base URI for the port.
Example:
<http::address location="http://localhost/MyService/MyPort"/>
The <http:operation> element:
Represents an address for an operation.
Must be specified as a subordinate element of a <wsdl:operation/>
Requires a location attribute that specifies the base URI for the operation.
The full URI for a request to this port and to this specific operation. The <http:address> element addresses the port, and since a port can have multiple operations, this element represents a relative address to a particular operation; the value of this element's location attribute is appended to the value of the<http:address> location attribute to form the full URI for a request to this port and to this specific operation.
The HTTP Binding Component supports a blank location attribute value for this element.
Example:
Given: <http:operation location="Submit"> <http:address location="http://localhost/MyService/MyPort"> The full HTTP request URI is: http://localhost/MyService/MyPort/Submit
The <http:urlEncoded> element:
Indicates that all message parts that make up the input message are encoded into the request URI using query-string encoding, as follows:
Name-value pair formatted as name=value
Ampersand-delimited name-value pairs:name1=value1&name2=value2&...
Message part names comprise the names in each pair, and message part values comprise the values in each pair.
Must be specified as a subordinate element of a <wsdl:input/>
Requires a location attribute that specifies the base URI for the operation.
Is only supported by the HTTP Binding Component for the GET method. <http:urlEncoded> is ignored for the POST method. For more information, see POST URL Processing of the HTTP WSDL Binding Implementation.
Example:
Given this description: <wsd:message name="MyMessage"> <wsdl:part name="partA" type="xsd:string"/> <wsdl:part name="partB" type="xsd:string"/> </wsdl:message> ... <wsdl:portType name="MyPortType"> <wsdl:operation name="MyOperation"> <wsdl:input message="MyMessage"/> </wsdl:operation> </wsdl:portType> ... <wsdl:binding name="MyBinding" type="MyPortType"> <http:binding verb="GET"/> <wsdl:operation name="MyOperation"> <wsdl:input> <http:urlEncoded/> </wsdl:input> </wsdl:operation> </wsdl:binding> ... <wsdl:service name="MyService"> <wsdl:port name="Port1" binding="MyBinding"> <http:address location="http://localhost/MyService/MyPort"/> </wsdl:port> </wsdl:service> Given these values mapped to the input parts: "valueY" -> "partA" "valueZ" -> "partB" The full HTTP request URI is: http://localhost/MyService/MyPort/MyOperation/partA=valueY&partB=valueZ
The <http:urlReplacement/> element:
Indicates that all message parts that make up the input message are encoded into the request URI using the replacement algorithm detailed in the WSDL 1.1 Specification.
Must be specified as a subordinate element of a <wsdl:input/>
Requires a location attribute that specifies the base URI for the operation.
Is only supported by the HTTP Binding Component for the GET method. <http:urlEncoded> is ignored for the POST method. For more information, see POST URL Processing of the HTTP WSDL Binding Implementation.
Example:
Given this description: <wsd:message name="MyMessage"> <wsdl:part name="partA" type="xsd:string"/> <wsdl:part name="partB" type="xsd:string"/> </wsdl:message> ... <wsdl:portType name="MyPortType"> <wsdl:operation name="MyOperation"> <wsdl:input message="MyMessage"/> </wsdl:operation> </wsdl:portType> ... <wsdl:binding name="MyBinding" type="MyPortType"> <http:binding verb="GET"/> <wsdl:operation name="MyOperation/(partA)/subcategory/(partB)"> <wsdl:input> <http:urlReplacement/> </wsdl:input> </wsdl:operation> </wsdl:binding> ... <wsdl:service name="MyService"> <wsdl:port name="Port1" binding="MyBinding"> <http:address location="http://localhost/MyService/MyPort"/> </wsdl:port> </wsdl:service> Given these values mapped to the input parts: "valueY" -> "partA" "valueZ" -> "partB" The full HTTP request URI is: http://localhost/MyService/MyPort/MyOperation/valueY/subcategory/valueZ