Studio remote debugging error

  • KM02803433
  • 31-May-2017
  • 21-May-2021

Summary

Studio remote debugging failure can happen due to an SSL communication error.

Error

The remote debugging in Studio failed with an error mentioning 'An error has occurred when connecting to the engine. Check the log file for errors' and Studio.log file contained the following ERROR log messages.

2017-YY-DD 22:39:27,910 ERROR EnginesConnectionsServiceImpl.requiresAuthentication:149 error during requiresAuthentication check on https://localhost:8443/oo :
javax.net.ssl.SSLPeerUnverifiedException: Host name 'localhost' does not match the certificate subject provided by the peer (CN=myhost192)
 at org.apache.http.conn.ssl.SSLConnectionSocketFactory.verifyHostname(SSLConnectionSocketFactory.java:465)
 at org.apache.http.conn.ssl.SSLConnectionSocketFactory.createLayeredSocket(SSLConnectionSocketFactory.java:395)
 at org.apache.http.conn.ssl.SSLConnectionSocketFactory.connectSocket(SSLConnectionSocketFactory.java:353)
 at org.apache.http.impl.conn.DefaultHttpClientConnectionOperator.connect(DefaultHttpClientConnectionOperator.java:134)
 at org.apache.http.impl.conn.PoolingHttpClientConnectionManager.connect(PoolingHttpClientConnectionManager.java:353)
 at org.apache.http.impl.execchain.MainClientExec.establishRoute(MainClientExec.java:380)
 at org.apache.http.impl.execchain.MainClientExec.execute(MainClientExec.java:236)
 at org.apache.http.impl.execchain.ProtocolExec.execute(ProtocolExec.java:184)
 at org.apache.http.impl.execchain.RetryExec.execute(RetryExec.java:88)
 at org.apache.http.impl.execchain.RedirectExec.execute(RedirectExec.java:110)
 at org.apache.http.impl.client.InternalHttpClient.doExecute(InternalHttpClient.java:184)
 at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:82)
 at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:107)
 at com.hp.oo.studio.debugger.engine.services.EnginesConnectionsServiceImpl.requiresAuthentication(EnginesConnectionsServiceImpl.java:138)
 at com.iconclude.dharma.app.OperationStudio$DebugEditorFactory.checkRequiresAuthentication(OperationStudio.java:2962)
 at com.iconclude.dharma.app.OperationStudio$DebugEditorFactory.getEngineConnection(OperationStudio.java:2919)
 at com.iconclude.dharma.app.OperationStudio$DebugEditorFactory.createDebugEditor(OperationStudio.java:2874)
 at com.iconclude.dharma.app.JIDEDesktopManager.displayEditorForDebug(JIDEDesktopManager.java:476)
 at com.iconclude.dharma.app.JIDEDesktopManager.displayDebugEditorForSubject(JIDEDesktopManager.java:466)
 at com.iconclude.dharma.app.OperationStudio.showExecutionPanel(OperationStudio.java:2773)
 at com.iconclude.dharma.app.actions.DebugAction$1.run(DebugAction.java:43)
 at java.lang.Thread.run(Thread.java:745)
2017-YY-DD 22:39:27,988 ERROR EnginesConnectionsServiceImpl$BasicAuthenticationCommonsHttpInvokerRequestExecutor.doExecuteRequest:553 Error invoking remote service
https://localhost:8443/oo/central-remoting/engineExecutionFacade

 

Cause

The error was an SSL communication failure and was related to the subject(CN) of the server certificate of Central. The SSL communication failed the host verification in the Studio side.

 

Fix

One of options would be to replace the current Central certificate with a new one with CN='<hostname_for_remote_debugging>'.

Another quick option would be to set ‘-Dssl.verifyHostName=false’ in Studio.l4j.ini.