I like your idea of handling this with an extended process - something I had not yet considered. I personally handle this by extending Operations (EnsLib.REST.Operation) to handle specific message types (XData blocks) and then use standard BPLs to manage the appropriate callouts/responses to determine what to do next.
But generally speaking, Processes can be extended with a custom class as well by extending Ens.BusinessProcess and implementing overrides to OnRequest/OnResponse. There's more documentation here:Defining Business Processes - Developing Productions - InterSystems IRIS Data Platform 2020.4Interested to hearing how you end up addressing this and suggestions others have as well. I feel like there are many ways to tackle this common need (REST API workflows) so probably several approaches I had not considered.
I'm not really clear on what you mean by "standard Module.int" so sounds like we may be approaching this in different ways and I apologize for any confusion I caused.
%HttpRequest is %Net.HttpRequest (you can find syntax for SetHeader here) and the Adapter in this case refers to the adapter attached to the EnsLib.REST.Operation class via Parameter, which in this case is EnsLib.HTTP.OutboundAdapter.
If using a pre-built outbound operation:
Those are the key settings (the checkbox is what you are asking about.)
In code on the %HttpRequest object, you're looking for
Set ..%HttpRequest.SSLConfiguration = "Default" (or whatever your SSL config name is)
Set ..%HttpRequest.SSLCheckServerIdentity = 1 (for true, 0 for false.)
Your error appears to deal more with authentication/authorization (HTTP 403) as I think SSL handshake failures throw a different status code but tinker with the settings above.
Log in or create a new account to continue
Please log in