titiwangsa
Jun 14th, 2007, 03:29 AM
hello to all
i'm using jsf + spring
i notice that the DelegatingPhaseListenerMulticaster
will always find phase listner bean and executes them
nothing wrong with that.
its what the DelegatingPhaseListenerMulticaster is supposed to do.
but i notice that
from this
- locked <3391a880> (a java.util.concurrent.ConcurrentHashMap)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.getBeanNamesForType(DefaultList ableBeanFactory.java:196)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.getBeansOfType(DefaultListableB eanFactory.java:242)
at org.springframework.context.support.AbstractApplic ationContext.getBeansOfType(AbstractApplicationCon text.java:796)
at org.springframework.beans.factory.BeanFactoryUtils .beansOfTypeIncludingAncestors(BeanFactoryUtils.ja va:257)
at org.springframework.web.jsf.DelegatingPhaseListene rMulticaster.getDelegates(DelegatingPhaseListenerM ulticaster.java:99)
at org.springframework.web.jsf.DelegatingPhaseListene rMulticaster.afterPhase(DelegatingPhaseListenerMul ticaster.java:80)
at org.apache.myfaces.lifecycle.PhaseListenerManager. informPhaseListenersAfter(PhaseListenerManager.jav a:92)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute Phase(LifecycleImpl.java:99)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute (LifecycleImpl.java:70)
at javax.faces.webapp.FacesServlet.service(FacesServl et.java:139)
that it finds the delegates on every phase.
my question is, is there a way i can cache the delegate beans so that
these lines
- locked <3391a880> (a java.util.concurrent.ConcurrentHashMap)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.getBeanNamesForType(DefaultList ableBeanFactory.java:196)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.getBeansOfType(DefaultListableB eanFactory.java:242)
at org.springframework.context.support.AbstractApplic ationContext.getBeansOfType(AbstractApplicationCon text.java:796)
at org.springframework.beans.factory.BeanFactoryUtils .beansOfTypeIncludingAncestors(BeanFactoryUtils.ja va:257)
are not executed on every phase..
this is because my threads are locked
bash-3.2# grep "3391a880" 559-catalina.out | sort | uniq -c | sort -n
1 - locked <3391a880> (a java.util.concurrent.ConcurrentHashMap)
178 - waiting to lock <3391a880> (a java.util.concurrent.ConcurrentHashMap)
bash-3.2#
any help is greatly appreciated.
i'm using jsf + spring
i notice that the DelegatingPhaseListenerMulticaster
will always find phase listner bean and executes them
nothing wrong with that.
its what the DelegatingPhaseListenerMulticaster is supposed to do.
but i notice that
from this
- locked <3391a880> (a java.util.concurrent.ConcurrentHashMap)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.getBeanNamesForType(DefaultList ableBeanFactory.java:196)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.getBeansOfType(DefaultListableB eanFactory.java:242)
at org.springframework.context.support.AbstractApplic ationContext.getBeansOfType(AbstractApplicationCon text.java:796)
at org.springframework.beans.factory.BeanFactoryUtils .beansOfTypeIncludingAncestors(BeanFactoryUtils.ja va:257)
at org.springframework.web.jsf.DelegatingPhaseListene rMulticaster.getDelegates(DelegatingPhaseListenerM ulticaster.java:99)
at org.springframework.web.jsf.DelegatingPhaseListene rMulticaster.afterPhase(DelegatingPhaseListenerMul ticaster.java:80)
at org.apache.myfaces.lifecycle.PhaseListenerManager. informPhaseListenersAfter(PhaseListenerManager.jav a:92)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute Phase(LifecycleImpl.java:99)
at org.apache.myfaces.lifecycle.LifecycleImpl.execute (LifecycleImpl.java:70)
at javax.faces.webapp.FacesServlet.service(FacesServl et.java:139)
that it finds the delegates on every phase.
my question is, is there a way i can cache the delegate beans so that
these lines
- locked <3391a880> (a java.util.concurrent.ConcurrentHashMap)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.getBeanNamesForType(DefaultList ableBeanFactory.java:196)
at org.springframework.beans.factory.support.DefaultL istableBeanFactory.getBeansOfType(DefaultListableB eanFactory.java:242)
at org.springframework.context.support.AbstractApplic ationContext.getBeansOfType(AbstractApplicationCon text.java:796)
at org.springframework.beans.factory.BeanFactoryUtils .beansOfTypeIncludingAncestors(BeanFactoryUtils.ja va:257)
are not executed on every phase..
this is because my threads are locked
bash-3.2# grep "3391a880" 559-catalina.out | sort | uniq -c | sort -n
1 - locked <3391a880> (a java.util.concurrent.ConcurrentHashMap)
178 - waiting to lock <3391a880> (a java.util.concurrent.ConcurrentHashMap)
bash-3.2#
any help is greatly appreciated.