Perhaps you should try to simply share the configuration folder as a volume between the two containers.
Le jeu. 10 mars 2022 à 14:20, Ricard Peiro <ricard.pe...@exfo.com> a écrit : > Hello, > > I have I have been trying to run Geoserver in a cluster with two nodes > using docker compose in Ubuntu 20.04. I have tried with Geoserver 2.20.2 > and 2.20.3 using JMS clustering plugin. Whenever I try to deploy a style > either from the UI or from the API to one of the nodes, the style is > deployed onto the node but it is not propagated onto the replicated node. > The following error occurs. I have tried creating styles datastores and > layers and they all propagate to the replica. > > > > I`m using this curl from to create the style from the api: > > > > curl -u admin:geoserver -XPOST -H "Content-type: application/zip" --data- > binary *@roads_style*.zip http://localhost:8080/geoserver/rest/styles > ?name=roads_style > > > > The resulting error > > > > master_1 | 10 Mar 11:00:33 WARN [catalog.impl] - Catalog listener threw > exception handling event. > > master_1 | java.lang.NoClassDefFoundError: org/jdom2/JDOMException > > master_1 | at java.base/java.lang.Class.getDeclaredMethods0(Native > Method) > > master_1 | at > java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3166) > > master_1 | at > java.base/java.lang.Class.getDeclaredMethod(Class.java:2473) > > master_1 | at > com.thoughtworks.xstream.core.util.SerializationMembers.getMethod(SerializationMembers.java:183) > > master_1 | at > com.thoughtworks.xstream.core.util.SerializationMembers.getMethod(SerializationMembers.java:168) > > master_1 | at > com.thoughtworks.xstream.core.util.SerializationMembers.getRRMethod(SerializationMembers.java:199) > > master_1 | at > com.thoughtworks.xstream.core.util.SerializationMembers.callWriteReplace(SerializationMembers.java:97) > > master_1 | at > com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:78) > > master_1 | at > com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69) > > master_1 | at > com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58) > > master_1 | at > com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43) > > master_1 | at > com.thoughtworks.xstream.core.TreeMarshaller.start(TreeMarshaller.java:82) > > master_1 | at > com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.marshal(AbstractTreeMarshallingStrategy.java:37) > > master_1 | at > com.thoughtworks.xstream.XStream.marshal(XStream.java:1320) > > master_1 | at > com.thoughtworks.xstream.XStream.marshal(XStream.java:1309) > > master_1 | at > com.thoughtworks.xstream.XStream.toXML(XStream.java:1282) > > master_1 | at > com.thoughtworks.xstream.XStream.toXML(XStream.java:1269) > > master_1 | at > org.geoserver.cluster.impl.handlers.DocumentFileHandler.serialize(DocumentFileHandler.java:39) > > master_1 | at > org.geoserver.cluster.impl.handlers.DocumentFileHandler.serialize(DocumentFileHandler.java:19) > > master_1 | at > org.geoserver.cluster.JMSPublisher.publish(JMSPublisher.java:63) > > master_1 | at > org.geoserver.cluster.server.JMSCatalogListener.handleAddEvent(JMSCatalogListener.java:118) > > master_1 | at > org.geoserver.catalog.impl.CatalogImpl.event(CatalogImpl.java:1873) > > master_1 | at > org.geoserver.catalog.impl.CatalogImpl.fireAdded(CatalogImpl.java:1826) > > master_1 | at > org.geoserver.catalog.impl.CatalogImpl.added(CatalogImpl.java:1804) > > master_1 | at > org.geoserver.catalog.impl.CatalogImpl.add(CatalogImpl.java:1625) > > master_1 | at > org.geoserver.security.SecureCatalogImpl.add(SecureCatalogImpl.java:1320) > > master_1 | at > org.geoserver.catalog.impl.AbstractFilteredCatalog.add(AbstractFilteredCatalog.java:636) > > master_1 | at > org.geoserver.catalog.impl.AbstractCatalogDecorator.add(AbstractCatalogDecorator.java:573) > > master_1 | at > org.geoserver.rest.catalog.StyleController.stylePost(StyleController.java:195) > > master_1 | at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native > Method) > > master_1 | at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > > master_1 | at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > > master_1 | at > java.base/java.lang.reflect.Method.invoke(Method.java:566) > > master_1 | at > org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) > > master_1 | at > org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) > > master_1 | at > org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105) > > master_1 | at > org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:892) > > master_1 | at > org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:797) > > master_1 | at > org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) > > master_1 | at > org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040) > > master_1 | at > org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943) > > master_1 | at > org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) > > master_1 | at > org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909) > > master_1 | at > javax.servlet.http.HttpServlet.service(HttpServlet.java:681) > > master_1 | at > org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) > > master_1 | at > javax.servlet.http.HttpServlet.service(HttpServlet.java:764) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:357) > > master_1 | at > org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:176) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:73) > > master_1 | at > org.geoserver.ows.HTTPHeadersCollector.doFilter(HTTPHeadersCollector.java:48) > > master_1 | at > org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:70) > > master_1 | at > org.geoserver.flow.controller.IpBlacklistFilter.doFilter(IpBlacklistFilter.java:89) > > master_1 | at > org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:70) > > master_1 | at > org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:144) > > master_1 | at > org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:70) > > master_1 | at > org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:43) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:39) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71) > > master_1 | at > org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127) > > master_1 | at > org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92) > > master_1 | at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71) > > master_1 | at > org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92) > > master_1 | at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) > > master_1 | at > org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:53) > > master_1 | at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71) > > master_1 | at > org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilterInternal(BasicAuthenticationFilter.java:215) > > master_1 | at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92) > > master_1 | at > org.geoserver.security.filter.GeoServerBasicAuthenticationFilter.doFilter(GeoServerBasicAuthenticationFilter.java:81) > > master_1 | at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71) > > master_1 | at > org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105) > > master_1 | at > org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75) > > master_1 | at > org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92) > > master_1 | at > org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) > > master_1 | at > org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215) > > master_1 | at > org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178) > > master_1 | at > org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:142) > > master_1 | at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358) > > master_1 | at > org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:102) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:77) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:54) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:49) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:42) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) > > master_1 | at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189) > > master_1 | at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162) > > master_1 | at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197) > > master_1 | at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97) > > master_1 | at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540) > > master_1 | at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135) > > master_1 | at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) > > master_1 | at > org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687) > > master_1 | at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78) > > master_1 | at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357) > > master_1 | at > org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382) > > master_1 | at > org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) > > master_1 | at > org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893) > > master_1 | at > org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1726) > > master_1 | at > org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) > > master_1 | at > org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) > > master_1 | at > org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) > > master_1 | at > org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) > > master_1 | at java.base/java.lang.Thread.run(Thread.java:829) > > master_1 | Caused by: java.lang.ClassNotFoundException: > org.jdom2.JDOMException > > master_1 | at > org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1407) > > master_1 | at > org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1215) > > master_1 | ... 141 more > > > > > > Thank you in advance. > > Ricard > _______________________________________________ > Geoserver-users mailing list > > Please make sure you read the following two resources before posting to > this list: > - Earning your support instead of buying it, but Ian Turton: > http://www.ianturton.com/talks/foss4g.html#/ > - The GeoServer user list posting guidelines: > http://geoserver.org/comm/userlist-guidelines.html > > If you want to request a feature or an improvement, also see this: > https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer > > > Geoserver-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/geoserver-users > -- Alexandre Gacon
_______________________________________________ Geoserver-users mailing list Please make sure you read the following two resources before posting to this list: - Earning your support instead of buying it, but Ian Turton: http://www.ianturton.com/talks/foss4g.html#/ - The GeoServer user list posting guidelines: http://geoserver.org/comm/userlist-guidelines.html If you want to request a feature or an improvement, also see this: https://github.com/geoserver/geoserver/wiki/Successfully-requesting-and-integrating-new-features-and-improvements-in-GeoServer Geoserver-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/geoserver-users