[Geoserver-devel] [JIRA] (GEOS-8246) GetFeatureInfo fails on pre-genalized data store when the user is anonymous

Andrea Aime created an issue

GeoServer / BugGEOS-8246

GetFeatureInfo fails on pre-genalized data store when the user is anonymous

Issue Type:

BugBug

Assignee:

Unassigned

Components:

Main

Created:

06/Aug/17 3:20 PM

Priority:

MediumMedium

Reporter:

Andrea Aime

The error looks as follows:

	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
	at org.eclipse.jetty.server.Server.handle(Server.java:499)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
	at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.IllegalArgumentException: SecureFeatureSources has been fed with unexpected AccessLimits class class org.geoserver.security.WorkspaceAccessLimits
	at org.geoserver.security.decorators.SecuredFeatureSource.getReadQuery(SecuredFeatureSource.java:128)
	at org.geoserver.security.decorators.SecuredFeatureSource.getFeatures(SecuredFeatureSource.java:83)
	at org.geoserver.security.decorators.SecuredSimpleFeatureSource.getFeatures(SecuredSimpleFeatureSource.java:46)
	at org.geotools.data.gen.PreGeneralizedFeatureSource.getFeatures(PreGeneralizedFeatureSource.java:222)
	at org.geoserver.feature.retype.RetypingFeatureSource.getFeatures(RetypingFeatureSource.java:182)
	at org.vfny.geoserver.global.GeoServerFeatureSource.getFeatures(GeoServerFeatureSource.java:459)

This happens because the pre-generalized store picks a DataStore via the Repository interface, and then grabs the feature sources out of it, instead of asking the Catalog directly like the rest of the code does.

The ReadOnlyDataStore in turn fails to build an appropriate policy type for the returned secured feature source, causing the error above.

Add Comment

Add Comment

Get JIRA notifications on your phone! Download the JIRA Cloud app for Android or iOS


This message was sent by Atlassian JIRA (v1000.1155.0#100057-sha1:92b4cdd)

Atlassian logo