En este breve tutorial, mostraré los pasos necesarios para consumir un web service de una clase personalizada en Salesforce, con la herramiente SOAP UI.
![](https://jarrambide.com/wp-content/uploads/2019/08/Generar_WSDL_de_compania-1-1024x565.png)
Primero descargaremos el wsdl enterprise (recuerda descargar el WSDL del sandbox requerido), buscando en el menú de configuración lo siguiente:
Código personalizado / API, luego ir a la sección WSDL de compañia y guardarlos como entreprise.wsdl (puede ser otro nombre)
A continuación los pasos para importar el archivo enterprise.wsdl en SOAP UI:
1.- Crear un proyecto (New project SOAP) en SOAP UI
![](https://jarrambide.com/wp-content/uploads/2019/09/soap_ui_nuevo_proyecto_soap-1024x576.png)
2.- Dar clic en Browse
![](https://jarrambide.com/wp-content/uploads/2019/09/soap_ui_nuevo_buscar_wsdl.png)
3.- Seleccionar el archivo enterprise.wsdl
![](https://jarrambide.com/wp-content/uploads/2019/09/soap_ui_seleccionar_wsdl-1.png)
4.- Nombrar el proyecto en SOAP UI, aquí muestro el prefijo que uso:
![](https://jarrambide.com/wp-content/uploads/2019/09/soap_ui_enterprise_salesforce_wsdl.png)
5.- Así queda la estructura del proyecto del archivo enterprise.wsdl
![](https://jarrambide.com/wp-content/uploads/2019/09/soap_ui_enterprise_salesforce_proyecto-2.png)
6.- El método que nos interesa, es login, lo expandimos (símbolo +) damos doble clic sobre Request1, y proporcionamos el usuario de salesforce que se usará para llamar a los métodos que serán expuestos mediante SOAP.
Es importante colocar en la etiqueta urn:password, la contraseña + token del usuario, todo junto sin espacios.
![](https://jarrambide.com/wp-content/uploads/2019/09/metodo_login_salesforce_soap_ui.png)
7.- Una vez proporcionado el usuario y la contraseña + token, damos clic en el icono RUN (triangulo verde), y tendremos que ver una respuesta como la siguiente:
![](https://jarrambide.com/wp-content/uploads/2019/09/respuesta_login_soap_salesforce-1-1024x787.png)
La siguiente fase, es descargar el WSDL de nuestra clase que creamos, que contiene los métodos que se van a exponer al cliente, para crear OTRO proyecto SOAP.
1.- Ir a configuración en Salesforce, buscar clases, y descargar el WSDL de la clase que deseamos consumir mediante SOAP, en este caso la clase que creé se llama STA_WS_ExternoToSF
![](https://jarrambide.com/wp-content/uploads/2019/09/Salesforce_descargar_WSDL_personalizado.png)
2.- Una vez descargado, repetimos el mismo paso, para crear otro proyecto SOAP, cargando el nuevo archivo WSDL y nombramos al proyecto con el nombre que desees. (De preferencia que tenga un sufijo que indique de que SANDBOX fue descargado dicho archivo)
3.- En el nuevo proyecto SOAP, buscamos el método que queremos consumir, en este caso, el método que cree fue upsertCliente (así nombré el método el cual inserta o actualiza) y con el sessionId obtenido en la respuesta del método login, lo colocamos como en la siguiente imagen.
En la etiqueta <sta:xml> colocamos el xml que recibirá el método, importante que este envuelto en <![CDATA[ xxxxx ] ]>
![](https://jarrambide.com/wp-content/uploads/2019/09/llamada_a_metodo_soap_de_salesforce-1024x489.png)