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