Beruflich Dokumente
Kultur Dokumente
OVERVIEW
The OTA Server is a Java based servlet that uses the OTA Messaging Protocol
to support the following requirements:
The OTA protocol defines the conversation semantics used by two web servers
running the OTA Servlet. The two OTA Servlets “talk” to each other in order
to provide guaranteed, exactly once delivery of messages.
rt
cer
rve
se
rify
Ve
6)
I BM
IB M
Certificate
Authority
HTTP Header
Http-Version: HTTP/1.1
Authorization: Digest username="myusername",
realm="testrealm@host.com",
nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093",
uri="/dir/index.html",
qop=auth,
nc=00000001,
cnonce="0a4f113b",
response="6629fae49393a05397450978507c4ef1",
opaque="5ccc069c403ebaf9f0171e9517f40e41"
Content-length: 12345
Content-type: text/html
HTTP Body
TRANSPORT_PROTOCOL=OXTA
TRANSPORT_PROTOCOL_VERSION=1.0
REQUEST_TYPE=SEND
MESSAGE_ID=A1234567890ZZ0987654321
MESSAGE_TYPE=XML
MESSAGE_STANDARD=OAG
TRANSACTION_TYPE=PO
TRANSACTION_SUBTYPE=PROCESS
DOCUMENT_NUMBER=12345
PARTYID=9999
PARTY_SITE_ID=8888
PROTOCOL_TYPE=HTTPS-OXTA
TRANSPORT_PROTOCOL
The Transport Protocol indicates to the receiving servlet the Messaging
Protocol being used. This will always be OTA when being sent from an OTA
server. The inbound OTA server will validate to ensure transport_protocol is
OTA and will then send back the appropriate response in the HTTP response
body.
TRANSPORT_PROTOCOL_VERSION
The Transport Protocol version indicates the version of the Messaging Protocol
being used. The sending OTA server dictates this value based on the version of
the OTA server being used.
REQUEST_TYPE
This parameter indicates the type of request being sent from the OTA server.
This valid values are:
SEND - This is a real send and not a test send. The OTA receiving
server will treat this as a live, production send from the sending OTA
server .
AUTH - Authorization test. The receiving OTA server will treat this as a
request for a test according to the OTA AUTH test protocol. This
protocol requires only the following parameters:
Parameter Sample
TRANSPORT_PROTOCOL OXTA
TRANSPORT_PROTOCOL_VERSION 1.0
REQUEST_TYPE AUTH
USERNAME MYUSERNAME
PASSWORD MYPASSWORD
If the authorization passes, the response will contain an HTTP 200 signal and an
OXTA 1000 status message (see the OTA HTTP response protocol below ).
EME - Email me. The receiving OTA server will receive the message
and place it on the outbound queue for delivery to the address specified
in PROTOCOL_ADDRESS. This protocol requires only the following
parameters:
Parameter Sample
TRANSPORT_PROTOCOL OXTA
TRANSPORT_PROTOCOL_VERSION 1.0
REQUEST_TYPE EME
USERNAME MYUSERNAME
PASSWORD MYPASSWORD
PROTOCOL_ADDRESS Me@mydomain.com
PAYLOAD <xml …..>
MESSAGE_ID
This is the unique message identifier of the sending OTA server. The receiving
OTA server will use this identifier to determine if it is a duplicate message. The
sending OTA server uses the Oracle AQ message ID from the outbound XML
Gateway queue.
MESSAGE_TYPE
This indicates the type of content in the payload. When used with XML
Gateway, this will always contain a value of XML.
TRANSACTION_TYPE
Used by XML Gateway to determine the type of document being
communicated. This is a user-defined value entered in the External Transaction
Type field in the Transactions form of XML Gateway. Sample values include
PO, Invoice, and Shipping.
TRANSACTION_SUBTYPE
Used by XML Gateway to determine the sub transaction type of the document
being created. This is a user-defined value entered in the External Transaction
Subtype field in the Transactions form of XML Gateway. Sample values
include Create or Change.
PARTYID
The sender/receiver negotiated identifier that identifies the receiver of the
document (company level). This is a user-defined value that is entered in the
External Source Location Code of the Trading Partner Definition form within
XML Gateway.
PARTY_SITE_ID
The sender/receiver negotiated identifier that identifies the receiver of the
document (company site level).
PROTOCOL_TYPE
This is the Application Protocol to use to transmit the document. This also
contains an identifier as to the program to use to transmit the document over
the protocol.
PROTOCOL_TYPE Meaning
HTTP Straight HTTP post
HTTPS Straight HTTP post using SSL
HTTP-OXTA Use OTA protocol over HTTP
HTTPS-OXTA Use OTA protocol over
SMTP Send document via SMTP (email)
PROTOCOL_ADDRESS
This is the fully qualified address used by OTA to transmit the document to.
Examples :
PROTOCOL_TYPE PROTOCOL_ADDRESS
HTTP http://www.me.com:8080/servlets/mycustom
HTTP-OXTA http://www.me.com:9000/servlets/oracle.apps.ecx.oxta.Transp
ortAgentServer
HTTPS-OXTA https://www.me.com/servlets/oracle.apps.ecx.oxta.TransportA
gentServer
SMTP Me@mydomain.com
USERNAME
This is the username to be used for authentication on the receiving server. The
OTA server will use this username and validate it against valid Applications
users in Applications or valid Exchange users (buyer/supplier login) in
Exchange.
Note the username/password values are also put in the Authorization section of
the HTTP header for optional web server level authentication.
ATTRIBUTE1
This contains the identifier of the system sending the message. This is a user-
defined value entered in the ECX_OAG_LOGICALID Applications profile
option.
ATTRIBUTE2
Not used.
ATTRIBUTE3
This contains the identifier of the final destination for the document. This is a
user-defined value entered in the Target Location Code field in the Trading
Partner Definition for of XML Gateway. This is used as a routing mechanism
to
tell the receiver of the message to route the document to another trading partner
known to the receiver.
ATTRIBUTE4
Not used.
ATTRIBUTE5
Not used.
PAYLOAD
This contains the actual XML document to be processed.
The OTA Server uses standard HTTP response codes to determine if the HTTP
post (at the HTTP Protocol level) was successful. If successful, OTA will look
at the HT TP header to determine if the OTA message was successfully
delivered. If the HTTP response is anything other than 200, OTA will assume
the post failed and will requeue the message for retry (assuming max retry has
not been reached).
The HTTP Response body is created for information only and is not read by the
sending OTA server. The sending OTA server uses the STATUS_CODE in the
HTTP Response header to determine the correct success or failure code.
STATUS_CODE
This the status message as received by the OTA server. Anything other than a
1000 is considered a failed delivery.
STATUS_DESCRIPTION
This is an English description of the status.
MESSAGE_RECEIPT_ID
If the status code is 1000, this will contain a globally unique identifier of the
message as generated by the receiving OTA server.
The following table list the valid response status codes returned in the HTTP
Response by the OTA server:
The OTA Server includes the capability to send documents to non-OTA servlets
that do not employ the OTA messaging protocol. When sending a message, the
OTA server initiates an HTTP post to transmit the document, the HTTP
response from the receiving web server indicates whether the receiver was an
OTA server or not by the virtue of the HTTP response contents.
If the HTTP response does not contain the OTA protocol response body, the
sending OTA server assumes the message was received by a non-OTA server.
In this case, the standard HTTP response code (i.e. 200 for success) is used to
determine the success or failure of the message. If the sending OTA server
receives an HTTP-200, the message is assumed to be delivered successfully. If
the sending OTA server receives anything else, it is assumed to be a failure.
CONCLUSION
Oracle Corporation
World Headquarters
500 Oracle Parkway
Redwood Shores, CA 94065
U.S.A.
Worldwide Inquiries:
Phone: +1.650.506.7000
Fax: +1.650.506.7200
www.oracle.com