Creating custom WSDL so that external system can invoke our webservice class

We are trying to integrate SFDC with External system, were external system will invoke our webservice class(consumers od of WSDL) and salesforce will accept the request(Providers of WSDL).

Here external system will send us something called as tickets which is in the below format, and SFDC has to capture that request and parse it, to create case in the SFDC and send back the response to external system.

If anyone has worked on similar kind of requirement please let us know how to proceed.

<Account>
    <AccountId></AccountId>
    <Case>
           <CaseNumber></CaseNumber>
           <Owner></Owner>
           <FalloutJob>
                   <JobId></JobId>
                   <!--One or more repetitions:-->
                   <Attribute>
                          <Name></Name>
                          <Value></Value>
                          <ValueType></ValueType>
                   </Attribute>
           </FalloutJob>
    </Case>
</Account>

Answer

If you have defined your Apex class as global and your method as a webservice, then in Salesforce, you should be able to generate the WSDL.

global with sharing class WSClass {
    webservice static boolean wsMethod() {        
        return true;
    }
}

Find the class and click on the WSDL link to the left in the list of Apex classes. https://login.salesforce.com/01p

Attribution
Source : Link , Question Author : kishore , Answer Author : Daniel Hoechst

Leave a Comment