Question Bransen Smith · Apr 23, 2024

How to Configure an Incoming SOAP Service via Management Portal

I am attempting to configure an inbound service that utilizes the EnsLib.SOAP.GenericService class. This service receives HL7-v3 content wrapped in SOAP requests. Despite reading the documentation on configuring SOAP services, I am still confused.

In my current configuration item "Fr_Centrak_RTLS", I have ‘Enable Standard Requests’ checked, ‘Pool Size’ set to 0, and the port is unspecified.

I have also configured a web application with the following details:

My challenge is determining the correct URL address for sending SOAP traffic to this service. Additionally, I do not want any form of authentication for this setup. 

The URL I attempted to test was: http://localhost:52773/csp/soappassthrough/EnsLib.SOAP.GenericService.cls?CfgItem=Fr_Centrak_RTLS which returned an HTTP/1.1 500 Internal Server Error.

Here:

  • /csp/soappassthrough represents my web application.
  • Fr_Centrak_RTLS corresponds to the business service within the production that I am trying to direct traffic to.

Please advise me on the correct URL format to send traffic to this inbound service in my production environment.

Product version: IRIS 2023.1

Comments

Enrico Parisi · Apr 24, 2024

I think you need to enable/allow Unauthenticated access for Web Applications.

I can see that in Web Application configuration in "Allowed Authentication Methods" the option "Unauthenticated" is not available, this means is not enabled/allowed systemwide.

In Management Portal check System Administration > Security > System Security > Authentication/Web Session Options, and see if "Allow Unauthenticated access" (first option/checkbox) is enabled.

After that, enable the option "Unauthenticated" in the "Allowed Authentication Methods" of the Web Application.

0
Bransen Smith  Apr 24, 2024 to Enrico Parisi

I have configured unauthorized access for our applications as you mentioned and still no luck reaching the service. I think my URL formatting is incorrect. 

0
Bransen Smith  Apr 25, 2024 to Luis Angel Pérez Ramos

That was the issue. I did not have a production process specified for my SOAP service. I wanted to test connectivity before building other components like the process operation. Good to know!

Here is what I have now:

And the response via a successful web request: HTTP/1.1 202 Accepted

Thank you for this :)

0
Bransen Smith · May 7, 2024

Adding this bit of information to help out others who are developing an inbound SOAP service using the SOAP inbound adapter. In order to POST information to the Production Service, you will need to format your URL similarly: https://BaseURL/csp/healthshare/MBSDEV/soappassthrough/EnsLib.SOAP.GenericService.cls?CfgItem=Fr_Centrak_RTLS

  • Where BaseURL is the CSP gateway.
  • /csp/healthshare/MBSDEV is the Namespace where the service is running.

  • /soappassthrough is my web application for my SOAP Service. In this example I have not configured Application Role Permissions.

  • /EnsLib.SOAP.GenericService.cls?CfgItem=Fr_Centrak_RTLS: EnsLib.SOAP.GenericService.cls is the class of the inbound service, and I have used ?CfgItem= to specify the name of my production service.

0