Hello,
I am currently using a jetspeed version I have checked out last week.
This version work well but after about 5 minutes I have the following
exception :
Horrible Exception: org.apache.jetspeed.om.profile.ProfileException:
java.lang.ClassCastException:
org.apache.jetspeed.om.profile.BasePSMLDocument at
org.apache.jetspeed.services.profiler.JetspeedProfilerService.getProfile(Jet
speedProfilerService.java:310) at
org.apache.jetspeed.services.profiler.JetspeedProfilerService.getProfile(Jet
speedProfilerService.java:336) at
org.apache.jetspeed.services.Profiler.getProfile(Profiler.java:121) at
org.apache.jetspeed.modules.actions.JetspeedSessionValidator.doPerform(Jetsp
eedSessionValidator.java:126) at
org.apache.turbine.modules.Action.perform(Action.java:87) at
org.apache.turbine.modules.ActionLoader.exec(ActionLoader.java:122) at
org.apache.turbine.Turbine.doGet(Turbine.java:405) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:740) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at
org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404) at
org.apache.tomcat.core.Handler.service(Handler.java:286) at
org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372) at
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
7) at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
at
org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
onnectionHandler.java:210) at
org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416) at
org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
at java.lang.Thread.run(Thread.java:484)
I think I found where does the problem come from :
When the PSMLManager refresh PSML Documents, It calls the following method :
public PSMLDocument getDocument( String name )
In this method there is a call to :
.....
documents.put(name, new WeakReference(doc));
.....
In another method : PSMLDocument getDocument( ProfileLocator locator ),
there is a call to :
.....
synchronized (documents)
{
ref = (WeakReference)documents.get(name);
}
if (ref != null)
{
profile = (Profile)ref.get();
}
.....
This method (ref.get()) throws a ClassCastException, because we don't have a
Profile but a Document in the ref....
I hope that this is clear and that I am right .....
Could you tell me if it is a bug ?
Thanks....
> Christophe Mestrallet
> Chef de projet
> Axemble
> for Corporate Departments
> [EMAIL PROTECTED]
> www.axemble.com
> Tel : 04 78 87 29 29
> Fax : 04 78 87 29 00
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]