Announcing the Saviynt Knowledge Exchange unifying the Saviynt forums, documentation, training,
and more in a single search tool across platforms. Read the announcement here.
100% helpful (1/1)
DixshantValecha
Saviynt Employee
Saviynt Employee

Use Case: In certain scenarios the SOAP ENDPOINT is not correct URL to perform test connection. In such cases another URL is used for performing test connections.

Error Logs when test connection fails:

Internal Server Error

2021-05-07 08:11:56,483 [https-jsse-nio-443-exec-36] ERROR provisoning.SoapProvisioningService - Error in test connection for SOAP: java.lang.Exception: Error in connecting to webservice: - Response Code: 500, Response Message: Internal Server Error at com.saviynt.provisoning.SoapProvisioningService.testAndConnectSOAP(SoapProvisioningService.groovy:3565) at com.saviynt.provisoning.SoapProvisioningService$_testConnectionSOAP_closure53.doCall(SoapProvisioningService.groovy:3491) at com.saviynt.provisoning.SoapProvisioningService.testConnectionSOAP(SoapProvisioningService.groovy:3484) at com.saviynt.ecm.integration.ExternalConnectionCallService.testExternalConnection(ExternalConnectionCallService.groovy:454) at com.saviynt.ecm.utility.domain.EcmConfigController$_closure21.doCall(EcmConfigController.groovy:757) at grails.plugin.springsecurity.web.filter.GrailsAnonymousAuthenticationFilter.doFilter(GrailsAnonymousAuthenticationFilter.java:53) at com.saviynt.webservice.SaviyntRestAuthenticationFilter.doFilter(SaviyntRestAuthenticationFilter.groovy:145) at grails.plugin.springsecurity.web.authentication.logout.MutableLogoutFilter.doFilter(MutableLogoutFilter.java:62) at grails.plugin.springsecurity.web.SecurityRequestHolderFilter.doFilter(SecurityRequestHolderFilter.java:59) at com.mrhaki.grails.plugin.xframeoptions.web.XFrameOptionsFilter.doFilterInternal(XFrameOptionsFilter.java:69) at com.brandseye.cors.CorsFilter.doFilter(CorsFilter.java:82) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) 2021-05-07 08:11:56,483 [https-jsse-nio-443-exec-36] ERROR domain.EcmConfigController - Error in connecting to webservice: - Response Code: 500, Response Message: Internal Server Error.

Solution:

The issue has been resolved by adding the capability to pass a new attribute named TEST_URL within CONNECTIONJSON specifically for testing SOAP connectivity. If this attribute is not defined, the value of SOAP_ENDPOINT is used by default.

Sample Usage:

{ "authentications": { "login": { "properties": { "SOAP_ENDPOINT": "http://x.x.x.x/arsys/services/ARService?server=xxxxxxxx01&webService=XXXXXXXX_Staging_WS", "TEST_URL": "http://x.x.x.x/arsys/WSDL/public/xxxxxxxx01/XXXXXXXX_Staging_WS", "USERNAME": "idmadm", "PASSWORD": "", "SOAPACTION": "urn:XXXXXXXX_Staging_WS/People_GetList", "REQUESTPARAMS": { "Content-Type": "text/xml" } } }, "call2": { "properties": { "SOAP_ENDPOINT": "http://x.x.x.x/arsys/services/ARService?server=xxxxxxxx&webService=XXXXXXXX_Staging_WS", "TEST_URL": "http://x.x.x.x/arsys/WSDL/public/xxxxxxxx01/XXXXXXXX_Staging_WS", "USERNAME": "idmadm", "PASSWORD": "", "SOAPACTION": "urn:XXXXXXXX_Staging_WS/People_Staging_Submit", "REQUESTPARAMS": { "Content-Type": "text/xml" } } } } }

Explanation:

In the provided example, the addition of TEST_URL within CONNECTIONJSON allows for accurate testing of SOAP connectivity. If TEST_URL is absent, the SOAP_ENDPOINT value is automatically considered for the connection.

By implementing these changes, you can now effectively test SOAP connections and ensure the accurate functioning of your SOAP-based integrations.

Version history
Last update:
‎04/03/2024 01:45 PM
Updated by: