Hi, I've deployed Jackrabbit 2.1.1 on JBoss with JCA and Webdav like described by http://wiki.apache.org/jackrabbit/JackrabbitOnJBoss
The Repository configuration: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD Jackrabbit 1.5//EN" "http://jackrabbit.apache.org/dtd/repository-1.5.dtd"> <Repository> <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem"> <param name="driver" value="javax.naming.InitialContext"/> <param name="url" value="java:ni2Jackrabbit"/> <param name="schema" value="postgresql"/> <param name="schemaObjectPrefix" value="REP_FS_"/> <param name="schemaCheckEnabled" value="false"/> </FileSystem> <Security appName="Jackrabbit"> <!--SecurityManager class="org.apache.jackrabbit.core.security.simple.SimpleSecurityManager" workspaceName="security"> </SecurityManager> <AccessManager class="org.apache.jackrabbit.core.security.simple.SimpleAccessManager"/ --> </Security> <Workspaces rootPath="${rep.home}/workspaces" defaultWorkspace="default" /> <Workspace name="root"> <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem"> <param name="driver" value="javax.naming.InitialContext"/> <param name="url" value="java:ni2Jackrabbit"/> <param name="schema" value="postgresql"/> <param name="schemaObjectPrefix" value="ROOT_FS_"/> <param name="schemaCheckEnabled" value="false"/> </FileSystem> <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager"> <param name="driver" value="javax.naming.InitialContext"/> <param name="url" value="java:ni2Jackrabbit"/> <param name="schemaObjectPrefix" value="ROOT_PM_"/> <param name="schemaCheckEnabled" value="false"/> </PersistenceManager> </Workspace> <Versioning rootPath="${rep.home}/versions"> <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem"> <param name="driver" value="javax.naming.InitialContext"/> <param name="url" value="java:ni2Jackrabbit"/> <param name="schema" value="postgresql"/> <param name="schemaObjectPrefix" value="VER_FS_"/> <param name="schemaCheckEnabled" value="false"/> </FileSystem> <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager"> <param name="driver" value="javax.naming.InitialContext"/> <param name="url" value="java:ni2Jackrabbit"/> <param name="schemaObjectPrefix" value="VER_PM_"/> <param name="schemaCheckEnabled" value="false"/> </PersistenceManager> </Versioning> </Repository> Everything is working fine: access the repository, copy files, delete files, etc Except if I make a mistake in the repository name like http://localhost:8080/jackrabbit-server/repository/defaulllllt/ I receive this exception and than my repository is locked until I reboot JBoss (The repository home appears to be in use since the file named .lock is locked by another process.) java.lang.NullPointerException: dispatcher at org.apache.jackrabbit.core.observation.ObservationManagerImpl.<init>(ObservationManagerImpl.java:97) at org.apache.jackrabbit.core.WorkspaceImpl.getObservationManager(WorkspaceImpl.java:748) at org.apache.jackrabbit.core.SessionImpl.removeRegisteredEventListeners(SessionImpl.java:1193) at org.apache.jackrabbit.core.SessionImpl.logout(SessionImpl.java:1222) at org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.doDispose(RepositoryImpl.java:2194) at org.apache.jackrabbit.core.RepositoryImpl$WorkspaceInfo.dispose(RepositoryImpl.java:2149) at org.apache.jackrabbit.core.RepositoryImpl.doShutdown(RepositoryImpl.java:1175) at org.apache.jackrabbit.core.RepositoryImpl.shutdown(RepositoryImpl.java:1127) at org.apache.jackrabbit.core.TransientRepository.stopRepository(TransientRepository.java:289) at org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:391) at org.apache.jackrabbit.jca.JCAManagedConnectionFactory.openSession(JCAManagedConnectionFactory.java:153) at org.apache.jackrabbit.jca.JCAManagedConnectionFactory.createManagedConnection(JCAManagedConnectionFactory.java:189) at org.apache.jackrabbit.jca.JCAManagedConnectionFactory.createManagedConnection(JCAManagedConnectionFactory.java:181) at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.createConnectionEventListener(InternalManagedConnectionPool.ja va:565) at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:250) at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:491) at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:341) at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:301) at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:396) at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java :842) at org.apache.jackrabbit.jca.JCARepositoryHandle.login(JCARepositoryHandle.java:72) at org.apache.jackrabbit.server.SessionProviderImpl.getSession(SessionProviderImpl.java:55) at org.apache.jackrabbit.webdav.simple.DavSessionProviderImpl.attachSession(DavSessionProviderImpl.java:85) at org.apache.jackrabbit.webdav.server.AbstractWebdavServlet.service(AbstractWebdavServlet.java:188) at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175) at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.jboss.web.tomcat.tc5.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527) at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112) at java.lang.Thread.run(Thread.java:595) Thank you for your help Eric
