Alfresco / alfresco-docker-installer

Generator to build Docker Compose templates to deploy Alfresco Community
Other
142 stars 57 forks source link

Error creating bean with name 'SOLRAuthenticationFilter' #109

Closed wolmos-mrbau closed 2 years ago

wolmos-mrbau commented 2 years ago

We use an Alfresco server based on this docker installer for ~6 months for internal testing. After updating the alfresco-docker-installer and rebuilding the container, Alfresco does no longer start up correctly.

According to the log, there is an error with the bean creation of the 'SOLRAuthenticationFilter' and due to the error, the NTLM authentication system is stopped.

INFO  [management.subsystems.ChildApplicationContextFactory] [main] Startup of 'Authentication' subsystem, ID: [Authentication, managed, alfrescoNtlm1] complete
WARN  [context.support.XmlWebApplicationContext] [main] Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'SOLRAuthenticationFilter' defined in URL [jar:file:/usr/local/tomcat/webapps/alfresco/WEB-INF/lib/alfresco-remote-api-11.140.jar!/alfresco/web-client-application-context.xml]: Error setting property values; nested exception is org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'secureComms' threw exception; nested exception is org.alfresco.error.AlfrescoRuntimeException: 01090000
INFO  [management.subsystems.ChildApplicationContextFactory] [main] Stopping 'Authentication' subsystem, ID: [Authentication, managed, alfrescoNtlm1]
INFO  [management.subsystems.ChildApplicationContextFactory] [main] Stopped 'Authentication' subsystem, ID: [Authentication, managed, alfrescoNtlm1]
ERROR [web.context.ContextLoader] [main] Context initialization failed

The problem also happens with a fresh generated install where all volumes are commented in (no volumes used). Any help would be very much appreciated.

The parameters used for the generator are:

yo alfresco-docker-installer --acsVersion="7.1" --password="admin" --crossLocale=true --mariadb=false --smtp=false --ldap=false --startscript=true --https=true --serverName="dms.company.com" --ftp=false --addons="" --port="443" --ram="32" --windows=false

Here is the complete error log:

...
alfresco_1            | 2022-02-09 08:40:37,706  INFO  [alfresco.repo.admin] [main] Connected to database PostgreSQL version 13.1 (Debian 13.1-1.pgdg100+1)
transform-core-aio_1  | 2022-02-09 08:40:40.605  INFO 1 --- [nio-8090-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
transform-core-aio_1  | 2022-02-09 08:40:40.605  INFO 1 --- [nio-8090-exec-2] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
transform-core-aio_1  | 2022-02-09 08:40:40.619  INFO 1 --- [nio-8090-exec-2] o.s.web.servlet.DispatcherServlet        : Completed initialization in 14 ms
transform-core-aio_1  | 2022-02-09 08:40:40.669  INFO 1 --- [nio-8090-exec-2] org.alfresco.transformer.AIOController   : GET Transform Config.
transform-core-aio_1  | 2022-02-09 08:40:40.669  INFO 1 --- [nio-8090-exec-1] org.alfresco.transformer.AIOController   : GET Transform Config.
alfresco_1            | 2022-02-09 08:40:42,742  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Starting 'Authentication' subsystem, ID: [Authentication, managed, alfrescoNtlm1]
alfresco_1            | 2022-02-09 08:40:42,824  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Startup of 'Authentication' subsystem, ID: [Authentication, managed, alfrescoNtlm1] complete
alfresco_1            | 2022-02-09 08:40:45,037  WARN  [context.support.XmlWebApplicationContext] [main] Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'SOLRAuthenticationFilter' defined in URL [jar:file:/usr/local/tomcat/webapps/alfresco/WEB-INF/lib/alfresco-remote-api-11.140.jar!/alfresco/web-client-application-context.xml]: Error setting property values; nested exception is org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'secureComms' threw exception; nested exception is org.alfresco.error.AlfrescoRuntimeException: 01090000
alfresco_1            | 2022-02-09 08:40:45,342  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Stopping 'Authentication' subsystem, ID: [Authentication, managed, alfrescoNtlm1]
alfresco_1            | 2022-02-09 08:40:45,344  INFO  [management.subsystems.ChildApplicationContextFactory] [main] Stopped 'Authentication' subsystem, ID: [Authentication, managed, alfrescoNtlm1]
alfresco_1            | 2022-02-09 08:40:45,356  ERROR [web.context.ContextLoader] [main] Context initialization failed
alfresco_1            | org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'SOLRAuthenticationFilter' defined in URL [jar:file:/usr/local/tomcat/webapps/alfresco/WEB-INF/lib/alfresco-remote-api-11.140.jar!/alfresco/web-client-application-context.xml]: Error setting property values; nested exception is org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:
alfresco_1            | PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'secureComms' threw exception; nested exception is org.alfresco.error.AlfrescoRuntimeException: 01090000
alfresco_1            |         at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1726)
alfresco_1            |         at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1434)
alfresco_1            |         at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:601)
alfresco_1            |         at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
alfresco_1            |         at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
alfresco_1            |         at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
alfresco_1            |         at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
alfresco_1            |         at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
alfresco_1            |         at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:944)
alfresco_1            |         at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
alfresco_1            |         at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
alfresco_1            |         at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:401)
alfresco_1            |         at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:292)
alfresco_1            |         at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:103)
alfresco_1            |         at org.alfresco.web.app.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:70)
alfresco_1            |         at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4768)
alfresco_1            |         at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5230)
alfresco_1            |         at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1            |         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726)
alfresco_1            |         at org.apache.catalina.core.ContainerBase.access$000(ContainerBase.java:129)
alfresco_1            |         at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:149)
alfresco_1            |         at org.apache.catalina.core.ContainerBase$PrivilegedAddChild.run(ContainerBase.java:139)
alfresco_1            |         at java.base/java.security.AccessController.doPrivileged(Native Method)
alfresco_1            |         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:696)
alfresco_1            |         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:696)
alfresco_1            |         at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1185)
alfresco_1            |         at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1933)
alfresco_1            |         at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
alfresco_1            |         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
alfresco_1            |         at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
alfresco_1            |         at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:118)
alfresco_1            |         at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:1095)
alfresco_1            |         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:477)
alfresco_1            |         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1618)
alfresco_1            |         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:319)
alfresco_1            |         at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
alfresco_1            |         at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
alfresco_1            |         at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
alfresco_1            |         at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:946)
alfresco_1            |         at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:835)
alfresco_1            |         at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1            |         at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396)
alfresco_1            |         at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386)
alfresco_1            |         at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
alfresco_1            |         at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
alfresco_1            |         at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
alfresco_1            |         at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919)
alfresco_1            |         at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:263)
alfresco_1            |         at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1            |         at org.apache.catalina.core.StandardService.startInternal(StandardService.java:432)
alfresco_1            |         at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1            |         at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:927)
alfresco_1            |         at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
alfresco_1            |         at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
alfresco_1            |         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
alfresco_1            |         at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
alfresco_1            |         at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
alfresco_1            |         at java.base/java.lang.reflect.Method.invoke(Method.java:566)
alfresco_1            |         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345)
alfresco_1            |         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476)
alfresco_1            | Caused by: org.springframework.beans.PropertyBatchUpdateException; nested PropertyAccessExceptions (1) are:
alfresco_1            | PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'secureComms' threw exception; nested exception is org.alfresco.error.AlfrescoRuntimeException: 01090000
alfresco_1            |         at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:135)
alfresco_1            |         at org.springframework.beans.AbstractPropertyAccessor.setPropertyValues(AbstractPropertyAccessor.java:79)
alfresco_1            |         at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1722)
alfresco_1            |         ... 59 more
aborroy commented 2 years ago

You should add solrHttpMode argument.

$ yo alfresco-docker-installer --acsVersion="7.1" --password="admin" --crossLocale=true --mariadb=false \
--smtp=false --ldap=false --startscript=true --https=true --serverName="dms.company.com" \
--ftp=false --addons="" --port="443" --ram="32" --windows=false --solrHttpMode=http

I've added this information to project README.md https://github.com/Alfresco/alfresco-docker-installer/commit/abfbc29e82f4cb524bf0b7e7488fa19df0fdff2d

wolmos-mrbau commented 2 years ago

Thanks @aborroy, the solrHttpMode fixed the issue.