Hi,
What you try to do may be possible but for sure not that simply. For making
Geoserver to be able to output complex schema like the Inspire ones you must
install app-schema plugin.
http://docs.geoserver.org/latest/en/user/data/app-schema/index.html
Then, in best case, you may be able to write a mapping file between the complex
input schema and complex output schema. I would not be surprised if this is
not implemented yet. However, this part of the document gives a hint that it
may be doable
http://docs.geoserver.org/latest/en/user/data/app-schema/feature-chaining.html
While waiting for answers from app-schema specialists you can test cascaded WFS
with some simple feature type.
-Jukka Rahkonen-
Johannes Michael Föll wrote:
Hi everyone,
i just downloaded the new Geoserver 2.4.0 and testet the WFSDataStore.
Therefore i wanted to include the deegree WFS from the deegree 3 demo.
To reproduce the errors, here the settings and steps I've done:
1. Downloaded Geoserver 2.4.0 (stable version) and installed as local service
on Windows XP (service pack 3)
2. Opened the WFSDataStore to include the deegree WFS and included the
following inputs:
- workspace: cite
- name of datasource: test_deegree
- WFS GetCapabilities URL:
http://deegree3-demo.deegree.org/inspire-workspace/services?SERVICE=WFS&REQUEST=GetCapabilities&version=1.1.0
- WFSDataStoreFactory:PROTOCOL: activated
- WFSDataStoreFactory:WFS_STRATEGY: changed to nonstrict
3. Saved the DataStore
4. Tried to publish the Layer ad_Address. At this moment, the following error
app ears:
java.lang.RuntimeException: Error occurred while building the resources for the
configuration page at
org.geoserver.web.data.layer.NewLayerPage.buildLayerInfo(NewLayerPage.java:307)
at org.geoserver.web.data.layer.NewLayerPage$6.onClick(NewLayerPage.java:242)
at org.geoserver.web.wicket.SimpleAjaxLink$1.onClick(SimpleAjaxLink.java:45) at
org.apache.wicket.ajax.markup.html.AjaxLink$1.onEvent(AjaxLink.java:68) at
org.apache.wicket.ajax.AjaxEventBehavior.respond(AjaxEventBehavior.java:177) at
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior.onRequest(AbstractDefaultAjaxBehavior.java:300)
at
org.apache.wicket.request.target.component.listener.BehaviorRequestTarget.processEvents(BehaviorRequestTarget.java:119)
at
org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:92)
at
org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1250)
at org.apache.wicket.RequestCycle.step(RequestCycle.java:1329 ) at
org.apache.wicket.RequestCycle.steps(RequestCycle.java:1436) at
org.apache.wicket.RequestCycle.request(RequestCycle.java:545) at
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:484) at
org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:138) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:707) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at
org.springframework.web.servlet.mvc.ServletWrappingController.handleRequestInternal(ServletWrappingController.java:159)
at
org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
at
org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)
at org.springframework.web.servlet.FrameworkServle
t.processRequest(FrameworkServlet.java:882) at
org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:820) at
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
at
org.geoserver.filters.ThreadLocalsCleanupFilter.doFilter(ThreadLocalsCleanupFilter.java:27)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.SpringDelegatingFilter$Chain.doFilter(SpringDelegatingFilter.java:74)
at
org.geoserver.filters.SpringDelegatingFilter.doFilter(SpringDelegatingFilter.java:45)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.platform.AdvancedDispatchFilter.doFilter(AdvancedDispatchFilter.java:49)
at org.mortbay.j
etty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) at
org.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:109)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:311)
at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)
at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:116)
at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:83)
at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)
at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
at org.springframework.secur
ity.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)
at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)
at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at
org.geoserver.security.filter.GeoServerAnonymousAuthenticationFilter.doFilter(GeoServerAnonymousAuthenticationFilter.java:53)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter
.java:68) at
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:182)
at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)
at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
at
org.geoserver.security.filter.GeoServerUserNamePasswordAuthenticationFilter.doFilter(GeoServerUserNamePasswordAuthenticationFilter.java:115)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)
at
org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:146)
at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCom
positeFilter.java:72) at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:68)
at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
at
org.geoserver.security.filter.GeoServerSecurityContextPersistenceFilter$1.doFilter(GeoServerSecurityContextPersistenceFilter.java:52)
at
org.geoserver.security.filter.GeoServerCompositeFilter$NestedFilterChain.doFilter(GeoServerCompositeFilter.java:72)
at
org.geoserver.security.filter.GeoServerCompositeFilter.doFilter(GeoServerCompositeFilter.java:91)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:323)
at org.springframework.security.web.FilterChai
nProxy.doFilter(FilterChainProxy.java:173) at
org.geoserver.security.GeoServerSecurityFilterChainProxy.doFilter(GeoServerSecurityFilterChainProxy.java:134)
at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:75) at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:42) at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.SessionDebugFilter.doFilter(SessionDebugFilter.java:47)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.FlushSafeFilter.doFilter(Fl ushSafeFilter.java:43) at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726) at
org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) at
org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
at
org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) at
org.mortbay.jetty.Server.handle(Server.java:324) at
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505) at
org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)
at org.mortbay.jetty.Ht tpParser.parseNext(HttpParser.java:514) at
org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) at
org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380) at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395) at
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
Caused by: java.lang.NullPointerException at
org.geotools.xml.impl.SchemaIndexImpl.buildElementIndex(SchemaIndexImpl.java:382)
at
org.geotools.xml.impl.SchemaIndexImpl.getElementIndex(SchemaIndexImpl.java:320)
at
org.geotools.xml.impl.SchemaIndexImpl.getElementDeclaration(SchemaIndexImpl.java:130)
at
org.geotools.data.wfs.v1_1_0.parsers.EmfAppSchemaParser.parseFeatureType(EmfAppSchemaParser.java:315)
at
org.geotools.data.wfs.v1_1_0.parsers.EmfAppSchemaParser.parse(EmfAppSchemaParser.java:222)
at
org.geotools.data.wfs.v1_1_0.parsers.EmfAppSchemaParser.parseSimpleFeatureType(EmfAppSchemaParser.java:131)
at org.geotools.data.wfs.v1_1_0.WFS_1_1_0
_Protocol.issueDescribeFeatureTypeGET(WFS_1_1_0_Protocol.java:798) at
org.geotools.data.wfs.v1_1_0.WFS_1_1_0_DataStore.getSchema(WFS_1_1_0_DataStore.java:262)
at
org.geoserver.feature.retype.RetypingDataStore.updateMap(RetypingDataStore.java:201)
at
org.geoserver.feature.retype.RetypingDataStore.getFeatureSource(RetypingDataStore.java:157)
at
org.geoserver.feature.retype.RetypingDataStore.getFeatureSource(RetypingDataStore.java:293)
at
org.geoserver.feature.retype.RetypingDataStore.getFeatureSource(RetypingDataStore.java:46)
at
org.geoserver.catalog.CatalogBuilder.buildFeatureType(CatalogBuilder.java:329)
at
org.geoserver.web.data.layer.NewLayerPage.buildLayerInfo(NewLayerPage.java:300)
... 95 more
I think, the problem is caused by the complex INSPIRE-Schema, delivered by the
deegree wfs. Is there a chance to use the deegree INSPIRE WFS as DataStore?
Is this a bug in Geoserver? Do you have any hints and comments? Thanks a lot!
Kind regards,
Jo hannes
------------------------------------------------------------------------------
LIMITED TIME SALE - Full Year of Microsoft Training For Just $49.99!
1,500+ hours of tutorials including VisualStudio 2012, Windows 8, SharePoint
2013, SQL 2012, MVC 4, more. BEST VALUE: New Multi-Library Power Pack includes
Mobile, Cloud, Java, and UX Design. Lowest price ever! Ends 9/22/13.
http://pubads.g.doubleclick.net/gampad/clk?id=64545871&iu=/4140/ostg.clktrk
_______________________________________________
Geoserver-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-users