[Geoserver-devel] Geoserver 1.7.x bug when adding a new featuresTypes from UI

Hi all,
i notice a bug when adding a new FeatureTypes from FeatureTypes Editor (Welcome | Config | Data | FeatureTypes | Edit ).

The FeatureTypes is connect to postgis database.

The SRS generations works fine but when i submit a FeatureType form boom:

GeoServer - ExceptionThe following exception was thrown:

  • class java.util.NoSuchElementException: Could not locate FeatureTypeConfig ‘cnr_imaa:builtupa’

Details:

java.util.NoSuchElementException: Could not locate FeatureTypeConfig 'cnr_imaa:builtupa'
	at org.vfny.geoserver.global.Data.getFeatureTypeInfo(Data.java:1903)
	at org.vfny.geoserver.action.data.TypesEditorAction.sync(TypesEditorAction.java:408)

	at org.vfny.geoserver.action.data.TypesEditorAction.executeSubmit(TypesEditorAction.java:569)
	at org.vfny.geoserver.action.data.TypesEditorAction.execute(TypesEditorAction.java:130)
	at org.vfny.geoserver.action.ConfigAction.execute(ConfigAction.java:101)

	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)

	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:264)
	at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)

	at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
	at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:110)

	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
	at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)

	at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
	at org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)

	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:217)
	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)

	at org.acegisecurity.ui.logout.LogoutFilter.doFilter(LogoutFilter.java:106)
	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:229)

	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:274)
	at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:148)
	at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)

	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)

	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:163)

	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:41)

	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
	at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)

	at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
	at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
	at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)

	at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
	at java.lang.Thread.run(Thread.java:619)


Francesco Izzi
CNR - IMAA
geoSDI - NSDI
Responsabile Sviluppo Software

C.da Loja
85050 Tito Scalo - POTENZA (PZ)
Italia

phone: +39 0971427305
fax: +39 0971 427271
mob: +39 3402640314
mail: francesco.izzi@anonymised.com
skype: neofx8080

web: http://geosdi.nsdi.it

Francesco Izzi ha scritto:

Hi all,
i notice a bug when adding a new FeatureTypes from FeatureTypes Editor (Welcome | Config | Data | FeatureTypes | Edit ).

The FeatureTypes is connect to postgis database.

The SRS generations works fine but when i submit a FeatureType form boom:

  GeoServer - Exception

The following exception was thrown:

    * class java.util.NoSuchElementException: Could not locate
      FeatureTypeConfig 'cnr_imaa:builtupa'

Details:

java.util.NoSuchElementException: Could not locate FeatureTypeConfig 'cnr_imaa:builtupa'
  at org.vfny.geoserver.global.Data.getFeatureTypeInfo(Data.java:1903)
  at org.vfny.geoserver.action.data.TypesEditorAction.sync(TypesEditorAction.java:408)

Hum, that area of code looks like:

  if (regionatorNeedsCleaning) {
             String dsName = config.getDataStoreId();
             if (dsName != null && getData().getDataStoreInfo(dsName) != null){
                 String nsPrefix = getData().getDataStoreInfo(dsName).getNamesSpacePrefix();
                 String qualifiedname =
getData().getDataStoreInfo(config.getDataStoreId()).getNamesSpacePrefix()
                     + ":" + config.getName();
                 FeatureTypeInfo fti = getData().getFeatureTypeInfo(qualifiedname);
KMLUtils.findStrategyByName(config.getRegionateStrategy()).clearCache(fti);
             }
         }

Hum... regionation? David? Maybe that code does only work for existing
layers?

Cheers
Andrea

--
Andrea Aime
OpenGeo - http://opengeo.org
Expert service straight from the developers.

Yes, I ran into this issue while testing and thought I had fixed it.
I'll look into this.

David Winslow

On Wed, 2009-01-14 at 17:32 +0100, Andrea Aime wrote:

Francesco Izzi ha scritto:
> Hi all,
> i notice a bug when adding a new FeatureTypes from FeatureTypes Editor
> (Welcome | Config | Data | FeatureTypes | Edit ).
>
> The FeatureTypes is connect to postgis database.
>
> The SRS generations works fine but when i submit a FeatureType form boom:
>
>
> GeoServer - Exception
>
> The following exception was thrown:
>
> * class java.util.NoSuchElementException: Could not locate
> FeatureTypeConfig 'cnr_imaa:builtupa'
>
> Details:
>
> java.util.NoSuchElementException: Could not locate FeatureTypeConfig 'cnr_imaa:builtupa'
> at org.vfny.geoserver.global.Data.getFeatureTypeInfo(Data.java:1903)
> at org.vfny.geoserver.action.data.TypesEditorAction.sync(TypesEditorAction.java:408)
>

Hum, that area of code looks like:

  if (regionatorNeedsCleaning) {
             String dsName = config.getDataStoreId();
             if (dsName != null && getData().getDataStoreInfo(dsName) !=
null){
                 String nsPrefix =
getData().getDataStoreInfo(dsName).getNamesSpacePrefix();
                 String qualifiedname =

getData().getDataStoreInfo(config.getDataStoreId()).getNamesSpacePrefix()
                     + ":" + config.getName();
                 FeatureTypeInfo fti =
getData().getFeatureTypeInfo(qualifiedname);

KMLUtils.findStrategyByName(config.getRegionateStrategy()).clearCache(fti);
             }
         }

Hum... regionation? David? Maybe that code does only work for existing
layers?

Cheers
Andrea