"IceSSL: handshake error" when trying to open images from OMERO database, using recent Fiji

Hi,

With a recent Fiji app download, that contains the newest Java (e.g. on my macOS Fiji.app/java/macosx/adoptopenjdk-8.jdk), I get a handshake error when trying to open the images stored on OMERO.
This does not happen with older Java version in Fiji.

The script I am using is basically the same as the OMERO training script found here, which gives the same error:

Ice.SecurityException
    reason = "IceSSL: handshake error"
	at IceInternal.AsyncResultI.__wait(AsyncResultI.java:276)
	at Ice.ObjectPrxHelperBase.end_ice_isA(ObjectPrxHelperBase.java:310)
	at Ice.ObjectPrxHelperBase.ice_isA(ObjectPrxHelperBase.java:92)
	at Ice.ObjectPrxHelperBase.ice_isA(ObjectPrxHelperBase.java:69)
	at Ice.ObjectPrxHelperBase.checkedCastImpl(ObjectPrxHelperBase.java:2810)
	at Ice.ObjectPrxHelperBase.checkedCastImpl(ObjectPrxHelperBase.java:2770)
	at Glacier2.RouterPrxHelper.checkedCast(RouterPrxHelper.java:1787)
	at omero.client.getRouter(client.java:802)
	at omero.client.createSession(client.java:723)
	at omero.gateway.Gateway.createSession(Gateway.java:1054)
	at omero.gateway.Gateway.connect(Gateway.java:259)
	at omero.gateway.Gateway$connect.call(Unknown Source)
	at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48)
	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113)
	at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125)
	at Script5.omeroConnect(Script5.groovy:309)
	at Script5.run(Script5.groovy:66)
	at org.scijava.plugins.scripting.groovy.GroovyScriptEngine.eval(GroovyScriptEngine.java:303)
	at org.scijava.plugins.scripting.groovy.GroovyScriptEngine.eval(GroovyScriptEngine.java:122)
	at javax.script.AbstractScriptEngine.eval(AbstractScriptEngine.java:264)
	at org.scijava.script.ScriptModule.run(ScriptModule.java:160)
	at org.scijava.module.ModuleRunner.run(ModuleRunner.java:168)
	at org.scijava.module.ModuleRunner.call(ModuleRunner.java:127)
	at org.scijava.module.ModuleRunner.call(ModuleRunner.java:66)
	at org.scijava.thread.DefaultThreadService$3.call(DefaultThreadService.java:238)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Caused by: javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
	at sun.security.ssl.Handshaker.activate(Handshaker.java:509)
	at sun.security.ssl.SSLEngineImpl.kickstartHandshake(SSLEngineImpl.java:714)
	at sun.security.ssl.SSLEngineImpl.beginHandshake(SSLEngineImpl.java:741)
	at IceSSL.SSLEngine.createSSLEngine(SSLEngine.java:856)
	at IceSSL.Instance.createSSLEngine(Instance.java:42)
	at IceSSL.ConnectorI.connect(ConnectorI.java:30)
	at IceInternal.OutgoingConnectionFactory$ConnectCallback.nextConnector(OutgoingConnectionFactory.java:1101)
	at IceInternal.OutgoingConnectionFactory$ConnectCallback.access$100(OutgoingConnectionFactory.java:868)
	at IceInternal.OutgoingConnectionFactory.getConnection(OutgoingConnectionFactory.java:569)
	at IceInternal.OutgoingConnectionFactory.access$800(OutgoingConnectionFactory.java:14)
	at IceInternal.OutgoingConnectionFactory$ConnectCallback.getConnection(OutgoingConnectionFactory.java:1048)
	at IceInternal.OutgoingConnectionFactory$ConnectCallback.connectors(OutgoingConnectionFactory.java:932)
	at IceInternal.EndpointHostResolver$1.run(EndpointHostResolver.java:103)
	... 3 more

Does anyone know how to fix this?
Thanks!

Hi
Which version of the OMERO.imagej plugin are you using?
The SSL issue with newer version of Java was fixed in version 5.5.3.
Upgrading the plugin to the latest version (5.5.7) should fix your issue

Cheers

Jmarie

Hi @j.burel

Thank you for your reply.
I am using 5.4.10, matching our server’s version.
I will give a newer OMERO.imageJ plugin version a try.
Thanks for clarifying that this expectation error has already been fixed in a newer version.
Bests,
Loïc