Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Geoserver cluster is not copying new styles #514

Closed
krishnaglodha opened this issue Mar 30, 2023 · 11 comments · Fixed by #567
Closed

Geoserver cluster is not copying new styles #514

krishnaglodha opened this issue Mar 30, 2023 · 11 comments · Fixed by #567

Comments

@krishnaglodha
Copy link
Contributor

krishnaglodha commented Mar 30, 2023

What is the bug or the crash?

I recently created cluster of 3 geoservers


geobroker:
    image: rmohr/activemq:5.15.9
    restart: on-failure
    healthcheck:
      test: curl --fail -s http://localhost:8161 || exit 1
      interval: 20s
      timeout: 10s
      retries: 10
    networks:
      - nginx_network
  gs-node1:
    image: kartoza/geoserver:2.20.0
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - ./data_dir_shared/:/opt/geoserver/data_dir_shared
    ports:
      - "8081:8080"
    environment:
      - BROKER_URL=tcp://geobroker:61616
      - GEOSERVER_ADMIN_PASSWORD=geoserver
      - GEOSERVER_ADMIN_USER=admin
      - GEOSERVER_DATA_DIR=/opt/geoserver/data_dir_shared
      - RESET_ADMIN_CREDENTIALS=TRUE
      - READONLY=disabled
      - CLUSTER_DURABILITY=false
      - CLUSTERING=true
      - TOGGLE_MASTER=true
      - TOGGLE_SLAVE=false
      - SSL_MODE=allow
      - RANDOMSTRING=23bd87cfa327d47e-node1
      - INSTANCE_STRING=ac3bcba2fa7d989678a01ef4facc4173010cd8b40d2e5f5a8d18d5f863ca976f-node1
      - EXISTING_DATA_DIR=true
    restart: on-failure
    depends_on:
      geobroker:
        condition: service_healthy
    healthcheck:
      test: curl --fail -s http://localhost:8080/ || exit 1
      interval: 1m30s
      timeout: 10s
      retries: 3
    networks:
      - nginx_network
  gs-node2:
    image: kartoza/geoserver:2.20.0
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - ./data_dir_shared/:/opt/geoserver/data_dir_shared
    ports:
      - "8082:8080"
    environment:
      - BROKER_URL=tcp://geobroker:61616
      - GEOSERVER_ADMIN_PASSWORD=geoserver
      - GEOSERVER_ADMIN_USER=admin
      - GEOSERVER_DATA_DIR=/opt/geoserver/data_dir_shared
      - RESET_ADMIN_CREDENTIALS=TRUE
      - READONLY=disabled
      - CLUSTER_DURABILITY=false
      - CLUSTERING=True
      - TOGGLE_MASTER=false
      - TOGGLE_SLAVE=true
      - EMBEDDED_BROKER=disabled
      - SSL_MODE=allow
      - RANDOMSTRING=23bd87cfa327d47e-node2
      - INSTANCE_STRING=ac3bcba2fa7d989678a01ef4facc4173010cd8b40d2e5f5a8d18d5f863ca976f-node2
      - EXISTING_DATA_DIR=true
    restart: on-failure
    depends_on:
      gs-node1:
        condition: service_healthy
      geobroker:
        condition: service_healthy
    healthcheck:
      test: curl --fail -s http://localhost:8080/ || exit 1
      interval: 1m30s
      timeout: 10s
      retries: 3
    networks:
      - nginx_network
  gs-node3:
    image: kartoza/geoserver:2.20.0
    build:
      context: .
      dockerfile: Dockerfile
    volumes:
      - ./data_dir_shared/:/opt/geoserver/data_dir_shared
    ports:
      - "8083:8080"
    environment:
      - BROKER_URL=tcp://geobroker:61616
      - GEOSERVER_ADMIN_PASSWORD=geoserver
      - GEOSERVER_ADMIN_USER=admin
      - GEOSERVER_DATA_DIR=/opt/geoserver/data_dir_shared
      - RESET_ADMIN_CREDENTIALS=TRUE
      - READONLY=disabled
      - CLUSTER_DURABILITY=false
      - CLUSTERING=True
      - TOGGLE_MASTER=false
      - TOGGLE_SLAVE=true
      - EMBEDDED_BROKER=disabled
      - SSL_MODE=allow
      - RANDOMSTRING=23bd87cfa327d47e-node3
      - INSTANCE_STRING=ac3bcba2fa7d989678a01ef4facc4173010cd8b40d2e5f5a8d18d5f863ca976f-node3
      - EXISTING_DATA_DIR=true
    restart: on-failure
    depends_on:
      gs-node1:
        condition: service_healthy
      gs-node2:
        condition: service_healthy
      geobroker:
        condition: service_healthy
    healthcheck:
      test: curl --fail -s http://localhost:8080/ || exit 1
      interval: 1m30s
      timeout: 10s
      retries: 3
    networks:
      - nginx_network

I can see workspaces, stores and layers are getting reflected correctly, but problem is with styles,
I'm getting following error


nic-cl-gs-node1-1   | 30 Mar 03:32:44 INFO [cluster.impl] - Using brokerURI: tcp://geobroker:61616
nic-cl-gs-node1-1   | 30 Mar 03:32:44 INFO [geoserver.cluster] - Creating an instance of: class org.geoserver.cluster.impl.handlers.configuration.JMSGeoServerHandlerSPI
nic-cl-gs-node1-1   | 30 Mar 03:32:44 INFO [cluster.impl] - Using brokerURI: tcp://geobroker:61616
nic-cl-gs-node1-1   | 30 Mar 03:32:44 INFO [geoserver.cluster] - Creating an instance of: class org.geoserver.cluster.impl.handlers.DocumentFileHandlerSPI
nic-cl-gs-node1-1   | 30 Mar 03:32:44 INFO [geoserver.cluster] - Creating an instance of: class org.geoserver.cluster.impl.handlers.catalog.JMSCatalogStylesFileHandlerSPI
nic-cl-gs-node1-1   | 30 Mar 03:32:44 WARN [catalog.impl] - Catalog listener threw exception handling event.
nic-cl-gs-node1-1   | java.lang.NoClassDefFoundError: org/jdom2/JDOMException
nic-cl-gs-node1-1   |   at java.base/java.lang.Class.getDeclaredMethods0(Native Method)
nic-cl-gs-node1-1   |   at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3166)
nic-cl-gs-node1-1   |   at java.base/java.lang.Class.getDeclaredMethod(Class.java:2473)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.core.util.SerializationMembers.getMethod(SerializationMembers.java:183)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.core.util.SerializationMembers.getMethod(SerializationMembers.java:168)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.core.util.SerializationMembers.getRRMethod(SerializationMembers.java:199)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.core.util.SerializationMembers.callWriteReplace(SerializationMembers.java:97)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter.marshal(AbstractReflectionConverter.java:78)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.core.AbstractReferenceMarshaller.convert(AbstractReferenceMarshaller.java:69)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:58)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.core.TreeMarshaller.convertAnother(TreeMarshaller.java:43)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.core.TreeMarshaller.start(TreeMarshaller.java:82)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.core.AbstractTreeMarshallingStrategy.marshal(AbstractTreeMarshallingStrategy.java:37)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.XStream.marshal(XStream.java:1320)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.XStream.marshal(XStream.java:1309)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.XStream.toXML(XStream.java:1282)
nic-cl-gs-node1-1   |   at com.thoughtworks.xstream.XStream.toXML(XStream.java:1269)
nic-cl-gs-node1-1   |   at org.geoserver.cluster.impl.handlers.DocumentFileHandler.serialize(DocumentFileHandler.java:39)
nic-cl-gs-node1-1   |   at org.geoserver.cluster.impl.handlers.DocumentFileHandler.serialize(DocumentFileHandler.java:19)
nic-cl-gs-node1-1   |   at org.geoserver.cluster.JMSPublisher.publish(JMSPublisher.java:63)
nic-cl-gs-node1-1   |   at org.geoserver.cluster.server.JMSCatalogListener.handleAddEvent(JMSCatalogListener.java:118)
nic-cl-gs-node1-1   |   at org.geoserver.catalog.impl.CatalogImpl.event(CatalogImpl.java:1873)
nic-cl-gs-node1-1   |   at org.geoserver.catalog.impl.CatalogImpl.fireAdded(CatalogImpl.java:1826)
nic-cl-gs-node1-1   |   at org.geoserver.catalog.impl.CatalogImpl.added(CatalogImpl.java:1804)
nic-cl-gs-node1-1   |   at org.geoserver.catalog.impl.CatalogImpl.add(CatalogImpl.java:1625)
nic-cl-gs-node1-1   |   at org.geoserver.security.SecureCatalogImpl.add(SecureCatalogImpl.java:1320)
nic-cl-gs-node1-1   |   at org.geoserver.catalog.impl.AbstractFilteredCatalog.add(AbstractFilteredCatalog.java:636)
nic-cl-gs-node1-1   |   at org.geoserver.catalog.impl.AbstractCatalogDecorator.add(AbstractCatalogDecorator.java:573)
nic-cl-gs-node1-1   |   at org.geoserver.wms.web.data.StyleNewPage.onStyleFormSubmit(StyleNewPage.java:78)
nic-cl-gs-node1-1   |   at org.geoserver.wms.web.data.AbstractStylePage$1.onSubmit(AbstractStylePage.java:228)
nic-cl-gs-node1-1   |   at org.apache.wicket.markup.html.form.Form.delegateSubmit(Form.java:1318)
nic-cl-gs-node1-1   |   at org.apache.wicket.markup.html.form.Form.process(Form.java:976)
nic-cl-gs-node1-1   |   at org.apache.wicket.markup.html.form.Form.onFormSubmitted(Form.java:797)
nic-cl-gs-node1-1   |   at org.apache.wicket.ajax.form.AjaxFormSubmitBehavior.onEvent(AjaxFormSubmitBehavior.java:174)
nic-cl-gs-node1-1   |   at org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:155)
nic-cl-gs-node1-1   |   at org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:601)
nic-cl-gs-node1-1   |   at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
nic-cl-gs-node1-1   |   at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
nic-cl-gs-node1-1   |   at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
nic-cl-gs-node1-1   |   at java.base/java.lang.reflect.Method.invoke(Method.java:566)
nic-cl-gs-node1-1   |   at org.apache.wicket.RequestListenerInterface.internalInvoke(RequestListenerInterface.java:258)
nic-cl-gs-node1-1   |   at org.apache.wicket.RequestListenerInterface.invoke(RequestListenerInterface.java:241)
nic-cl-gs-node1-1   |   at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.invokeListener(ListenerInterfaceRequestHandler.java:248)
nic-cl-gs-node1-1   |   at org.apache.wicket.core.request.handler.ListenerInterfaceRequestHandler.respond(ListenerInterfaceRequestHandler.java:234)
nic-cl-gs-node1-1   |   at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:895)
nic-cl-gs-node1-1   |   at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
nic-cl-gs-node1-1   |   at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:265)
nic-cl-gs-node1-1   |   at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:222)
nic-cl-gs-node1-1   |   at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:293)
nic-cl-gs-node1-1   |   at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:261)
nic-cl-gs-node1-1   |   at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:203)
nic-cl-gs-node1-1   |   at org.apache.wicket.protocol.http.WicketServlet.doPost(WicketServlet.java:159)
nic-cl-gs-node1-1   |   at javax.servlet.http.HttpServlet.service(HttpServlet.java:681)
nic-cl-gs-node1-1   |   at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
nic-cl-gs-node1-1   |   at org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:166)
nic-cl-gs-node1-1   |   at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:177)
nic-cl-gs-node1-1   |   at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:52)
nic-cl-gs-node1-1   |   at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040)
nic-cl-gs-node1-1   |   at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943)
nic-cl-gs-node1-1   |   at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
nic-cl-gs-node1-1   |   at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909)
nic-cl-gs-node1-1   |   at javax.servlet.http.HttpServlet.service(HttpServlet.java:681)
nic-cl-gs-node1-1   |   at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
nic-cl-gs-node1-1   |   at javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.apache.catalina.filters.CorsFilter.handleNonCORS(CorsFilter.java:357)
nic-cl-gs-node1-1   |   at org.apache.catalina.filters.CorsFilter.doFilter(CorsFilter.java:176)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:28)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:73)
nic-cl-gs-node1-1   |   at org.geoserver.flow.controller.IpBlacklistFilter.doFilter(IpBlacklistFilter.java:89)
nic-cl-gs-node1-1   |   at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:70)
nic-cl-gs-node1-1   |   at org.geoserver.monitor.MonitorFilter.doFilter(MonitorFilter.java:90)
nic-cl-gs-node1-1   |   at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:70)
nic-cl-gs-node1-1   |   at org.geoserver.ows.HTTPHeadersCollector.doFilter(HTTPHeadersCollector.java:48)
nic-cl-gs-node1-1   |   at org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:70)
nic-cl-gs-node1-1   |   at org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:43)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:39)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71)
nic-cl-gs-node1-1   |   at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:127)
nic-cl-gs-node1-1   |   at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:91)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
nic-cl-gs-node1-1   |   at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71)
nic-cl-gs-node1-1   |   at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
nic-cl-gs-node1-1   |   at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:53)
nic-cl-gs-node1-1   |   at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71)
nic-cl-gs-node1-1   |   at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:200)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:122)
nic-cl-gs-node1-1   |   at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71)
nic-cl-gs-node1-1   |   at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:158)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
nic-cl-gs-node1-1   |   at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:71)
nic-cl-gs-node1-1   |   at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:75)
nic-cl-gs-node1-1   |   at org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:92)
nic-cl-gs-node1-1   |   at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334)
nic-cl-gs-node1-1   |   at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215)
nic-cl-gs-node1-1   |   at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178)
nic-cl-gs-node1-1   |   at org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:142)
nic-cl-gs-node1-1   |   at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358)
nic-cl-gs-node1-1   |   at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:102)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.geoserver.filters.XFrameOptionsFilter.doFilter(XFrameOptionsFilter.java:77)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:48)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:49)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.geoserver.filters.FlushSafeFilter.doFilter(FlushSafeFilter.java:42)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
nic-cl-gs-node1-1   |   at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
nic-cl-gs-node1-1   |   at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:540)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
nic-cl-gs-node1-1   |   at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
nic-cl-gs-node1-1   |   at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:687)
nic-cl-gs-node1-1   |   at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
nic-cl-gs-node1-1   |   at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:357)
nic-cl-gs-node1-1   |   at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:382)
nic-cl-gs-node1-1   |   at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
nic-cl-gs-node1-1   |   at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:893)
nic-cl-gs-node1-1   |   at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1726)
nic-cl-gs-node1-1   |   at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
nic-cl-gs-node1-1   |   at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
nic-cl-gs-node1-1   |   at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659)
nic-cl-gs-node1-1   |   at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
nic-cl-gs-node1-1   |   at java.base/java.lang.Thread.run(Thread.java:829)
nic-cl-gs-node1-1   | Caused by: java.lang.ClassNotFoundException: org.jdom2.JDOMException
nic-cl-gs-node1-1   |   at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1407)
nic-cl-gs-node1-1   |   at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1215)
nic-cl-gs-node1-1   |   ... 163 more
nic-cl-nginx-1      | 172.23.0.1 - admin [30/Mar/2023:03:32:45 +0000] "POST /geoserver/web/wicket/bookmarkable/org.geoserver.wms.web.data.StyleNewPage?4-2.IBehaviorListener.0-save&wicket-ajax=true&wicket-ajax-baseurl=wicket%2Fbookmarkable%2Forg.geoserver.wms.web.data.StyleNewPage%3F4 HTTP/1.1" 200 119 "http://localhost/geoserver/web/wicket/bookmarkable/org.geoserver.wms.web.data.StyleNewPage?4" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36" "-"
nic-cl-nginx-1      | 172.23.0.1 - admin [30/Mar/2023:03:32:45 +0000] "GET /geoserver/web/wicket/bookmarkable/org.geoserver.wms.web.data.StylePage HTTP/1.1" 200 6329 "http://localhost/geoserver/web/wicket/bookmarkable/org.geoserver.wms.web.data.StyleNewPage?4" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36" "-"

What might be the reason ?

Steps to reproduce the issue

Create docker-compose as per above above configuration

Versions

2.20.0

Additional context

No response

@francbartoli
Copy link
Contributor

@NyakudyaA any clue about this issue?

@krishnaglodha
Copy link
Contributor Author

Hi @NyakudyaA , we have figured the issue, and to solve it we manually need to put JDOM.jar file in geoserver lib library, please let us know if I should move ahead and raise PR for same

@NyakudyaA
Copy link
Collaborator

Please go ahead and raise a PR

NyakudyaA added a commit that referenced this issue Sep 18, 2023
@NyakudyaA NyakudyaA mentioned this issue Sep 18, 2023
@NyakudyaA
Copy link
Collaborator

@ze-ahmed
Copy link

ze-ahmed commented Sep 20, 2023

Hello krishnaglodha,
Adding the jdom library did not fixe the issue for me

@NyakudyaA
Copy link
Collaborator

@ze-ahmed You can try using the image, kartoza/geoserver:pr-567-2.23.2. I tested it on my side and it works without issue, I see in the logs a bunch of warnings but nothing to prevent the function working

@ze-ahmed
Copy link

checked the issue, it's not working on AWS ECS but when using @krishnaglodha image (geobeyond/geoserver:2.20.6.patched => Can't use this image on production as I don't have acces to the source code) it works well.

NyakudyaA added a commit that referenced this issue Sep 21, 2023
* fix #559

* add clustering tests - a bit fragile cz of community plugin

* fixes #514

* Add option to check for an existing data dir in cluster init

* add info to readme
@flykoh
Copy link

flykoh commented Nov 6, 2023

i think thae cause of that problem is mising jar files that docker can not find while spin up
2023-11-06 09:47:15 --2023-11-06 06:47:15-- https://download.jar-download.com/cache_jars/org.jdom/jdom2/2.0.6.1/jar_files.zip 2023-11-06 09:47:15 Resolving download.jar-download.com (download.jar-download.com)... 104.21.30.50, 172.67.150.151, 2606:4700:3037::6815:1e32, ... 2023-11-06 09:47:15 Connecting to download.jar-download.com (download.jar-download.com)|104.21.30.50|:443... connected. 2023-11-06 09:47:15 HTTP request sent, awaiting response... 404 Not Found 2023-11-06 09:47:15 2023-11-06 06:47:15 ERROR 404: Not Found.

@NyakudyaA
Copy link
Collaborator

@flykoh That URL sometimes works and it sometimes does not work. Maybe a better fix is to download the file and add it to build_data, then replace the logic to download with just copying it when CLUSTERING=TRUE. Maybe you can do a PR with this change

@flykoh
Copy link

flykoh commented Nov 6, 2023

@flykoh That URL sometimes works and it sometimes does not work. Maybe a better fix is to download the file and add it to build_data, then replace the logic to download with just copying it when CLUSTERING=TRUE. Maybe you can do a PR with this change

I downloaded the file and unzipped it in lib and the style still not copied to clusters

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants