danlance
05/05/2022, 4:57 PMlocal.wsObject = createobject("webservice", "https://[host]/[cfcname].cfc?wsdl");
local.response = local.wsObject.[methodname]([parameters]);
This has worked without issue across multiple Lucee versions and Java versions, for several years.
We are just in the process of testing the latest Java 11 release - current environment is running on jdk-11.0.14.1+1 - and we are testing on jdk-11.0.15+10
When testing on jdk-11.0.15+10, all our calls to this web service fail on line 2 in the above sample code
We see a GET request logged on our web server to https://[host]/[cfcname].cfc?wsdl
We do not see any subsequent POST requests (which would normally be the case.
Within the exception log we see the error “java.net.ConnectException: Connection timed out (Connection timed out)”
"FaultCode": {
"Prefix": "",
"LocalPart": "Server.userException",
"NamespaceURI": "<http://schemas.xmlsoap.org/soap/envelope/>"
}
With the 1st line in the stack trace being the 2nd line in the previous code sample where we are attempting to call a method on the object.
If we switch back to jdk-11.0.14.1+1, then the request completes succesfully.
I did compare the WSDL for the CFC being referenced from instances running both Java versions.
The only difference (other than hostname between 2 instances) was that for the working (jdk-11.0.14.1+1) instance, the self referential namespace references were pointing to https://[host]/[cfcname].cfc and for the non working (jdk-11.0.15+10) version, it is pointing to http://[host]/[cfcname].cfc
i.e. switched from http`s` to http.
It should be noted that SSL is implemented on the level 7 load balancer (AWS Application Load Balancer) with traffic between load balancer and nginx proxy, and between nginx proxy and Lucee server (WildFly / Undertow / Commandbox) being via http.
Our nginx proxy is configured to redirect any incoming http:// requests to the same URL via https://
I have review load balancer logs, and determined that no incoming requests to [host]/[cfcname].cfc have been made via http - all are via https
No idea if the above is the cause, or if there is some other issue…
SOAP web service requests complete successfully from a jdk-11.0.15+10 instance to a jdk-11.0.14.1+1 instance, but do not complete successfully if the destination instance is running jdk-11.0.15+10
Is anyone able to shed any light on the above?
ps - I’ll also note that the instances running jdk-11.0.14.1+1 are running on CommandBox 5.4.2 whereas the jdk-11.0.15+10 instances are running on CommandBox 5.5.1 (just in case that is relevant)danlance
05/05/2022, 6:21 PM