[GIS] Geoserver Services not available after restart

geoservertomcatwms

After editing my security settings (data & service security + creating users) my geoserver crashed and I restarted the server. Now the layers from any workspace cannot be loaded (using my OL3 application or MapInfo). After the restart I had to set all my workspaces back to active. MapInfo gives a statuscode 404 message when I try to access the WMS. Before the restart everything worked fine! In my log (VERBOSE) I get the following:

2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0'; against '/web/**'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0'; against '/gwc/rest/web/**'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0'; against '/'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0'; against '/j_spring_security_check'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0'; against '/j_spring_security_check/'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0'; against '/j_spring_security_logout'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0'; against '/j_spring_security_logout/'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0'; against '/rest/**'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0'; against '/gwc/rest/**'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Checking match of request : 'Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0'; against '/**'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Request matched by universal pattern '/**'
2016-01-08 11:02:52,129 DEBUG [security.IncludeQueryStringAntPathRequestMatcher] - Matched Path: /basiskarten/wms, QueryString: SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0 with /**
2016-01-08 11:02:52,129 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/Basiskarten/wms]
2016-01-08 11:02:52,129 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/Basiskarten/wms]
2016-01-08 11:02:52,129 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/Basiskarten/wms]
2016-01-08 11:02:52,129 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/Basiskarten/wms]
2016-01-08 11:02:52,129 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/Basiskarten/wms]
2016-01-08 11:02:52,129 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/Basiskarten/wms]
2016-01-08 11:02:52,129 TRACE [ows.OWSHandlerMapping] - No handler mapping found for [/Basiskarten/wms]
2016-01-08 11:02:52,129 WARN [servlet.PageNotFound] - No mapping found for HTTP request with URI [/geoserver/Basiskarten/wms] in DispatcherServlet with name 'dispatcher'
2016-01-08 11:02:52,129 DEBUG [filter.GeoServerSecurityContextPersistenceFilter$1] - SecurityContextHolder now cleared, as request processing completed

The according part in the web.xml was not changed and looks like this:

<servlet-mapping>
  <servlet-name>dispatcher</servlet-name>
  <url-pattern>/*</url-pattern>
</servlet-mapping>

The layer preview from the geoserver user Interface works without problems. The GetCapabilities shows:

...
<Layer queryable="0" opaque="0" noSubsets="0">
    <Title>GeoServer Web Map Service</Title>
    <Abstract>A compliant implementation of WMS plus most of the SLD extension (dynamic styling). Can also generate PDF, SVG, KML, GeoRSS</Abstract>
    <!-- Limited list of EPSG projections: -->
    <SRS>EPSG:25832</SRS>
    <SRS>EPSG:31466</SRS>
    <SRS>EPSG:31467</SRS>
    <SRS>EPSG:4258</SRS>
    <SRS>EPSG:4326</SRS>
    <LatLonBoundingBox minx="6.885797008644218" miny="51.513224313569715" maxx="7.485102233799098" maxy="51.825676522254355" />
    <Layer queryable="1" opaque="0" noSubsets="0">
        <Name>MYLAYER</Name>
        <Title>MYLAYER</Title>
        <Abstract />
        <KeywordList>
            <Keyword>features</Keyword>
            <Keyword>MYLAYER</Keyword>
        </KeywordList>
        <SRS>EPSG:25832</SRS>
        <LatLonBoundingBox minx="6.885797008644218" miny="51.513224313569715" maxx="7.485102233799098" maxy="51.825676522254355" />
        <BoundingBox SRS="EPSG:25832" minx="354274.071555567" miny="5708990.82142874" maxx="394900.744455572" maxy="5742749.44995753" />
        <Style>
            ...
        </Style>
    </Layer>
    ...
</Layer>
...

I have no clue why the single layers are queryable but the complete workspace is not queryable (Layer queryable="0").

EDIT: We are using conterra security manager (http://www.conterra.de/en/produkte/con-terra-solutionplatform/securitymanager/beschreibung) for access control. The services can be accessed by security manager. It is possible to access the secured services afterwards. The standard service URLs still do not work (tested with MapInfo, OL3, Gaia, ArcGIS Explorer)…

UPDATE: It seems to be an authentication problem. I used the request demo from the geoserver interface and all requests result in http error 404 (without using user credentials). The requests are successful if I am using user credentials. Is there a way to force geoserver for prompting user credentials? If I want to access my service like before in MapInfo I am not even asked for user and password information like before. Now I am just getting that 404 error.

Best Answer

I had to change the catalog mode to mixed! The issue had nothing to do with the dispatcher servlet mapping. The "no handler mapping found" warning still exists but everything works like before.