Skip to Content
0
Jun 11, 2018 at 12:51 PM

BO upgrade login Failed to establish confidential channel - Algorithm not supported on any devices

1249 Views Last edit Jun 11, 2018 at 12:53 PM 2 rev

Hi All,

we have upgraded out BO 4.1 to BO 4.2 SP5.

We have a java custom SSO login with SessionManager class. After the upgrade do not work anymore. We updated these jars with the respective latest version:

bcm, certjFIPS, cryptojce, cryptojFIPS, jcmFIPS, ssljFIPS

and here the java code:

ISessionMgr ism = CrystalEnterprise.getSessionMgr();

IEnterpriseSession sess = ism.logon(username, password, host + ":" + cmsPort, "secEnterprise");

we get this runtime error:

Jun 11, 2018 1:28:30 PM com.altevie.nbeghin.wfp.Retriever doGet
SEVERE: java.lang.Exception: com.crystaldecisions.sdk.exception.SDKException$ConfidentialChannelFailed: Failed to establish confidential channel. (FWM 02119)
cause:com.businessobjects.bcm.exception.UnexpectedError: An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)
detail:Failed to establish confidential channel. (FWM 02119) An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)
Jun 11, 2018 1:28:30 PM org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet [com.altevie.nbeghin.wfp.Retriever] in context with path [/BODocRetriever] threw exception [java.lang.Exception: java.lang.Exception: com.crystaldecisions.sdk.exception.SDKException$ConfidentialChannelFailed: Failed to establish confidential channel. (FWM 02119)
cause:com.businessobjects.bcm.exception.UnexpectedError: An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)
detail:Failed to establish confidential channel. (FWM 02119) An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)] with root cause
com.rsa.jsafe.JSAFE_UnimplementedException: Algorithm not supported on any devices
	at com.rsa.jsafe.JSAFE_PublicKey.a(Unknown Source)
	at com.rsa.jsafe.JSAFE_PublicKey.a(Unknown Source)
	at com.rsa.jsafe.JSAFE_PublicKey.getInstance(Unknown Source)
	at com.businessobjects.bcm.internal.ECDHKeyAgreeImpl.<init>(ECDHKeyAgreeImpl.java:31)
	at com.businessobjects.bcm.BCM.createKeyAgreement(BCM.java:1082)
	at com.businessobjects.bcm.BCM.createKeyAgreement(BCM.java:1086)
	at com.crystaldecisions.sdk.occa.security.internal.ConfidentialChannelService.establishConfidentialChannel(ConfidentialChannelService.java:175)
	at com.crystaldecisions.sdk.occa.security.internal.ConfidentialChannelService.createConfidentialChannel(ConfidentialChannelService.java:145)
	at com.crystaldecisions.sdk.occa.security.internal.CCMap.locateCCItem(CCMap.java:63)
	at com.crystaldecisions.sdk.occa.security.internal.LogonService.doUserLogon(LogonService.java:845)
	at com.crystaldecisions.sdk.occa.security.internal.LogonService.doUserLogon(LogonService.java:805)
	at com.crystaldecisions.sdk.occa.security.internal.LogonService.userLogon(LogonService.java:210)
	at com.crystaldecisions.sdk.occa.security.internal.SecurityMgr.userLogon(SecurityMgr.java:166)
	at com.crystaldecisions.sdk.framework.internal.SessionMgr.logon_aroundBody0(SessionMgr.java:454)
	at com.crystaldecisions.sdk.framework.internal.SessionMgr.logon_aroundBody1$advice(SessionMgr.java:512)
	at com.crystaldecisions.sdk.framework.internal.SessionMgr.logon(SessionMgr.java:1)
	at com.altevie.nbeghin.wfp.AbstractBOServlet.createSession(AbstractBOServlet.java:151)
	at com.altevie.nbeghin.wfp.AbstractBOServlet.getDocTicketURL(AbstractBOServlet.java:84)
	at com.altevie.nbeghin.wfp.Retriever.doGet(Retriever.java:69)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:808)




	at org.apache.logging.log4j.core.config.xml.XmlConfiguration.newDocumentBuilder(XmlConfiguration.java:194)
	at org.apache.logging.log4j.core.config.xml.XmlConfiguration.<init>(XmlConfiguration.java:92)
	at org.apache.logging.log4j.core.config.xml.XmlConfigurationFactory.getConfiguration(XmlConfigurationFactory.java:46)
	at org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:453)
	at org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:385)
	at org.apache.logging.log4j.core.config.ConfigurationFactory.getConfiguration(ConfigurationFactory.java:260)
	at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:615)
	at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:636)
	at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:231)
	at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
	at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
	at org.apache.logging.log4j.LogManager.getContext(LogManager.java:307)
	at org.apache.log4j.Logger$PrivateManager.getContext(Logger.java:59)
	at org.apache.log4j.Logger.getLogger(Logger.java:41)
	at com.altevie.nbeghin.wfp.AbstractBOServlet.<clinit>(AbstractBOServlet.java:51)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:451)
	at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:119)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1050)
	at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:779)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:133)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:808)
ERROR StatusLogger Caught java.lang.AbstractMethodError setting feature http://apache.org/xml/features/nonvalidating/load-external-dtd to false on DocumentBuilderFactory org.apache.xerces.jaxp.DocumentBuilderFactoryImpl@2d11d80: java.lang.AbstractMethodError: Class "org.apache.xerces.jaxp.DocumentBuilderFactoryImpl" does not implement the requested method "setFeature(Ljava/lang/String;Z)V" inherited from abstract class "javax.xml.parsers.DocumentBuilderFactory"
 java.lang.AbstractMethodError: Class "org.apache.xerces.jaxp.DocumentBuilderFactoryImpl" does not implement the requested method "setFeature(Ljava/lang/String;Z)V" inherited from abstract class "javax.xml.parsers.DocumentBuilderFactory"
	at org.apache.logging.log4j.core.config.xml.XmlConfiguration.setFeature(XmlConfiguration.java:213)
	at org.apache.logging.log4j.core.config.xml.XmlConfiguration.disableDtdProcessing(XmlConfiguration.java:207)
	at org.apache.logging.log4j.core.config.xml.XmlConfiguration.newDocumentBuilder(XmlConfiguration.java:194)
	at org.apache.logging.log4j.core.config.xml.XmlConfiguration.<init>(XmlConfiguration.java:92)
	at org.apache.logging.log4j.core.config.xml.XmlConfigurationFactory.getConfiguration(XmlConfigurationFactory.java:46)
	at org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:453)
	at org.apache.logging.log4j.core.config.ConfigurationFactory$Factory.getConfiguration(ConfigurationFactory.java:385)
	at org.apache.logging.log4j.core.config.ConfigurationFactory.getConfiguration(ConfigurationFactory.java:260)
	at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:615)
	at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:636)
	at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:231)
	at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:153)
	at org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:45)
	at org.apache.logging.log4j.LogManager.getContext(LogManager.java:307)
	at org.apache.log4j.Logger$PrivateManager.getContext(Logger.java:59)
	at org.apache.log4j.Logger.getLogger(Logger.java:41)
	at com.altevie.nbeghin.wfp.AbstractBOServlet.<clinit>(AbstractBOServlet.java:51)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.lang.Class.newInstance(Class.java:451)
	at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:119)
	at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1050)
	at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:779)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:133)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:808)
java.lang.Exception: java.lang.Exception: com.crystaldecisions.sdk.exception.SDKException$ConfidentialChannelFailed: Failed to establish confidential channel. (FWM 02119)
cause:com.businessobjects.bcm.exception.UnexpectedError: An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)
detail:Failed to establish confidential channel. (FWM 02119) An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)
	at com.altevie.nbeghin.wfp.AbstractBOServlet.getDocTicketURL(AbstractBOServlet.java:101)
	at com.altevie.nbeghin.wfp.Retriever.doGet(Retriever.java:69)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:799)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:861)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1455)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:808)
Caused by: java.lang.Exception: com.crystaldecisions.sdk.exception.SDKException$ConfidentialChannelFailed: Failed to establish confidential channel. (FWM 02119)
cause:com.businessobjects.bcm.exception.UnexpectedError: An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)
detail:Failed to establish confidential channel. (FWM 02119) An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)
	at com.altevie.nbeghin.wfp.AbstractBOServlet.createSession(AbstractBOServlet.java:156)
	at com.altevie.nbeghin.wfp.AbstractBOServlet.getDocTicketURL(AbstractBOServlet.java:84)
	... 24 more
Caused by: com.crystaldecisions.sdk.exception.SDKException$ConfidentialChannelFailed: Failed to establish confidential channel. (FWM 02119)
cause:com.businessobjects.bcm.exception.UnexpectedError: An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)
detail:Failed to establish confidential channel. (FWM 02119) An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)
	at com.crystaldecisions.sdk.occa.security.internal.ConfidentialChannelService.establishConfidentialChannel(ConfidentialChannelService.java:199)
	at com.crystaldecisions.sdk.occa.security.internal.ConfidentialChannelService.createConfidentialChannel(ConfidentialChannelService.java:145)
	at com.crystaldecisions.sdk.occa.security.internal.CCMap.locateCCItem(CCMap.java:63)
	at com.crystaldecisions.sdk.occa.security.internal.LogonService.doUserLogon(LogonService.java:845)
	at com.crystaldecisions.sdk.occa.security.internal.LogonService.doUserLogon(LogonService.java:805)
	at com.crystaldecisions.sdk.occa.security.internal.LogonService.userLogon(LogonService.java:210)
	at com.crystaldecisions.sdk.occa.security.internal.SecurityMgr.userLogon(SecurityMgr.java:166)
	at com.crystaldecisions.sdk.framework.internal.SessionMgr.logon_aroundBody0(SessionMgr.java:454)
	at com.crystaldecisions.sdk.framework.internal.SessionMgr.logon_aroundBody1$advice(SessionMgr.java:512)
	at com.crystaldecisions.sdk.framework.internal.SessionMgr.logon(SessionMgr.java:1)
	at com.altevie.nbeghin.wfp.AbstractBOServlet.createSession(AbstractBOServlet.java:151)
	... 25 more
Caused by: com.businessobjects.bcm.exception.UnexpectedError: An unexpected error occurred(Algorithm not supported on any devices). Please validate recently changed internal code. (Algorithm not supported on any devices)
	at com.businessobjects.bcm.internal.ECDHKeyAgreeImpl.<init>(ECDHKeyAgreeImpl.java:39)
	at com.businessobjects.bcm.BCM.createKeyAgreement(BCM.java:1082)
	at com.businessobjects.bcm.BCM.createKeyAgreement(BCM.java:1086)
	at com.crystaldecisions.sdk.occa.security.internal.ConfidentialChannelService.establishConfidentialChannel(ConfidentialChannelService.java:175)
	... 35 more
Caused by: com.rsa.jsafe.JSAFE_UnimplementedException: Algorithm not supported on any devices
	at com.rsa.jsafe.JSAFE_PublicKey.a(Unknown Source)
	at com.rsa.jsafe.JSAFE_PublicKey.a(Unknown Source)
	at com.rsa.jsafe.JSAFE_PublicKey.getInstance(Unknown Source)
	at com.businessobjects.bcm.internal.ECDHKeyAgreeImpl.<init>(ECDHKeyAgreeImpl.java:31)
	... 38 more<br>

Any idea?

Many Thanks!

Gennaro