1

I have a GeoServer instance on a closed network without immediate internet access, so it's been difficult to diagnose the several errors I'm seeing. Googling, I've found several other posts on here with a similar description, but following their suggestions hasn't helped fix this. Here are the symptoms:

  1. WMS GetCapabilities requests break. The appearance of this weirdly varies depending on the client. In a simple curl request, I get a very brief ServiceException announcing "Could not determine geoserver request from http request." In Firefox, I get basically the same, but a line number in the thousands indicating that a sizable XML response with the ServiceException vomited somewhere in the middle. If I attempt to "view-source" from Firefox, I get a completely valid XML GetCapabilities response with no ServiceException. Baffling. In the server logs, what I find is the ServiceException: Could not determine geoserver request from http request, which apparently comes down to a NullPointerException.

    If I limit the GetCapabilities request to specific workspaces, I get valid responses, no exceptions, if I request a workspace composed of vector layers, and exceptions if I request a workspace with raster layers.

    Posts involving similar issues suggested I encode/escape the metacharacters in the URL, which didn't seem to make a difference; or suggested that it might be an issue with OpenWebCache or with memory management. I tried disabling OpenWebCache and that did not make a difference.

  2. Thinking this might be due to a corrupt layergroup, I tried to view the LayerGroupPage. But here, just browsing to the LayerGroupPage, I get a "WicketRuntimeException: Can't instantiate page using constructor 'public org.geoserver.web.data.layergroup.LayerGroupPage()'". This also comes down to "Caused by: java.lang.reflect.InvocationTargetException" ... "Caused by: java.lang.NullPointerException".

This is on a closed network and not on my current worksite, so I won't be able to test any suggestions immediately but do you have any advice?

4
  • 1
    Can you post correct request and the wrong one. Where are the differences?
    – GSienko
    Commented Feb 22, 2022 at 19:04
  • It might be good to start from a fresh parallel GeoServer installation and add one by one datastores/layers/layer groups and follow when the problems start to appear.
    – user30184
    Commented Feb 22, 2022 at 19:56
  • It does not appear to be a problem with a specific datastore or layer or layergroup. Everything WAS working, then we left it alone for a few months and when we checked on it, this was occurring. Commented Feb 22, 2022 at 21:31
  • Possibly an issue with the web server, sending an incorrect content length header for the XML document.
    – nmtoken
    Commented Feb 23, 2022 at 13:51

1 Answer 1

1

I narrowed the problem (by downloading the source code and following the stack traces) to a couple of corrupt layer groups. I was not able to delete them from within GeoServer, even through the web interface or the REST interface. They had to be deleted from the file system and the service restarted. What a pain. How they got corrupted in the first place, I am not sure, since they were working when first loaded. Maybe some better tolerance for bad data can be built into GeoServer in the future.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.