cancel
Showing results for 
Search instead for 
Did you mean: 

Setting up ReplicatingContentStore for Windows

benswitzer
Champ in-the-making
Champ in-the-making
Good day.

Require some assistance in setting the ReplicatingContentStore on Windows.

The issue I'm experiencing is that I can't setup a a secondary store to use a Windows networked share.

On the Windows machines that are running Alfresco I wanted to use a Windows Share from another box to provide the shared content store.  Can't get it to work for the life of me.  I've tried the following:
- Mapped share as a drive (i.e.: G:\AlfrescoSharedData)
- Mapped share as a directory (i.e.: C:\Alfresco\AlfrescoSharedData)
- Attempted to use the network path directly (i.e.: \\server\share)

I was able to specify a local folder on the machine for the secondary store without issue, so I know its related to the CIFS share.

I'm running Alfresco 4.2a nightly build from last week.

Anyone able to provide some insight?

Thanks,
Ben
7 REPLIES 7

afaust
Legendary Innovator
Legendary Innovator
Hello,

Alfresco 4.2? I must have missed a version - last I heard 4.1 is current.

Are you able to provide some logging output or detail what kind of configuration did not work (e.g. with configuration examples)? At the moment, there is not enough information to go on…
I would expect that the last option (UNC path) would not work, since I doubt Java is able to resolve this Windows specific file path to a valid file URL. Have you made sure that the user account that is running the Alfresco server has the necessary privileges to write on the mapped shares?

Regards
Axel

benswitzer
Champ in-the-making
Champ in-the-making
Version 4.2 (I believe) is Odin, which is the next community version to be released.

First part of alfrescotomcat-stdout.log when using mapped drive (G:\AlfrescoSharedData):

2012-08-13 15:15:01 Commons Daemon procrun stdout initialized
2012-08-13 15:15:20,455  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Starting 'sysAdmin' subsystem, ID: [sysAdmin, default]
2012-08-13 15:15:20,533  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Startup of 'sysAdmin' subsystem, ID: [sysAdmin, default] complete
2012-08-13 15:15:23,045  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Stopping 'sysAdmin' subsystem, ID: [sysAdmin, default]
2012-08-13 15:15:23,045  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Stopped 'sysAdmin' subsystem, ID: [sysAdmin, default]
2012-08-13 15:15:23,061  ERROR [web.context.ContextLoader] [main] Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'messageService' defined in class path resource [alfresco/core-services-context.xml]: Cannot resolve reference to bean 'nodeService' while setting bean property 'nodeService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeService': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeRefPropertyInterceptor' defined in class path resource [alfresco/node-services-context.xml]: Cannot resolve reference to bean 'mlAwareNodeService' while setting bean property 'nodeService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mlAwareNodeService' defined in class path resource [alfresco/node-services-context.xml]: Cannot resolve reference to bean 'mtAwareNodeService' while setting bean property 'defaultBinding'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mtAwareNodeService': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dbNodeService' defined in class path resource [alfresco/node-services-context.xml]: Cannot resolve reference to bean 'nodeDAO' while setting bean property 'nodeDAO'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeDAO': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeDAO.org.hibernate.dialect.MySQLInnoDBDialect' defined in class path resource [alfresco/dao/dao-context.xml]: Cannot resolve reference to bean 'contentDataDAO' while setting bean property 'contentDataDAO'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'contentDataDAO' defined in class path resource [alfresco/dao/dao-context.xml]: Cannot resolve reference to bean 'eagerContentStoreCleaner' while setting bean property 'contentStoreCleaner'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'eagerContentStoreCleaner' defined in class path resource [alfresco/content-services-context.xml]: Cannot resolve reference to bean 'contentStoresToClean' while setting bean property 'stores'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'contentStoresToClean' defined in class path resource [alfresco/content-services-context.xml]: Cannot resolve reference to bean 'fileContentStore' while setting constructor argument with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'fileContentStore' defined in file [C:\Alfresco\Alfresco-42a-0810\tomcat\shared\classes\alfresco\extension\replicating-content-services-context.xml]: Cannot resolve reference to bean 'networkContentStore' while setting bean property 'secondaryStores' with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'networkContentStore' defined in file [C:\Alfresco\Alfresco-42a-0810\tomcat\shared\classes\alfresco\extension\replicating-content-services-context.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.alfresco.repo.content.filestore.FileContentStore]: Constructor threw exception; nested exception is org.alfresco.service.cmr.repository.ContentIOException: 07130000 Failed to create store root: g:\AlfrescoReplicatedData
   at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
   at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
   at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
   at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
   at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
   at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
   at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
   at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
   at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
   at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
   at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
   at org.alfresco.web.app.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:63)
   at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4206)
   at org.apache.catalina.core.StandardContext.start(StandardContext.java:4705)
   at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
   at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
   at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
   at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:675)
   at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:601)
   at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
   at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
   at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
   at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
   at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
   at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
   at org.apache.catalina.core.StandardService.start(StandardService.java:525)
   at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
   at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
   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:597)
   at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
   at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

First part of alfrescotomcat-stdout.log when using network path (\\10.10.0.31\AlfrescoSharedCS) directly:

2012-08-13 10:17:34 Commons Daemon procrun stdout initialized
2012-08-13 10:17:53,696  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Starting 'sysAdmin' subsystem, ID: [sysAdmin, default]
2012-08-13 10:17:53,806  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Startup of 'sysAdmin' subsystem, ID: [sysAdmin, default] complete
2012-08-13 10:17:56,567  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Stopping 'sysAdmin' subsystem, ID: [sysAdmin, default]
2012-08-13 10:17:56,583  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Stopped 'sysAdmin' subsystem, ID: [sysAdmin, default]
2012-08-13 10:17:56,598  ERROR [web.context.ContextLoader] [main] Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'messageService' defined in class path resource [alfresco/core-services-context.xml]: Cannot resolve reference to bean 'nodeService' while setting bean property 'nodeService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeService': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeRefPropertyInterceptor' defined in class path resource [alfresco/node-services-context.xml]: Cannot resolve reference to bean 'mlAwareNodeService' while setting bean property 'nodeService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mlAwareNodeService' defined in class path resource [alfresco/node-services-context.xml]: Cannot resolve reference to bean 'mtAwareNodeService' while setting bean property 'defaultBinding'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mtAwareNodeService': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dbNodeService' defined in class path resource [alfresco/node-services-context.xml]: Cannot resolve reference to bean 'nodeDAO' while setting bean property 'nodeDAO'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeDAO': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeDAO.org.hibernate.dialect.MySQLInnoDBDialect' defined in class path resource [alfresco/dao/dao-context.xml]: Cannot resolve reference to bean 'contentDataDAO' while setting bean property 'contentDataDAO'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'contentDataDAO' defined in class path resource [alfresco/dao/dao-context.xml]: Cannot resolve reference to bean 'eagerContentStoreCleaner' while setting bean property 'contentStoreCleaner'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'eagerContentStoreCleaner' defined in class path resource [alfresco/content-services-context.xml]: Cannot resolve reference to bean 'contentStoresToClean' while setting bean property 'stores'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'contentStoresToClean' defined in class path resource [alfresco/content-services-context.xml]: Cannot resolve reference to bean 'fileContentStore' while setting constructor argument with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'fileContentStore' defined in file [C:\Alfresco\Alfresco-42a-0810\tomcat\shared\classes\alfresco\extension\replicating-content-services-context.xml]: Cannot resolve reference to bean 'networkContentStore' while setting bean property 'secondaryStores' with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'networkContentStore' defined in file [C:\Alfresco\Alfresco-42a-0810\tomcat\shared\classes\alfresco\extension\replicating-content-services-context.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.alfresco.repo.content.filestore.FileContentStore]: Constructor threw exception; nested exception is org.alfresco.service.cmr.repository.ContentIOException: 07130000 Failed to create store root: \\10.10.0.31\AlfrescoSharedCS
   at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
   at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1325)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1086)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
   at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
   at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
   at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
   at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
   at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
   at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
   at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
   at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
   at org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:276)
   at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:197)
   at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:47)
   at org.alfresco.web.app.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:63)
   at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4206)
   at org.apache.catalina.core.StandardContext.start(StandardContext.java:4705)
   at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799)
   at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779)
   at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601)
   at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:675)
   at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:601)
   at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
   at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317)
   at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324)
   at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065)
   at org.apache.catalina.core.StandardHost.start(StandardHost.java:840)
   at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057)
   at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463)
   at org.apache.catalina.core.StandardService.start(StandardService.java:525)
   at org.apache.catalina.core.StandardServer.start(StandardServer.java:754)
   at org.apache.catalina.startup.Catalina.start(Catalina.java:595)
   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:597)
   at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
   at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)

Unlike the previous two examples, when I setup the secondary store to use the share, mapped as a directory (/Alfresco/AlfrescoReplicatedData), there is no exception thrown when Alfresco is started.  The exception occurs when Alfresco attempts to write to the store.  I'm using the following commend to setup the directory.  I'd already issued the appropriate net use command to setup authentication to the share.  Here is the exception:
2012-08-13 15:40:32,921  ERROR [ui.common.Utils] [http-8080-1] Failed to create content due to error: 07130017 Content replication failed: 
   Content: ContentAccessor[ contentUrl=store://2012/8/13/15/40/84d524d6-95f5-4967-b77e-fcf23a79f352.bin, mimetype=application/pdf, size=174561, encoding=UTF-8, locale=en_US]
   Store:   FileContentStore[ root=C:\Alfresco\AlfrescoReplicatedData, allowRandomAccess=true, readOnly=false]
   Number:  0
org.alfresco.service.cmr.repository.ContentIOException: 07130017 Content replication failed:
   Content: ContentAccessor[ contentUrl=store://2012/8/13/15/40/84d524d6-95f5-4967-b77e-fcf23a79f352.bin, mimetype=application/pdf, size=174561, encoding=UTF-8, locale=en_US]
   Store:   FileContentStore[ root=C:\Alfresco\AlfrescoReplicatedData, allowRandomAccess=true, readOnly=false]
   Number:  0
   at org.alfresco.repo.content.replication.ReplicatingContentStore$ReplicatingWriteListener$ReplicateOnCloseRunnable.run(ReplicatingContentStore.java:501)
   at org.alfresco.repo.content.replication.ReplicatingContentStore$ReplicatingWriteListener.contentStreamClosedImpl(ReplicatingContentStore.java:429)
   at org.alfresco.repo.content.AbstractContentStreamListener$1.execute(AbstractContentStreamListener.java:50)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:388)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:278)
   at org.alfresco.repo.content.AbstractContentStreamListener.contentStreamClosed(AbstractContentStreamListener.java:57)
   at org.alfresco.repo.content.AbstractContentAccessor$CallbackFileChannel.fireChannelClosed(AbstractContentAccessor.java:331)
   at org.alfresco.repo.content.AbstractContentAccessor$CallbackFileChannel.implCloseChannel(AbstractContentAccessor.java:315)
   at java.nio.channels.spi.AbstractInterruptibleChannel.close(AbstractInterruptibleChannel.java:97)
   at java.nio.channels.Channels$1.close(Channels.java:159)
   at java.io.FilterOutputStream.close(FilterOutputStream.java:143)
   at org.alfresco.repo.content.LimitedStreamCopier.copyStreams(LimitedStreamCopier.java:94)
   at org.alfresco.repo.content.AbstractContentWriter.copyStreams(AbstractContentWriter.java:499)
   at org.alfresco.repo.content.AbstractContentWriter.putContent(AbstractContentWriter.java:476)
   at org.alfresco.web.bean.content.BaseContentWizard.saveContent(BaseContentWizard.java:509)
   at org.alfresco.web.bean.content.AddContentDialog.finishImpl(AddContentDialog.java:100)
   at org.alfresco.web.bean.dialog.BaseDialogBean$1.execute(BaseDialogBean.java:123)
   at org.alfresco.web.bean.dialog.BaseDialogBean$1.execute(BaseDialogBean.java:119)
   at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:388)
   at org.alfresco.web.bean.dialog.BaseDialogBean.finish(BaseDialogBean.java:129)
   at org.alfresco.web.bean.dialog.DialogManager.finish(DialogManager.java:528)
   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:597)
   at org.apache.myfaces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:132)
   at org.apache.myfaces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:61)
   at javax.faces.component.UICommand.broadcast(UICommand.java:151)
   at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:115)
   at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:191)
   at org.apache.myfaces.lifecycle.InvokeApplicationExecutor.execute(InvokeApplicationExecutor.java:32)
   at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:105)
   at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:80)
   at javax.faces.webapp.FacesServlet.service(FacesServlet.java:143)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.alfresco.repo.web.filter.beans.SessionSynchronizedFilter.doFilter(SessionSynchronizedFilter.java:67)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.alfresco.web.app.servlet.AuthenticationFilter.doFilter(AuthenticationFilter.java:104)
   at sun.reflect.GeneratedMethodAccessor469.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at org.alfresco.repo.management.subsystems.ChainingSubsystemProxyFactory$1.invoke(ChainingSubsystemProxyFactory.java:116)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
   at $Proxy239.doFilter(Unknown Source)
   at org.alfresco.repo.web.filter.beans.BeanProxyFilter.doFilter(BeanProxyFilter.java:82)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.alfresco.repo.web.filter.beans.NullFilter.doFilter(NullFilter.java:68)
   at sun.reflect.GeneratedMethodAccessor469.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:597)
   at org.alfresco.repo.management.subsystems.ChainingSubsystemProxyFactory$1.invoke(ChainingSubsystemProxyFactory.java:116)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
   at $Proxy239.doFilter(Unknown Source)
   at org.alfresco.repo.web.filter.beans.BeanProxyFilter.doFilter(BeanProxyFilter.java:82)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.alfresco.web.app.servlet.GlobalLocalizationFilter.doFilter(GlobalLocalizationFilter.java:61)
   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:470)
   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
   at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:877)
   at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:594)
   at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1675)
   at java.lang.Thread.run(Thread.java:662)
Caused by: org.alfresco.service.cmr.repository.ContentIOException: 07130016 Failed to create directory for file storage: C:\Alfresco\AlfrescoReplicatedData\2012\8\13\15\40
   at org.alfresco.repo.content.filestore.FileContentStore.makeDirectory(FileContentStore.java:281)
   at org.alfresco.repo.content.filestore.FileContentStore.createNewFile(FileContentStore.java:227)
   at org.alfresco.repo.content.filestore.FileContentStore.getWriterInternal(FileContentStore.java:469)
   at org.alfresco.repo.content.AbstractContentStore.getWriter(AbstractContentStore.java:239)
   at org.alfresco.repo.content.replication.ReplicatingContentStore$ReplicatingWriteListener$ReplicateOnCloseRunnable.run(ReplicatingContentStore.java:469)
   … 74 more

What I haven't done is attempt this setup on a stable version of Alfresco, say 4.0d.  I will attempt to do so as my schedule permits, but I suspect the outcome will be the same.

There was this thread in another forum post, but with no solution: https://forums.alfresco.com/en/viewtopic.php?f=9&t=37345

Ben

benswitzer
Champ in-the-making
Champ in-the-making
Still looking for a solution to my issue here.

Thinking its possible.  This JIRA ticket has given me hope: https://issues.alfresco.com/jira/browse/ALF-548

heiko_robert
Star Collaborator
Star Collaborator
Hi Ben,
we never testet this on windows boxes but I think it's simply an issue with the backslash (\) try G:/AlfrescoSharedData or //10.10.0.31/AlfrescoSharedCS instead

Regards
Heiko

benswitzer
Champ in-the-making
Champ in-the-making
Thanks for the response Heiko.

I've tried //10.10.0.31/AlfrescoSharedCS and \\\\\\10.10.0.31\\\AlfrescoSharedCS.  It would appear that both are being interpreted the same way as this message from the log would indicate:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'messageService' defined in class path resource [alfresco/core-services-context.xml]: Cannot resolve reference to bean 'nodeService' while setting bean property 'nodeService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeService': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeRefPropertyInterceptor' defined in class path resource [alfresco/node-services-context.xml]: Cannot resolve reference to bean 'mlAwareNodeService' while setting bean property 'nodeService'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mlAwareNodeService' defined in class path resource [alfresco/node-services-context.xml]: Cannot resolve reference to bean 'mtAwareNodeService' while setting bean property 'defaultBinding'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mtAwareNodeService': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dbNodeService' defined in class path resource [alfresco/node-services-context.xml]: Cannot resolve reference to bean 'nodeDAO' while setting bean property 'nodeDAO'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeDAO': FactoryBean threw exception on object creation; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'nodeDAO.org.hibernate.dialect.MySQLInnoDBDialect' defined in class path resource [alfresco/dao/dao-context.xml]: Cannot resolve reference to bean 'contentDataDAO' while setting bean property 'contentDataDAO'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'contentDataDAO' defined in class path resource [alfresco/dao/dao-context.xml]: Cannot resolve reference to bean 'eagerContentStoreCleaner' while setting bean property 'contentStoreCleaner'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'eagerContentStoreCleaner' defined in class path resource [alfresco/content-services-context.xml]: Cannot resolve reference to bean 'contentStoresToClean' while setting bean property 'stores'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'contentStoresToClean' defined in class path resource [alfresco/content-services-context.xml]: Cannot resolve reference to bean 'fileContentStore' while setting constructor argument with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'fileContentStore' defined in file [C:\Alfresco\Alfresco-42a-0810\tomcat\shared\classes\alfresco\extension\replicating-content-services-context.xml]: Cannot resolve reference to bean 'networkContentStore' while setting bean property 'secondaryStores' with key [0]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'networkContentStore' defined in file [C:\Alfresco\Alfresco-42a-0810\tomcat\shared\classes\alfresco\extension\replicating-content-services-context.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.alfresco.repo.content.filestore.FileContentStore]: Constructor threw exception; nested exception is org.alfresco.service.cmr.repository.ContentIOException: 07160000 Failed to create store root: \\10.10.0.31\AlfrescoSharedCS

Alfresco is setup to run as a service and I've specified a username and password to run that service that is also able to connect to the Window Share.

heiko_robert
Star Collaborator
Star Collaborator
I think you need java compliant UNC-paths. Please try file://10.10.0.31/AlfrescoSharedCS or file:///G:/AlfrescoSharedCS

benswitzer
Champ in-the-making
Champ in-the-making
Got it!

Was a permission issue with the user account I was using for the service.  Once I sorted that out, the following worked:

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE beans PUBLIC '-//SPRING//DTD BEAN//EN' 'http://www.springframework.org/dtd/spring-beans.dtd'>

<beans>
   <bean id="localDriveContentStore" class="org.alfresco.repo.content.filestore.FileContentStore">
      <constructor-arg>
         <value>${dir.contentstore}</value>
      </constructor-arg>
   </bean>
   <bean id="networkContentStore" class="org.alfresco.repo.content.filestore.FileContentStore">
      <constructor-arg>
         <value>\\\\\\10.10.0.31\\\AlfrescoSharedCS</value>
      </constructor-arg>
   </bean>
   <bean id="fileContentStore" class="org.alfresco.repo.content.replication.ReplicatingContentStore" >
      <property name="primaryStore">
         <ref bean="localDriveContentStore" />
      </property>
      <property name="secondaryStores">
         <list>
            <ref bean="networkContentStore" />
         </list>
      </property>
      <property name="inbound">
         <value>true</value>
      </property>
      <property name="outbound">
         <value>true</value>
      </property>
      <property name="retryingTransactionHelper">
         <ref bean="retryingTransactionHelper"/>
      </property>
   </bean>
</beans>

Thank you Axel and Heiko for responding.

Ben