Error while calling Rest Service: java.security.PrivilegedActionException: javax.net.ssl.SSLException: Connection reset

0
Hello All, I’m getting below error while invoking rest API using Call REST Post activity in microflow. This error is happening very random and there is no clear steps or path to reproduce the issue. Can you please help to understand whether is it issue from server side or with my mendix application. What are all the best possible way to reproduce and fix this issue.  Here is complete stack trace of issue. Advanced stacktrace: at com.mendix.integration.actions.microflow.RestCallAction.execute(RestCallAction.scala:59) Caused by: java.security.PrivilegedActionException: javax.net.ssl.SSLException: Connection reset at com.mendix.integration.util.PrivilegedUtil$$anonfun$withPrivileged$2.applyOrElse(PrivilegedUtil.scala:17) Caused by: null at java.base/java.security.AccessController.doPrivileged(Native Method) at com.mendix.integration.util.PrivilegedUtil$.$anonfun$withPrivileged$1(PrivilegedUtil.scala:13) at scala.util.Try$.apply(Try.scala:213) at com.mendix.integration.util.PrivilegedUtil$.withPrivileged(PrivilegedUtil.scala:13) at com.mendix.http.LoggableHttpClient.execute(LoggableHttpClient.scala:26) at com.mendix.integration.actions.microflow.RestCallAction.executeRequest(RestCallAction.scala:74) at com.mendix.integration.actions.microflow.RestCallAction.execute(RestCallAction.scala:54) at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.java:49) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.java:215) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.java:165) at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:46) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:71) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:49) at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:54) at com.mendix.basis.actionmanagement.ActionManagerBase$1.execute(ActionManagerBase.java:147) at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32) at com.mendix.basis.actionmanagement.ActionManagerBase.executeSync(ActionManagerBase.java:152) at com.mendix.basis.component.InternalCoreBase.executeSync(InternalCoreBase.java:382) at com.mendix.modules.microflowengine.MicroflowExecuter$.executeSync(MicroflowExecuter.scala:19) at com.mendix.modules.microflowengine.actions.SubMicroflowAction.execute(SubMicroflowAction.scala:49) at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.java:49) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.java:215) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.java:165) at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:46) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:71) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:49) at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:54) at com.mendix.basis.actionmanagement.ActionManagerBase$1.execute(ActionManagerBase.java:147) at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32) at com.mendix.basis.actionmanagement.ActionManagerBase.executeSync(ActionManagerBase.java:152) at com.mendix.basis.component.InternalCoreBase.executeSync(InternalCoreBase.java:382) at com.mendix.modules.microflowengine.MicroflowExecuter$.executeSync(MicroflowExecuter.scala:19) at com.mendix.modules.microflowengine.actions.SubMicroflowAction.execute(SubMicroflowAction.scala:49) at com.mendix.modules.microflowengine.microflow.impl.MicroflowObject.execute(MicroflowObject.java:49) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAfterBreakingIfNecessary(MicroflowImpl.java:215) at com.mendix.modules.microflowengine.microflow.impl.MicroflowImpl.executeAction(MicroflowImpl.java:165) at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:46) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:71) at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:49) at com.mendix.core.actionmanagement.CoreAction.call(CoreAction.java:54) at com.mendix.basis.actionmanagement.ActionManagerBase$1.execute(ActionManagerBase.java:147) at com.mendix.util.classloading.Runner.doRunUsingClassLoaderOf(Runner.java:32) at com.mendix.basis.actionmanagement.ActionManagerBase.executeSync(ActionManagerBase.java:152) at com.mendix.basis.actionmanagement.MicroflowCallBuilderImpl.execute(MicroflowCallBuilderImpl.scala:40) at com.mendix.webui.actions.microflow.GoHome$.go(ShowHomePageAction.scala:52) at com.mendix.webui.actions.client.GetSessionDataAction.handleHomePageIfAccessible(GetSessionDataAction.scala:185) at com.mendix.webui.actions.client.GetSessionDataAction.$anonfun$execute$9(GetSessionDataAction.scala:76) at com.mendix.webui.requesthandling.helpers.StateHandling.withState(StateHandling.scala:35) at com.mendix.webui.requesthandling.helpers.StateHandling.withState$(StateHandling.scala:32) at com.mendix.webui.actions.client.GetSessionDataAction.withState(GetSessionDataAction.scala:28) at com.mendix.webui.requesthandling.helpers.StateHandling.withState(StateHandling.scala:29) at com.mendix.webui.requesthandling.helpers.StateHandling.withState$(StateHandling.scala:22) at com.mendix.webui.actions.client.GetSessionDataActi
asked
5 answers
1

As the given Mendix version is 8.9.0, it is likely a Mendix bug (also mentioned here) which is resolved in 8.18.1:

If you can't upgrade to 8.18.1 you can manually change your settings to 355. In Mendix Cloud, you can do this by going to the runtime settings of your environment (you will have to set this for every environment separately):

Hope this helps

answered
0

The actual error is: java.security.PrivilegedActionException: javax.net.ssl.SSLException: Connection reset

Try to google this error. There are lot of reasons why this could happen. Try to strike out every reason until you find the solution for this. 

https://docs.oracle.com/javase/7/docs/api/javax/net/ssl/SSLException.html

https://www.csoonline.com/article/3246212/what-is-ssl-tls-and-how-this-encryption-protocol-works.html

In short, you are making a REST call to a https URL, which has some issues getting connected.

What I recently encountered is, companies started using the latest TLS version. So, I got some errors when this does not match. May be its good to check that as well.

answered
0

Hi,

In your microflow, make sure to close the connection at the end.

answered
0

It’s a TLS .3 issue with large payloads. The solution is explained there: https://github.com/structurizr/java/issues/119

answered
0

Were you able to resolve this? I am having the same issue using Mendix 9.18.1.

answered