How To Define Siebel CRM Specific Service Fields (Fault, Header) In .WSDL, Generated For A Siebel Inbound Web Service?

9 February 2025

An external application, that consumes WSDL file, generated by Siebel CRM for an Inbound Web Service,  may need  to know details (schema) about Siebel CRM standard fields, appearing in SOAP message (request or response).

 Siebel Web Services Framework use at run-time some standard fields in SOAP Header and SOAP Fault parts of SOAP message. Such definitions are not produced by WSDL Generator of Siebel User Interface (design-time).

This documents provides some usage examples, how scheme for some standard Siebel fields could be explicitly included in .WSDL file, after it has generated.
WARNING:  XSD/WSDL code examples, given in this document, are provided just FOR ILLUSTRATION purpose.

References:



Solution

SOAP Fault: Siebel Details part


<?xml version="1.0" encoding="UTF-8"?>

attributeFormDefaul="unqualified"

                      xmlns:xsd        ="http://www.w3.org/2001/XMLSchema"

           xmlns:siebelfault="http://www.siebel.com/ws/fault"

           targetNamespace  ="http://www.siebel.com/ws/fault">

 

   siebdetail" type="siebelfault:siebdetail"/>

  

      

          logfilename" maxOccurs="1" minOccurs="0" type="xsd:string"/>

          errorstack"  maxOccurs="1" minOccurs="0" type="siebelfault:errorstack"/>

      

   


   

      

          error" maxOccurs="unbounded" minOccurs="0" type="siebelfault:error"/>

      

   


   

      

          errorcode"   maxOccurs="1" minOccurs="0" type="xsd:string"/>

          errorsymbol" maxOccurs="1" minOccurs="0" type="xsd:string"/>

          errormsg"    maxOccurs="1" minOccurs="0" type="xsd:string"/>

      

   



 

SOAP Header: Siebel WS-Security part (Siebel 7.7 onwards)


<?xml version="1.0" encoding="UTF-8"?>

         xmlns:xsd       ="http://www.w3.org/2001/XMLSchema"

         xmlns:siebelwsse="http://schemas.xmlsoap.org/ws/2002/07/secext"

         targetNamespace ="http://schemas.xmlsoap.org/ws/2002/07/secext">


    Security" type="siebelwsse:Security"/>

   

      

          UsernameToken" maxOccurs="1" minOccurs="0" type="siebelwsse:UsernameToken"/>

      

   


   

      

          Username" maxOccurs="1" minOccurs="0" type="xsd:string"/>

          Password" maxOccurs="1" minOccurs="0" type="xsd:string"/>

      

    




SOAP Header: Siebel Web Service Session Management part (Siebel 7.8 onwards)

<?xml version="1.0" encoding="UTF-8"?>

            xmlns:xsd      ="http://www.w3.org/2001/XMLSchema"

            xmlns:siebelwsh="http://siebel.com/webservices"

            targetNamespace="http://siebel.com/webservices">


    SessionToken" type="xsd:string" />


    UsernameToken" type="siebelwsh:SiebelUsernameToken" />

   

      

   


    PasswordText" type="siebelwsh:SiebelPasswordText" />

   

      

   


    SessionType" type="siebelwsh:SiebelSessionType" />

   

      

          None"/>

          Stateless"/>

          Statefull"/>

         
             Siebel 8.1.1 onwards:

           --->

          ServerDetermine"/>

      

   


   
         Siebel 8.1.1 onwards (application internal use):

     --->

   

   

   




Usage example (post-edition of WSDL, generated for a Siebel Inbound Web Service)

It is presumed here, that:

   - the SOAP Fault part is stored in the "SiebelFault.xsd" file, in the same folder as the .WSDL

   - the SOAP Header part for Siebel Web Service Session Management is stored in the "SiebelWSHeader.xsd" file, in the same folder as the .WSDL

    - the Web Service name is: "Svc1"

   - the URI of the Inbound Web Service is: "http://my.site.com/Svc1"

   - the Web Service port name of HTTP Transport is: "Default"

   - the Web Service method(operation) name is: "Execute"

   - the SOAP Binding is: rpc/literal

   - the URL to virtual folder of the EAI Object Manager on Siebel Web Server is: "http://my.site.com/eai_enu"

<?xml version="1.0" encoding="UTF-8"?>

        xmlns                     = "http://schemas.xmlsoap.org/wsdl/"

        xmlns:xsd             = "http://www.w3.org/2001/XMLSchema"

        xmlns:soap          = "http://schemas.xmlsoap.org/wsdl/soap/"

        xmlns:soapenc    ="http://schemas.xmlsoap.org/soap/encoding/"

        xmlns:soapenv    ="http://schemas.xmlsoap.org/soap/envelope/"

        xmlns:siebelwsh   ="http://siebel.com/webservices"

        xmlns:siebelfault ="http://www.siebel.com/ws/fault"

        xmlns:xsdLocal0 ="http://my.site.com/Svc1"

        xmlns:tns              ="http://my.site.com/Svc1"

        targetNamespac  ="http://my.site.com/Svc1">


      
             Import of  Siebel scheme for parts in  SOAP Fault and SOAP Header

       -->

      SiebelFault.xsd"/>

       SiebelWSHeader.xsd"/>


       . . .


      
            Definition of message types for Siebel part  in SOAP Fault and SOAP Header

        -->
      

              

      



      

            

            

            

            

      



        . . .


      Default">


              Execute">


                  . . .


                
                      Definition of faut message for Siebel part in SOAP Fault

                   -->

                 

            


              . . .


    


     . . .


     "Default" type="tns:Default">

          rpc"/>


          Execute">

                 rpc/http://my.site.com/Svc1:Execute"/>


                  

                          http://my.site.com/Svc1" use="literal"/>


                          
                                Declaration of Siebel parts in SOAP Header (request)

                            -->
                           literal" message="tns:SiebelWSHeader" part="UsernameToken"/>

                           literal" message="tns:SiebelWSHeader" part="PasswordText"/>

                           literal" message="tns:SiebelWSHeader" part="SessionType"/>

                           literal" message="tns:SiebelWSHeader" part="SessionToken"/>



                   


                   

                              http://my.site.com/Svc1" use="literal"/>


                              
                                    Declaration of Siebel parts in SOAP Header (response)

                                -->
                               literal" message="tns:SiebelWSHeader" part="SessionToken"/>


                    


                  
                       Declaration of Siebel part in SOAP Fault (fault response)

                    -->

                  

                         literal" name="SiebelFault"/>

                  



                   . . .


          

           . . .


     

      . . .


    Svc1">

         Default" name="Default">

             http://my.site.com/eai_enu/start.swe?SWEExtSource=WebService&SWEExtCmd=…;WSSOAP=1"/>

        


         . . .


    


     . . .

Tags