Understanding Developing Request Messages for the Security Authorization Service
An authorization service request message contains a SOAP header followed by a number of authorization request elements.
Inside the message envelope is the PARAMARRAY element. The PARAMARRAY element can contain none to many PARAMS elements. Each PARAMS element corresponds to a separate authorization request. You can bundle multiple requests into a single request.
The following pseudocode shows an example of a request message for the authorization service containing two authorization requests. Each request is contained in a PARAMS element:
<!-- Begin SOAP header -->
<?xml version="1.0"?>
<soapenv:Envelope xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://
schemas.xmlsoap.org/ws/2003/03/addressing/" xmlns:xsd="http://www.w3.org/2001/
XMLSchema/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance/">
<soapenv:Header xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<wsse:Security soap:mustUnderstand="1" xmlns:soap="http://schemas.xmlsoap.org/
wsdl/soap/" xmlns:wsse="http://docs.oasis-
open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken>
<wsse:Username>PTDMO</wsse:Username>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<FindAccess xmlns="http://xmlns.oracle.com/Enterprise/Tools/schemas/
PTCSSecurityReq.v1">
<!-- End SOAP header -->
<!-- Begin message envelope -->
<PARAMARRAY>
<PARAMS>
<SERVICEID>1</ SERVICEID >
<SERVICE_TYPE>UPGE</SERVICE_TYPE>
<NODE>PT_LOCAL</NODE>
<MENU>APPLICATION_ENGINE</MENU>
<COMPONENT>AE_TOOLS</COMPONENT>
<MARKET>GBL</MARKET>
<COMP_ITEM_NAME>SCPERSONALDICT</COMP_ITEM_NAME>
<KEYVAL>ACTION=U</KEYVAL
<KEYVAL>SET_ID=S3</KEYVAL>
<KEYVAL>CUSTOMERID=CATHYPACIFIC</KEYVAL>
</PARAMS>
<PARAMS>
<SERVICEID>2</ SERVICEID >
<SERVICE_TYPE>CREF</SERVICE_TYPE>
<PORTAL>EMPLOYEE</PORTAL>
<NODE>PT_LOCAL</NODE>
<CREFID>SCPERSONALDICT</CREFID>
<KEYVAL>NAME=SAMPLEUSER</KEYVAL>
<KEYVAL>NAME=ARTHI</KEYVAL>
<KEYVAL>SET_ID=S3</KEYVAL>
</PARAMS>
</PARAMARRAY>
<!-- End message envelope -->
</FindAccess>
</soapenv:Body>
</soapenv:Envelope>
Important:
If the service is invoked on a remote node, it will run on the context of the user ID provided in the <wsse:Username> element defined in the request message header. If the service is invoked on a local node by creating an application class object, the system ignores the <wsse:Username> element value and it implements the code in the context of the user.