cancel
Showing results for 
Search instead for 
Did you mean: 

WebDAV not showing a space - but it's subspaces

manfred99
Champ in-the-making
Champ in-the-making
Hi @all!

Configuration: Alfresco2.0, Tomcat5, Linux (WebDAV access via KDE's Konqueror)

Problem: Trying to access Alfresco via WebDAV (webdav://localhost:8080/alfresco/webdav) shows interesting results:

1.After logon I can see the company root space and it's content.
2.Going down into my own space shows no entries at all - but they are there, as the webclient shows them correctly.
3. Adding the name of a subspace direktly to the url, this space is shown in WebDAV correctly. But when going back to the parent folder, again nothing is shown.

alfresco.log shows an InvalidNodeRefException (see log-output).

How can I overcome this problem?
Thank you for any help!


14:55:51,691 ERROR [org.alfresco.webdav.protocol] Internal Server Error:
org.alfresco.service.cmr.repository.InvalidNodeRefException: Node does not exist: workspace://SpacesStore/72df26c6-c33d-11db-b4b1-7bfa2a8984d5
   at org.alfresco.repo.node.db.DbNodeServiceImpl.getNodeNotNull(DbNodeServiceImpl.java:129)
   at org.alfresco.repo.node.db.DbNodeServiceImpl.getProperties(DbNodeServiceImpl.java:844)
   at sun.reflect.GeneratedMethodAccessor176.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.alfresco.repo.service.StoreRedirectorProxyFactory$RedirectorInvocationHandler.invoke(StoreRedirectorProxyFactory.java:221)
   at $Proxy2.getProperties(Unknown Source)
   at sun.reflect.GeneratedMethodAccessor176.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)
   at org.alfresco.repo.node.MLPropertyInterceptor.invoke(MLPropertyInterceptor.java:160)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
   at $Proxy3.getProperties(Unknown Source)
   at org.alfresco.repo.model.filefolder.FileFolderServiceImpl.toFileInfo(FileFolderServiceImpl.java:213)
   at org.alfresco.repo.model.filefolder.FileFolderServiceImpl.toFileInfo(FileFolderServiceImpl.java:201)
   at org.alfresco.repo.model.filefolder.FileFolderServiceImpl.list(FileFolderServiceImpl.java:278)
   at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
   at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)
   at org.alfresco.repo.model.filefolder.TempFileMarkerInterceptor.invoke(TempFileMarkerInterceptor.java:83)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:116)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:80)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:49)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.alfresco.repo.audit.AuditComponentImpl.auditImpl(AuditComponentImpl.java:219)
   at org.alfresco.repo.audit.AuditComponentImpl.audit(AuditComponentImpl.java:165)
   at org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:69)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
   at $Proxy29.list(Unknown Source)
   at org.alfresco.repo.webdav.PropFindMethod.executeImpl(PropFindMethod.java:282)
   at org.alfresco.repo.webdav.WebDAVMethod$1.doWork(WebDAVMethod.java:133)
   at org.alfresco.repo.webdav.WebDAVMethod$1.doWork(WebDAVMethod.java:131)
   at org.alfresco.repo.transaction.TransactionUtil.executeInTransaction(TransactionUtil.java:176)
   at org.alfresco.repo.transaction.TransactionUtil.executeInUserTransaction(TransactionUtil.java:82)
   at org.alfresco.repo.webdav.WebDAVMethod.execute(WebDAVMethod.java:141)
   at org.alfresco.repo.webdav.WebDAVServlet$1.doWork(WebDAVServlet.java:135)
   at org.alfresco.repo.transaction.TransactionUtil.executeInTransaction(TransactionUtil.java:176)
   at org.alfresco.repo.transaction.TransactionUtil.executeInUserTransaction(TransactionUtil.java:82)
   at org.alfresco.repo.webdav.WebDAVServlet.service(WebDAVServlet.java:139)
   at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
   at org.alfresco.repo.webdav.auth.AuthenticationFilter.doFilter(AuthenticationFilter.java:290)
   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:214)
   at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
   at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
   at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:198)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:152)
   at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
   at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137)
   at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:118)
   at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:102)
   at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
   at org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:104)
   at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:520)
   at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:929)
   at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:162)
   at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)
   at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:705)
   at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)
   at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
   at java.lang.Thread.run(Thread.java:595)

6 REPLIES 6

kevinr
Star Contributor
Star Contributor
Looks like the indexes are out-of-date with the contents of your repo, you could try rebuilding the indexes - this should fix the problem. The WebDav code is not very tolerant of missing noderefs - it should be though, it is a bug that will be fixed for 2.1:
http://issues.alfresco.com/browse/AR-1413

Thanks,

Kevin

manfred99
Champ in-the-making
Champ in-the-making
Looks like the indexes are out-of-date with the contents of your repo, you could try rebuilding the indexes - this should fix the problem.

O.k. -that was my feeling. How can I rebuild the indexes? Best I think, would be to rebuild them all - I could do it overnight…

Thanks,
Manfred

kevinr
Star Contributor
Star Contributor
Stop the server.

Delete the contents of {your alf_data dir}\lucene-indexes

Edit the file found in \tomcat\shared\classes\alfresco\extension\custom-db-connection.properties with this value:

# The index recovery mode (NONE, VALIDATE, AUTO, FULL)
index.recovery.mode=FULL

And restart the server to rebuild the indexes from scratch.

Thanks,

Kevin

manfred99
Champ in-the-making
Champ in-the-making
Thank you - did as you posted. Some documents can be found by content, others - which could before(!) - cannot.

What can I do that my files are found again by a search?
Thank you for your help!

Alfresco.log shows:
16:27:57,250 INFO  [node.index.FullIndexRecoveryComponent] Index recovery started: 14,387 transactions.
java.lang.reflect.InvocationTargetException
   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
   at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
   at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
   at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
   at org.apache.poi.hssf.record.RecordFactory.createRecord(RecordFactory.java:224)
   at org.apache.poi.hssf.record.RecordFactory.createRecords(RecordFactory.java:160)
   at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:163)
   at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:210)
   at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:191)
   at org.alfresco.repo.content.transform.PoiHssfContentTransformer.transformInternal(PoiHssfContentTransformer.java:87)
   at org.alfresco.repo.content.transform.AbstractContentTransformer.transform(AbstractContentTransformer.java:245)
   at org.alfresco.repo.content.transform.AbstractContentTransformer.transform(AbstractContentTransformer.java:210)
   at org.alfresco.repo.search.impl.lucene.LuceneIndexerImpl2.indexProperty(LuceneIndexerImpl2.java:1639)
   at org.alfresco.repo.search.impl.lucene.LuceneIndexerImpl2.createDocuments(LuceneIndexerImpl2.java:1277)
   at org.alfresco.repo.search.impl.lucene.LuceneIndexerImpl2.indexImpl(LuceneIndexerImpl2.java:1170)
   at org.alfresco.repo.search.impl.lucene.LuceneIndexerImpl2.indexImpl(LuceneIndexerImpl2.java:1158)
   at org.alfresco.repo.search.impl.lucene.LuceneIndexerImpl2.flushPending(LuceneIndexerImpl2.java:961)
   at org.alfresco.repo.search.impl.lucene.LuceneIndexerImpl2.prepare(LuceneIndexerImpl2.java:732)
   at org.alfresco.repo.search.impl.lucene.LuceneIndexerAndSearcherFactory2.prepare(LuceneIndexerAndSearcherFactory2.java:706)
   at org.alfresco.repo.transaction.AlfrescoTransactionSupport$TransactionSynchronizationImpl.beforeCommit(AlfrescoTransactionSupport.java:599)
   at org.springframework.transaction.support.AbstractPlatformTransactionManager.triggerBeforeCommit(AbstractPlatformTransactionManager.java:657)
   at org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:482)
   at org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:469)
   at org.springframework.transaction.interceptor.TransactionAspectSupport.doCommitTransactionAfterReturning(TransactionAspectSupport.java:266)
   at org.alfresco.util.transaction.SpringAwareUserTransaction.commit(SpringAwareUserTransaction.java:405)
   at org.alfresco.repo.transaction.TransactionUtil.executeInTransaction(TransactionUtil.java:186)
   at org.alfresco.repo.transaction.TransactionUtil.executeInNonPropagatingUserTransaction(TransactionUtil.java:134)
   at org.alfresco.repo.node.index.FullIndexRecoveryComponent.reindexTransaction(FullIndexRecoveryComponent.java:283)
   at org.alfresco.repo.node.index.FullIndexRecoveryComponent.performFullRecovery(FullIndexRecoveryComponent.java:206)
   at org.alfresco.repo.node.index.FullIndexRecoveryComponent.reindexImpl(FullIndexRecoveryComponent.java:165)
   at org.alfresco.repo.node.index.AbstractReindexComponent$1.doWork(AbstractReindexComponent.java:217)
   at org.alfresco.repo.transaction.TransactionUtil.executeInTransaction(TransactionUtil.java:176)
   at org.alfresco.repo.transaction.TransactionUtil.executeInUserTransaction(TransactionUtil.java:82)
   at org.alfresco.repo.node.index.AbstractReindexComponent.reindex(AbstractReindexComponent.java:221)
   at org.alfresco.repo.node.index.IndexRecoveryJob.execute(IndexRecoveryJob.java:31)
   at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
   at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
Caused by: java.lang.ArrayIndexOutOfBoundsException
   at java.lang.System.arraycopy(Native Method)
   at org.apache.poi.hssf.record.UnknownRecord.<init>(UnknownRecord.java:62)
   at org.apache.poi.hssf.record.SubRecord.createSubRecord(SubRecord.java:57)
   at org.apache.poi.hssf.record.ObjRecord.fillFields(ObjRecord.java:99)
   at org.apache.poi.hssf.record.Record.fillFields(Record.java:90)
   at org.apache.poi.hssf.record.Record.<init>(Record.java:55)
   at org.apache.poi.hssf.record.ObjRecord.<init>(ObjRecord.java:61)
   … 37 more
16:29:04,069 INFO  [node.index.FullIndexRecoveryComponent]    10 % complete.
16:32:50,466 INFO  [node.index.FullIndexRecoveryComponent]    20 % complete.
16:33:55,919 INFO  [node.index.FullIndexRecoveryComponent]    30 % complete.
16:38:18,564 INFO  [node.index.FullIndexRecoveryComponent]    40 % complete.
16:41:06,240 INFO  [node.index.FullIndexRecoveryComponent]    50 % complete.
16:43:39,180 INFO  [node.index.FullIndexRecoveryComponent]    60 % complete.
16:48:00,755 INFO  [node.index.FullIndexRecoveryComponent]    70 % complete.
16:49:52,826 INFO  [node.index.FullIndexRecoveryComponent]    80 % complete.
16:51:32,686 INFO  [node.index.FullIndexRecoveryComponent]    90 % complete.
16:52:58,159 INFO  [node.index.FullIndexRecoveryComponent]    100 % complete.
16:52:58,221 INFO  [node.index.FullIndexRecoveryComponent] Index recovery completed.
java.lang.reflect.InvocationTargetException
   at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
   at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
   at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
   at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
   at org.apache.poi.hssf.record.RecordFactory.createRecord(RecordFactory.java:224)
   at org.apache.poi.hssf.record.RecordFactory.createRecords(RecordFactory.java:160)
   at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:163)
   at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:210)
   at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:191)
   at org.alfresco.repo.content.transform.PoiHssfContentTransformer.transformInternal(PoiHssfContentTransformer.java:87)
   at org.alfresco.repo.content.transform.AbstractContentTransformer.transform(AbstractContentTransformer.java:245)
   at org.alfresco.repo.content.transform.AbstractContentTransformer.transform(AbstractContentTransformer.java:210)
   at org.alfresco.repo.search.impl.lucene.LuceneIndexerImpl2.indexProperty(LuceneIndexerImpl2.java:1639)
   at org.alfresco.repo.search.impl.lucene.LuceneIndexerImpl2.createDocuments(LuceneIndexerImpl2.java:1273)
   at org.alfresco.repo.search.impl.lucene.LuceneIndexerImpl2.updateFullTextSearch(LuceneIndexerImpl2.java:2014)
   at org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl.index(FullTextSearchIndexerImpl.java:177)
   at sun.reflect.GeneratedMethodAccessor206.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:335)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:181)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:148)
   at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:170)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:176)
   at $Proxy5.index(Unknown Source)
   at org.alfresco.repo.search.impl.lucene.fts.FTSIndexerJob.execute(FTSIndexerJob.java:44)
   at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
   at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
Caused by: java.lang.ArrayIndexOutOfBoundsException
   at java.lang.System.arraycopy(Native Method)
   at org.apache.poi.hssf.record.UnknownRecord.<init>(UnknownRecord.java:62)
   at org.apache.poi.hssf.record.SubRecord.createSubRecord(SubRecord.java:57)
   at org.apache.poi.hssf.record.ObjRecord.fillFields(ObjRecord.java:99)
   at org.apache.poi.hssf.record.Record.fillFields(Record.java:90)
   at org.apache.poi.hssf.record.Record.<init>(Record.java:55)
   at org.apache.poi.hssf.record.ObjRecord.<init>(ObjRecord.java:61)
   … 29 more

kevinr
Star Contributor
Star Contributor
The errors are from the Apache POI library - which is used to index some office formats, such as Word, Excel. The errors won't stop the complete reindexing from working, but it will mean those specific docs that failed are not indexed. The only way they could have been indexed previously if is you had OpenOffice running in the background? As that can also be used (but slower) to index office documents.

Thanks,

Kevin

manfred99
Champ in-the-making
Champ in-the-making
OpenOffice (currently 2.2 - some old docs surely have been indexed with 2.04) is always running in the background to allow indexing! So the rebuild should have found it to index those documents…
BTW - a lot of PDF-files cannot be found also!

How could I have all those previously indexed files be reindexed now? I need the fulltext-indexing!!!