(sorry my poor english)

1. Mutual dependency (I assume the confused design)
SessionManager and SessionValidationScheduler configuration have to do set
mutual

  <bean id="*sessionManager*"
      class="org.apache.shiro.web.session.mgt.DefaultWebSessionManager">
    <property name="sessionDAO">
      <bean
class="org.apache.shiro.session.mgt.eis.EnterpriseCacheSessionDAO"/>
    </property>
    *<property name="sessionValidationScheduler"
ref="sessionValidationScheduler"/>*
    <property name="globalSessionTimeout" value="300000"/>
    <property name="sessionListeners">
      <list>
        <ref local="p2pSessionListener"/>
      </list>
    </property>
  </bean>

  <bean id="*sessionValidationScheduler*"

class="org.apache.shiro.session.mgt.ExecutorServiceSessionValidationScheduler">
    *<property name="sessionManager" ref="sessionManager"/>*
    <property name="interval" value="60000"/>
  </bean>

Anyone missing, doesn't execute sessionValidationScheduler.

2. (Too)Many SessionValidationScheduler Launched.(I assume a bug.)
I guess,  session validation scenario is...
(a) Server start
(b) Client access
(c) Enabling session validation scheduler...
(d) Session create

If two clients access concurrently in (b), SessionValidationScheduler
launched two instance.
Three clients, three SessionValidationScheduler launched. (according to
logs)


Thanks.

Reply via email to