Skip to Content
0
Former Member
Oct 27, 2017 at 04:01 PM

First launch of BO 4.1 after install, getting NoClassDefFoundError when launching CMC

609 Views

I am a total BO beginner, so I created a VM with Windows Server 2008 R2 x64, installed 160+ Windows updates, .NET Framework 3.5, downloaded and unzipped the necessary installation packages (the ones starting with 51046778) and finally installed BusinessObjects 4.1. After more than 2 hours 1/2, installation was complete.

Then I tried launching CMC, but I landed on a 500 error page caused by

java.lang.ClassNotFoundException: com.sap.security.core.server.csi.util.URLEncoder.

I googled and tried several solutions, all of them failed :

  • using another browser (Chrome instead of IE)
  • restarting VM
  • restarting Tomcat, SIA and WWW publication server in Central Configuration Manager
  • searching for above mentioned package com.sap.security.core.server.csi.jar : found it in 3 different locations
  • adding a JAVA_HOME environment variable linking to C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win64_x64\sapjvm
  • adding this to Path environment variable : %JAVA_HOME%\bin
  • adding this to Path environment variable : C:\Program Files (x86)\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win64_x64

Some forum posts mention checking classpath, but I really have no clue about where this classpath is located (inside some property file ?)

Here is the complete error message :

Etat HTTP 500 - L''exécution de la servlet a lancé une exception

type Rapport d''exception

message L''exécution de la servlet a lancé une exception

description Le serveur a rencontré une erreur interne qui l''a empêché de satisfaire la requête.

exception

javax.servlet.ServletException: L''exécution de la servlet a lancé une exception
com.businessobjects.pinger.TimeoutManagerFilter.doFilter(TimeoutManagerFilter.java:168)
cause mère

java.lang.NoClassDefFoundError: com/sap/security/core/server/csi/util/URLEncoder
com.businessobjects.bip.core.web.context.CoreWebParameters.getUrlParams(CoreWebParameters.java:53)
com.businessobjects.bip.core.web.boetrustguard.BOETrustPrepareFilter.setCafUrlParamsThread(BOETrustPrepareFilter.java:61)
com.businessobjects.bip.core.web.boetrustguard.BOETrustPrepareFilter.doFilter(BOETrustPrepareFilter.java:34)
com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72)
com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43)
com.businessobjects.bip.core.web.supportabilty.TraceLogScopeFilter.doFilter(TraceLogScopeFilter.java:38)
com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72)
com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43)
com.businessobjects.sdk.actionfilter.WorkflowFilter.doFilter(WorkflowFilter.java:45)
com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72)
com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43)
com.businessobjects.bip.core.web.appcontext.RequestInitFilter.doFilter(RequestInitFilter.java:26)
com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72)
com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43)
com.businessobjects.http.servlet.internal.BundlePathAwareServiceHandler.serviceHelper(BundlePathAwareServiceHandler.java:235)
com.businessobjects.http.servlet.internal.BundlePathAwareServiceHandler.service(BundlePathAwareServiceHandler.java:197)
com.businessobjects.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.eclipse.equinox.servletbridge.BridgeServlet.service(BridgeServlet.java:220)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
com.businessobjects.pinger.TimeoutManagerFilter.doFilter(TimeoutManagerFilter.java:168)
cause mère

java.lang.ClassNotFoundException: com.sap.security.core.server.csi.util.URLEncoder
org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:489)
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:405)
org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:393)
org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:105)
java.lang.ClassLoader.loadClass(ClassLoader.java:313)
com.businessobjects.bip.core.web.context.CoreWebParameters.getUrlParams(CoreWebParameters.java:53)
com.businessobjects.bip.core.web.boetrustguard.BOETrustPrepareFilter.setCafUrlParamsThread(BOETrustPrepareFilter.java:61)
com.businessobjects.bip.core.web.boetrustguard.BOETrustPrepareFilter.doFilter(BOETrustPrepareFilter.java:34)
com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72)
com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43)
com.businessobjects.bip.core.web.supportabilty.TraceLogScopeFilter.doFilter(TraceLogScopeFilter.java:38)
com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72)
com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43)
com.businessobjects.sdk.actionfilter.WorkflowFilter.doFilter(WorkflowFilter.java:45)
com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72)
com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43)
com.businessobjects.bip.core.web.appcontext.RequestInitFilter.doFilter(RequestInitFilter.java:26)
com.businessobjects.http.servlet.internal.FilterRegistration.doFilter(FilterRegistration.java:72)
com.businessobjects.http.servlet.internal.filter.FilterChainImpl.doFilter(FilterChainImpl.java:43)
com.businessobjects.http.servlet.internal.BundlePathAwareServiceHandler.serviceHelper(BundlePathAwareServiceHandler.java:235)
com.businessobjects.http.servlet.internal.BundlePathAwareServiceHandler.service(BundlePathAwareServiceHandler.java:197)
com.businessobjects.http.servlet.internal.ProxyServlet.service(ProxyServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
org.eclipse.equinox.servletbridge.BridgeServlet.service(BridgeServlet.java:220)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
com.businessobjects.pinger.TimeoutManagerFilter.doFilter(TimeoutManagerFilter.java:168)
note La trace complète de la cause mère de cette erreur est disponible dans les fichiers journaux de Apache Tomcat/7.0.32.