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 :
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.