cancel
Showing results for 
Search instead for 
Did you mean: 

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

Former Member
0 Kudos

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.

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

RenamingC:\Program Files (x86)\SAP BusinessObjects\tomcat\work\Catalina\localhost and C:\Program Files (x86)\SAP BusinessObjects\tomcat\conf\Catalina\localhost did the trick again !

I hope I won't have to do this everytime I reboot the VM...

patelyogesh
Active Contributor
0 Kudos

Please run a repair on installation.

-Yogesh

Former Member
0 Kudos

Thank you for your answer. I kept on googling and finally came across this solution :

http://www.forumtopics.com/busobj/viewtopic.php?p=954297

  1. Stop Tomcat and SIA
  2. Go to this folder under Tomcat - C:\Program Files (x86)\SAP BusinessObjects\tomcat\work\Catalina
  3. Rename localhost to localhost_old
  4. Go to this folder under Tomcat - C:\Program Files (x86)\SAP BusinessObjects\tomcat\conf\Catalina
  5. Rename locahost to localhost_old
  6. Start SIA and Tomcat
  7. Wait for 15 ~ 20 mins (Until all the applications gets re-deployed)

And it worked...

But this morning, after

  • adding more RAM
  • installing SAP Business Objects Explorer
  • restarting to complete Windows updates,

I got another error 500.

Etat HTTP 500 - while trying to invoke the method java.util.Properties.entrySet() of an object loaded from local variable 'globalProperties'

type Rapport d''exception

message while trying to invoke the method java.util.Properties.entrySet() of an object loaded from local variable 'globalProperties'

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

exception

java.lang.NullPointerException: while trying to invoke the method java.util.Properties.entrySet() of an object loaded from local variable 'globalProperties'
com.businessobjects.servletbridge.customconfig.Config.<init>(Config.java:37)
com.businessobjects.servletbridge.customconfig.ConfigReader.getConfig(ConfigReader.java:370)
com.businessobjects.pinger.TimeoutManagerFilter.getSessionState(TimeoutManagerFilter.java:203)
com.businessobjects.pinger.TimeoutManagerFilter.doFilter(TimeoutManagerFilter.java:82)
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.

patelyogesh
Active Contributor
0 Kudos

Hello Karine SANCHE,

In other words, what you did is redeployed BOE application on tomcat. This could be done by running repair on your installation.

Thank you

Yogesh

Former Member
0 Kudos

I thought that running repair consisted in running the install program again (what I did but after 2 hours it did not solve anything, it even worsened things) but maybe there is another repair option.

But redeploying (thank you for providing the right term) did the trick.

former_member185603
Active Contributor
0 Kudos

Can you try to run the repair on the install?