After upgrading to IBM Notes 9.0.1 on my Mac the IBM Connections activities sidebar plugin failed to connect to our IBM Connections server. After tingering around with connection settings I checked the trace log and saw the below stacktrace:
CWPST0306W: An exception occurred while invoking the target method login. javax.security.auth.login.LoginException at com.ibm.rcp.accounts.internal.auth.module.AbstractJ2eeFormLoginModule.login(AbstractJ2eeFormLoginModule.java:393) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.ibm.rcp.security.auth.ExtLoginModuleProxy.invokeImpl(ExtLoginModuleProxy.java:109) at com.ibm.rcp.internal.security.AbstractProxy.invoke(AbstractProxy.java:77) at com.sun.proxy.$Proxy2.login(Unknown Source) at com.ibm.rcp.security.auth.ExtLoginModuleProxy.login(ExtLoginModuleProxy.java:141) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at javax.security.auth.login.LoginContext.invoke(LoginContext.java:769) at javax.security.auth.login.LoginContext.access$000(LoginContext.java:186) at javax.security.auth.login.LoginContext$4.run(LoginContext.java:683) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680) at javax.security.auth.login.LoginContext.login(LoginContext.java:579) at com.ibm.rcp.security.auth.service.AbstractLoginService.login(AbstractLoginService.java:125) at com.ibm.rcp.accounts.internal.AccountsLoginContextServiceImpl.login(AccountsLoginContextServiceImpl.java:189) at com.ibm.rcp.net.http.internal.URLConnectionFactory.getURLConnection(URLConnectionFactory.java:175) at com.ibm.rcp.net.http.internal.URLConnectionFactory.getURLConnection(URLConnectionFactory.java:69) at com.ibm.rcp.net.http.internal.protocol.HttpsURLConnection.(HttpsURLConnection.java:73) at com.ibm.rcp.net.http.internal.protocol.HttpsHandler.createURLConnection(HttpsHandler.java:42) at com.ibm.rcp.net.http.internal.protocol.BaseHandler.openConnection(BaseHandler.java:73) at com.ibm.rcp.net.http.internal.protocol.BaseHandler.openConnection(BaseHandler.java:96) at org.eclipse.osgi.framework.internal.protocol.URLStreamHandlerProxy.openConnection(URLStreamHandlerProxy.java:112) at java.net.URL.openConnection(URL.java:945) at com.ibm.lconn.client.base.service.Connector.getConnection(Connector.java:69) at com.ibm.lconn.client.base.service.Connector.get(Connector.java:39) at com.ibm.lconn.client.base.service.ServiceFeedUtil.getHiddenEmail(ServiceFeedUtil.java:278) at com.ibm.lconn.client.base.service.ServiceFeedUtil$1.run(ServiceFeedUtil.java:212) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: java.lang.IllegalArgumentException: TLSv1.1 at com.sun.net.ssl.internal.ssl.ProtocolVersion.valueOf(ProtocolVersion.java:133) at com.sun.net.ssl.internal.ssl.ProtocolList.(ProtocolList.java:38) at com.sun.net.ssl.internal.ssl.SSLSocketImpl.setEnabledProtocols(SSLSocketImpl.java:2218) at com.ibm.rcp.security.ssl.PlatformSSLProtocolSocketFactory.createSocket(PlatformSSLProtocolSocketFactory.java:158) at sun.net.www.protocol.https.HttpsClient.createSocket(HttpsClient.java:404) at sun.net.NetworkClient.doConnect(NetworkClient.java:145) at sun.net.www.http.HttpClient.openServer(HttpClient.java:424) at sun.net.www.http.HttpClient.openServer(HttpClient.java:538) at sun.net.www.protocol.https.HttpsClient.(HttpsClient.java:276) at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367) at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:172) at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:966) at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:158) at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1031) at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(HttpsURLConnectionImpl.java:230) at com.ibm.rcp.accounts.internal.auth.module.AbstractJ2eeFormLoginModule.executeLogin(AbstractJ2eeFormLoginModule.java:180) at com.ibm.rcp.accounts.internal.auth.module.AbstractJ2eeFormLoginModule.login(AbstractJ2eeFormLoginModule.java:364) ... 33 more
The issue is caused by IBM Notes on Mac using the standard Apple Java v. 1.6 that doesn’t support TLS v. 1.1 and it seems like the newer versions of the sidebar plugin forces the TLS version to 1.1. I couldn’t find a way using JVM arguments to change that.
After corresponding with IBM the issue has been confirmed and is tracked as IBM Notes SPR #NPEI9Y85BZ and the Lotus Expeditor team is working on a fix. If you open a PMR and reference this detect you will receive the fix once ready.
Just in case you have not yet received the fix. Interim Fix 1 is ready and does what you’ll expect: http://www-01.ibm.com/support/docview.wss?uid=swg21657963
LikeLike