http://coldfusion.com logo
#lucee
Title
# lucee
d

danlance

05/05/2022, 4:57 PM
Hi. Got a bit of a strange one here… We are using Lucee 5.3.7.47 We have 2 CFML applications running on separate instances. One of those instances makes a SOAP call to a CFC on the other server:
Copy code
local.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)”
Copy code
"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)
I’ve created another build using jdk-11.0.14.1+1 and CommandBox 5.5.1, and this is also failing in the same way - therefore I suspect that this may be a CommandBox rather than a JDK specific issue… Will post under #box-products
2 Views