Reviewing Web Service WSDL Sources

Once a Web service represented in WSDL has been successfully generated, the SOAP service status is changed from 'Not Generated' to 'Generated'. The WSDL link appears in the Web Service region (or the SOAP Web Service tab if the interface can be exposed as both SOAP and REST services) allowing you to view the WSDL description.

Generated WSDL and Deployed WSDL Descriptions

For a generated service before it is deployed, the WSDL description is an abstract definition of the message that has been transmitted. Once the service has been successfully deployed, the WSDL description contains concrete service binding and transport details.

For example, the following elements contain different URL information in the generated and deployed WSDL descriptions:

For more information on WSDL elements, see Reviewing WSDL Element Details.

To view a generated WSDL file:

  1. Log in to Oracle E-Business Suite as a user who has the Integration Analyst role. Select the Integration Repository responsibility and the Integration Repository link from the navigation menu.

    The Integration Repository home page appears.

  2. Locate your desired interface definition through a search or browse from the interface tree structure within the repository.

  3. Click the interface name to open the interface details.

  4. In the Web Service region (or the SOAP Web Service tab if the interface can be exposed as both SOAP and REST services), click the View WSDL link to view the WSDL source code.

    The following sample shows the generated WSDL description with synchronous interaction pattern for the PL/SQL interface PA_COST_PLUS:

    <?xml version="1.0" encoding="UTF-8" standalone="no" ?> 
    <definitions xmlns:tns="http://xmlns.oracle.com/apps/pa/soaprovider/plsql/pa_cost_plus/" 
     xmlns="http://schemas.xmlsoap.org/wsdl/" 
     xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
     xmlns:tns1="http://xmlns.oracle.com/apps/pa/soaprovider/plsql/pa_cost_plus/get_burden_amount/" name="PA_COST_PLUS" 
     targetNamespace="http://xmlns.oracle.com/apps/pa/soaprovider/plsql/pa_cost_plus/">
    <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" 
     targetNamespace="http://xmlns.oracle.com/apps/pa/soaprovider/plsql/pa_cost_plus/get_burden_amount/"> 
     <include schemaLocation="http://<hostname>:<port>/ISG-ISG-context-root/isgapp/plsql/pa_cost_plus/APPS_PA_COST_PLUS_GET_BURDEN_AMOUNT.xsd"/>
    </schema> 
    <schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
     targetNamespace="http://xhttp://xmlns.oracle.com/apps/pa/soaprovider/plsql/pa_cost_plus/">
       <element name="SOAHeader">
        <complexType>
          <sequence>
          	<element name="Responsibility" minOccurs="0" type="string" /> 
           <element name="RespApplication" minOccurs="0" type="string" /> 
           <element name="SecurityGroup" minOccurs="0" type="string" /> 
           <element name="NLSLanguage" minOccurs="0" type="string" /> 
           <element name="Org_Id" minOccurs="0" type="string" /> 
         </sequence>
       </complexType>
      </element>
     </schema>
    </type>
    <message name="GET_BURDEN_AMOUNT_Input_Msg">
    <part name="header" element="tns:SOAHeader" /> 
    <part name="body" element="tns1:InputParameters" /> 
    </message>
    <message name="GET_BURDEN_AMOUNT_Output_Msg">
    <part name="body" element="tns1:OutputParameters" /> 
    </message>
    <portType name="PA_COST_PLUS_PortType">
    <operation name="GET_BURDEN_AMOUNT">
    <input message="tns:GET_BURDEN_AMOUNT_Input_Msg" />
    <output message="tns:GET_BURDEN_AMOUNT_Output_Msg" /> 
    </operation>
    </portType>
    <binding name="PA_COST_PLUS_Binding" type="tns:PA_COST_PLUS_PortType">
    <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" /> 
    <operation name="GET_BURDEN_AMOUNT">
    <soap:operation soapAction="GET_BURDEN_AMOUNT" /> 
    <input>
    <soap:header message="tns:GET_BURDEN_AMOUNT_Input_Msg" part="header" use="literal" /> 
    <soap:body parts="body" use="literal" /> 
    </input>
    <output>
    <soap:body use="literal" /> 
    </output>
    </operation>
    </binding>
    <service name="PA_COST_PLUS_Service">
    <port name="PA_COST_PLUS_Port" binding="tns:PA_COST_PLUS_Binding">
    <soap:address location="#NOT_DEPLOYED#" /> 
    </port>
    </service>
    </definitions>

    Note: Values passed in the Responsibility, Responsibility Application, Security Group, NLS Language, and Organization ID complex types listed under the "SOAHeader" are used to set applications context during service execution.

    Please note that NLS Language and Organization ID are optional values to be passed. However, if the execution of a service is dependent on any particular organization, then you must pass the ORG_ID element in the "SOAHeader" of that SOAP request.

    For more information, see Setting Other Web Service Input Message Parts.

    Please note that the username and password information is defined by the Web service security policy (such as oracle/wss_username_token_service_policy). Detailed instructions on how to pass the security headers along with the SOAP request, see Configuring Web Service Policies.

    For more WSDL element information, see Reviewing WSDL Element Details.

To view a deployed WSDL file:

Once a service has been successfully deployed to an Oracle SOA Suite WebLogic managed server, the SOAP service status is changed from 'Not Generated' to 'Deployed' with 'Active' state along with the selected authentication type. Click the View WSDL link to view the deployed WSDL file.

The following sample shows the deployed WSDL description with synchronous interaction pattern for the same PL/SQL interface PA_COST_PLUS:

<?xml version="1.0" encoding="UTF-8" ?> 
...
<wsp:Policy xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" 
...
</wsp:Policy>
<types>
<schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" 
 targetNamespace="http://xmlns.oracle.com/apps/pa/soaprovider/plsql/pa_cost_plus/get_burden_amount/"> 
<include schemaLocation=http://"<soa_suite_hostname>:<port>/soa-infra/services/default/<jndi_name>_PLSQL_PA_COST_PLUS/PA_COST_PLUS_Service?XSD=xsd/APPS_PA_COST_PLUS_GET_BURDEN_AMOUNT.xsd" /> 
</schema> 
<schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
...
</schema>
</type>
...
<service name="PA_COST_PLUS_Service">
<port name="PA_COST_PLUS_Port" binding="tns:PA_COST_PLUS_Binding">
<soap:address location="http://"<soa_suite_hostname>:<port>/soa-infra/services/default/<jndi_name>_PLSQL_PA_COST_PLUS/PA_COST_PLUS_Service" />  
</port>
</service>
</definitions>