Hi,

I'm using jackrabbit together with spring and the org.springmodules.jcr.support.OpenSessionInViewFilter. It works great and Spring takes care of all the starting and shutdown-cleanup, but whenever I shutdown my Tomcat the Repository hangs on this line:

shutdownLock.writeLock().acquire();    (RepositoryImpl:939)

It seemes to me, that the WriterPreferenceReadWriteLock is waiting for all LockWriters to finish, but he is waiting forever.
I don't know who should hold another Lock on it.

I just made an update from 1.3 to 1.4 but the shutdown did not get better.

Does anyone have a Idea?

Here my spring-config:


<!--  JCR -->
<bean id="jcrRepository" class="org.springmodules.jcr.jackrabbit.RepositoryFactoryBean">
   <!-- normal factory beans params -->
<property name="configuration" value="classpath:/org/x7/core/model/repository.xml"/>
   <property name="homeDir" value="file:."/>
 </bean>


<!-- org.springmodules.jcr.JcrSessionFactory -->

<bean id="jcrSessionFactory" class="org.springmodules.jcr.jackrabbit.JackrabbitSessionFactory">
   <property name="repository" ref="jcrRepository"/>
   <property name="credentials">
      <bean class="javax.jcr.SimpleCredentials">
         <constructor-arg index="0" value="bogus"/>
         <constructor-arg index="1">
            <bean factory-bean="password" factory-method="toCharArray"/>
         </constructor-arg>
      </bean>
    </property>
    <property name="eventListeners">
      <list>
        <bean class="org.springmodules.jcr.EventListenerDefinition">
          <property name="listener" ref="jcrDAO"/>
        </bean>
      </list>
   </property>
  </bean>
<!-- create the password to return it as a char[] -->
  <bean id="password" class="org.x7.core.util.CharArrayCreator">
    <constructor-arg index="0" value="pass"/>
  </bean>



  <bean id="jcrDAO" class="org.x7.core.jcr.JcrDAO" >
    <property name="sessionFactory" ref="jcrSessionFactory"/>
    <property name="template">
       <bean id="jcrTemplate" class="org.springmodules.jcr.JcrTemplate">
        <property name="sessionFactory" ref="jcrSessionFactory"/>
        <property name="allowCreate" value="true"/>
      </bean>
    </property>
    <property name="transactionMgr">
<bean class="org.springmodules.jcr.jackrabbit.LocalTransactionManager">
        <property name="sessionFactory" ref="jcrSessionFactory"/>
      </bean>
    </property>
  </bean>

Thanx

Regards,

Simon



        
                
___________________________________________________________ Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de

Reply via email to