[Geoserver-devel] REST Configuration Example fails with GeoServer 2.0.0

Hello everybody,

I am trying to repeat the steps in the REST Configuration Examples as outlined here:
http://docs.geoserver.org/2.0.0/user/extensions/rest/rest-config-examples-curl.html

I failed to accomplish “Upload a Shapefile” step - I can see the attached exception thrown in the GeoServer console.

It looks like GeoTools is trying to locate an shx file in the destination folder before it copied it there.

I am using GeoServer 2.0.0 running on Windows XP. Any ideas what is going on?

Thanks,

Andy

27 Dec 19:13:38 INFO [catalog.rest] - PUT file, mimetype: application/x-www-form
-urlencoded
27 Dec 19:13:38 INFO [catalog.rest] - Using existing datastore: fe_2007_010001_e
dges
27 Dec 19:13:38 WARN [shapefile.sh] - Could not open the .shx file, continuing a
ssuming the .shp file is not sparse
java.io.FileNotFoundException: C:\Program Files\GeoServer 2.0.0\data_dir\data\fe
_2007_010001_edges\fe_2007_010001_edges.shx
at org.geotools.data.shapefile.ShpFiles.getReadChannel(ShpFiles.java:821)
at org.geotools.data.shapefile.shp.IndexFile.(IndexFile.java:78)
at org.geotools.data.shapefile.shp.ShapefileReader.(ShapefileReader.java:215)
at org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
at org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
at org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
at org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
at org.restlet.Finder.handle(Finder.java:298)
at org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
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:875)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
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:275)
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
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.content(HttpConnection.java:842)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
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)
27 Dec 19:13:38 ERROR [geoserver.rest] -
java.lang.RuntimeException: java.io.IOException: Wrong magic number, expected 9994, got 1347093252
at org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:253)
at org.restlet.Finder.handle(Finder.java:298)
at org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
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:875)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
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:275)
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
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.content(HttpConnection.java:842)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
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.io.IOException: Wrong magic number, expected 9994, got 1347093252
at org.geotools.data.shapefile.shp.ShapefileHeader.checkMagic(ShapefileHeader.java:53)
at org.geotools.data.shapefile.shp.ShapefileHeader.read(ShapefileHeader.java:75)
at org.geotools.data.shapefile.shp.ShapefileReader.readHeader(ShapefileReader.java:259)
at org.geotools.data.shapefile.shp.ShapefileReader.init(ShapefileReader.java:309)
at org.geotools.data.shapefile.shp.ShapefileReader.(ShapefileReader.java:221)
at org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
at org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
at org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
at org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
… 56 more

Hi Andy,

First I would try clearing out any directories under data_dir/data that were created by previous upload attempts. Then try again and capture the log of the first attempt. It would also be helpful to have the exact cURL request that you are making.

A common mistake is not setting the content-type properly to application/zip.

-Jusitn

Andy Burgard wrote:

Hello everybody,

I am trying to repeat the steps in the REST Configuration Examples as outlined here:
http://docs.geoserver.org/2.0.0/user/extensions/rest/rest-config-examples-curl.html

I failed to accomplish "Upload a Shapefile" step - I can see the attached exception thrown in the GeoServer console.

It looks like GeoTools is trying to locate an shx file in the destination folder before it copied it there.

I am using GeoServer 2.0.0 running on Windows XP. Any ideas what is going on?

Thanks,

Andy

27 Dec 19:13:38 INFO [catalog.rest] - PUT file, mimetype: application/x-www-form
-urlencoded
27 Dec 19:13:38 INFO [catalog.rest] - Using existing datastore: fe_2007_010001_e
dges
27 Dec 19:13:38 WARN [shapefile.sh] - Could not open the .shx file, continuing a
ssuming the .shp file is not sparse
java.io.FileNotFoundException: C:\Program Files\GeoServer 2.0.0\data_dir\data\fe
_2007_010001_edges\fe_2007_010001_edges.shx
        at org.geotools.data.shapefile.ShpFiles.getReadChannel(ShpFiles.java:821)
        at org.geotools.data.shapefile.shp.IndexFile.<init>(IndexFile.java:78)
        at org.geotools.data.shapefile.shp.ShapefileReader.<init>(ShapefileReader.java:215)
        at org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
        at org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
        at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
        at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
        at org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
        at org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
        at org.restlet.Finder.handle(Finder.java:298)
        at org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
        at org.restlet.Filter.doHandle(Filter.java:105)
        at org.restlet.Filter.handle(Filter.java:134)
        at org.restlet.Router.handle(Router.java:444)
        at com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
        at org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
        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:875)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
        at org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
        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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
        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:275)
        at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
        at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
        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.content(HttpConnection.java:842)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
        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)
27 Dec 19:13:38 ERROR [geoserver.rest] -
java.lang.RuntimeException: java.io.IOException: Wrong magic number, expected 9994, got 1347093252
        at org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:253)
        at org.restlet.Finder.handle(Finder.java:298)
        at org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
        at org.restlet.Filter.doHandle(Filter.java:105)
        at org.restlet.Filter.handle(Filter.java:134)
        at org.restlet.Router.handle(Router.java:444)
        at com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
        at org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
        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:875)
        at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
        at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
        at org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
        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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
        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:275)
        at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
        at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
        at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
        at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
        at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
        at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
        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.content(HttpConnection.java:842)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
        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.io.IOException: Wrong magic number, expected 9994, got 1347093252
        at org.geotools.data.shapefile.shp.ShapefileHeader.checkMagic(ShapefileHeader.java:53)
        at org.geotools.data.shapefile.shp.ShapefileHeader.read(ShapefileHeader.java:75)
        at org.geotools.data.shapefile.shp.ShapefileReader.readHeader(ShapefileReader.java:259)
        at org.geotools.data.shapefile.shp.ShapefileReader.init(ShapefileReader.java:309)
        at org.geotools.data.shapefile.shp.ShapefileReader.<init>(ShapefileReader.java:221)
        at org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
        at org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
        at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
        at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
        at org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
        at org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
        ... 56 more

------------------------------------------------------------------------

------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev

------------------------------------------------------------------------

_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

Justin,

thanks for the help.Here are the cURL commands I am submitting:

curl -u admin:geoserver -v -XPOST -H “Content-type: text/xml” -d “roads” http://localhost:8080/geoserver/rest/workspaces

curl -XGET http://localhost:8080/geoserver/rest/workspaces/roads.xml

I get the following at this point:

/workspaces/roads.xml

roads

<atom:link xmlns:atom=“http://www.w3.org/2005/Atom” rel=“alternate” href=“ht
tp://localhost:8080/geoserver/rest/workspaces/roads/datastores.xml” type=“applic
ation/xml”/>


<atom:link xmlns:atom=“http://www.w3.org/2005/Atom” rel=“alternate” href=“ht
tp://localhost:8080/geoserver/rest/workspaces/roads/coveragestores.xml” type=“ap
plication/xml”/>

Next I do:

curl -v -u admin:geoserver -XPUT --header ‘Content-type: application/zip’ --data-binary @fe_2007_01001_edges.zip http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

That’s when I get the exception I posted in my original email. Here fe_2007_01001_edges.zip is a zip file that contains a fe_2007_01001_edges shapefile. The file is taken from TIGER/Line dataset.

Thanks,

Andy

On Tue, Dec 29, 2009 at 11:34 AM, Justin Deoliveira <jdeolive@anonymised.com> wrote:

Hi Andy,

First I would try clearing out any directories under data_dir/data that were created by previous upload attempts. Then try again and capture the log of the first attempt. It would also be helpful to have the exact cURL request that you are making.

A common mistake is not setting the content-type properly to application/zip.

-Jusitn

Andy Burgard wrote:

Hello everybody,

I am trying to repeat the steps in the REST Configuration Examples as outlined here:
http://docs.geoserver.org/2.0.0/user/extensions/rest/rest-config-examples-curl.html

I failed to accomplish “Upload a Shapefile” step - I can see the attached exception thrown in the GeoServer console.

It looks like GeoTools is trying to locate an shx file in the destination folder before it copied it there.

I am using GeoServer 2.0.0 running on Windows XP. Any ideas what is going on?

Thanks,

Andy

27 Dec 19:13:38 INFO [catalog.rest] - PUT file, mimetype: application/x-www-form
-urlencoded
27 Dec 19:13:38 INFO [catalog.rest] - Using existing datastore: fe_2007_010001_e
dges
27 Dec 19:13:38 WARN [shapefile.sh] - Could not open the .shx file, continuing a
ssuming the .shp file is not sparse
java.io.FileNotFoundException: C:\Program Files\GeoServer 2.0.0\data_dir\data\fe
_2007_010001_edges\fe_2007_010001_edges.shx
at org.geotools.data.shapefile.ShpFiles.getReadChannel(ShpFiles.java:821)
at org.geotools.data.shapefile.shp.IndexFile.(IndexFile.java:78)
at org.geotools.data.shapefile.shp.ShapefileReader.(ShapefileReader.java:215)
at org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
at org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
at org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
at org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
at org.restlet.Finder.handle(Finder.java:298)
at org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
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:875)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
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:275)
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
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.content(HttpConnection.java:842)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
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)
27 Dec 19:13:38 ERROR [geoserver.rest] -
java.lang.RuntimeException: java.io.IOException: Wrong magic number, expected 9994, got 1347093252
at org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:253)
at org.restlet.Finder.handle(Finder.java:298)
at org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
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:875)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
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:275)
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
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.content(HttpConnection.java:842)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
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.io.IOException: Wrong magic number, expected 9994, got 1347093252
at org.geotools.data.shapefile.shp.ShapefileHeader.checkMagic(ShapefileHeader.java:53)
at org.geotools.data.shapefile.shp.ShapefileHeader.read(ShapefileHeader.java:75)
at org.geotools.data.shapefile.shp.ShapefileReader.readHeader(ShapefileReader.java:259)
at org.geotools.data.shapefile.shp.ShapefileReader.init(ShapefileReader.java:309)
at org.geotools.data.shapefile.shp.ShapefileReader.(ShapefileReader.java:221)
at org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
at org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
at org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
at org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
at org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
… 56 more



This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon’s best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev



Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel


Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

Hmmm... strange the requests look fine to me. Can you show me the contents of the data_dir/data directory before and after the upload, a recursive listing if possible.

Andy Burgard wrote:

Justin,

thanks for the help.Here are the cURL commands I am submitting:

curl -u admin:geoserver -v -XPOST -H "Content-type: text/xml" -d "<workspace><name>roads</name></workspace>" http://localhost:8080/geoserver/rest/workspaces

curl -XGET http://localhost:8080/geoserver/rest/workspaces/roads.xml

I get the following at this point:

/workspaces/roads.xml
<workspace>
  <name>roads</name>
  <dataStores>
    <atom:link xmlns:atom="http://www.w3.org/2005/Atom&quot; rel="alternate" href="ht
tp://localhost:8080/geoserver/rest/workspaces/roads/datastores.xml" type="applic
ation/xml"/>
  </dataStores>
  <coverageStores>
    <atom:link xmlns:atom="http://www.w3.org/2005/Atom&quot; rel="alternate" href="ht
tp://localhost:8080/geoserver/rest/workspaces/roads/coveragestores.xml" type="ap
plication/xml"/>
  </coverageStores>
</workspace>

Next I do:

curl -v -u admin:geoserver -XPUT --header 'Content-type: application/zip' --data-binary @fe_2007_01001_edges.zip http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

That's when I get the exception I posted in my original email. Here fe_2007_01001_edges.zip is a zip file that contains a fe_2007_01001_edges shapefile. The file is taken from TIGER/Line dataset.

Thanks,

Andy

On Tue, Dec 29, 2009 at 11:34 AM, Justin Deoliveira <jdeolive@anonymised.com <mailto:jdeolive@anonymised.com>> wrote:

    Hi Andy,

    First I would try clearing out any directories under data_dir/data
    that were created by previous upload attempts. Then try again and
    capture the log of the first attempt. It would also be helpful to
    have the exact cURL request that you are making.

    A common mistake is not setting the content-type properly to
    application/zip.

    -Jusitn

    Andy Burgard wrote:

        Hello everybody,

        I am trying to repeat the steps in the REST Configuration
        Examples as outlined here:
        http://docs.geoserver.org/2.0.0/user/extensions/rest/rest-config-examples-curl.html

        I failed to accomplish "Upload a Shapefile" step - I can see the
        attached exception thrown in the GeoServer console.

        It looks like GeoTools is trying to locate an shx file in the
        destination folder before it copied it there.

        I am using GeoServer 2.0.0 running on Windows XP. Any ideas what
        is going on?

        Thanks,

        Andy

        27 Dec 19:13:38 INFO [catalog.rest] - PUT file, mimetype:
        application/x-www-form
        -urlencoded
        27 Dec 19:13:38 INFO [catalog.rest] - Using existing datastore:
        fe_2007_010001_e
        dges
        27 Dec 19:13:38 WARN [shapefile.sh] - Could not open the .shx
        file, continuing a
        ssuming the .shp file is not sparse
        java.io.FileNotFoundException: C:\Program Files\GeoServer
        2.0.0\data_dir\data\fe
        _2007_010001_edges\fe_2007_010001_edges.shx
               at
        org.geotools.data.shapefile.ShpFiles.getReadChannel(ShpFiles.java:821)
               at
        org.geotools.data.shapefile.shp.IndexFile.<init>(IndexFile.java:78)
               at
        org.geotools.data.shapefile.shp.ShapefileReader.<init>(ShapefileReader.java:215)
               at
        org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
               at
        org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
               at
        org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
               at
        org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
               at
        org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
               at
        org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
               at org.restlet.Finder.handle(Finder.java:298)
               at
        org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
               at org.restlet.Filter.doHandle(Filter.java:105)
               at org.restlet.Filter.handle(Filter.java:134)
               at org.restlet.Router.handle(Router.java:444)
               at
        com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
               at
        org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
               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:875)
               at
        org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
               at
        org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
               at
        org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
               at
        javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
               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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
               at
        org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
               at
        org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
               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:275)
               at
        org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
               at
        org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
               at
        org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
               at
        org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
               at
        org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
               at
        org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
               at
        org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
               at
        org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
               at
        org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
               at
        org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
               at
        org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
               at
        org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
               at
        org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
               at
        org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
               at
        org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
               at
        org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
               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.content(HttpConnection.java:842)
               at
        org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
               at
        org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
               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)
        27 Dec 19:13:38 ERROR [geoserver.rest] -
        java.lang.RuntimeException: java.io.IOException: Wrong magic
        number, expected 9994, got 1347093252
               at
        org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:253)
               at org.restlet.Finder.handle(Finder.java:298)
               at
        org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
               at org.restlet.Filter.doHandle(Filter.java:105)
               at org.restlet.Filter.handle(Filter.java:134)
               at org.restlet.Router.handle(Router.java:444)
               at
        com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
               at
        org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
               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:875)
               at
        org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
               at
        org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
               at
        org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
               at
        javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
               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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
               at
        org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
               at
        org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
               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:275)
               at
        org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
               at
        org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
               at
        org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
               at
        org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
               at
        org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
               at
        org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
               at
        org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
               at
        org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
               at
        org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
               at
        org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
               at
        org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
               at
        org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
               at
        org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
               at
        org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
               at
        org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
               at
        org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
               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.content(HttpConnection.java:842)
               at
        org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
               at
        org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
               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.io.IOException: Wrong magic number, expected
        9994, got 1347093252
               at
        org.geotools.data.shapefile.shp.ShapefileHeader.checkMagic(ShapefileHeader.java:53)
               at
        org.geotools.data.shapefile.shp.ShapefileHeader.read(ShapefileHeader.java:75)
               at
        org.geotools.data.shapefile.shp.ShapefileReader.readHeader(ShapefileReader.java:259)
               at
        org.geotools.data.shapefile.shp.ShapefileReader.init(ShapefileReader.java:309)
               at
        org.geotools.data.shapefile.shp.ShapefileReader.<init>(ShapefileReader.java:221)
               at
        org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
               at
        org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
               at
        org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
               at
        org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
               at
        org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
               at
        org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
               ... 56 more

        ------------------------------------------------------------------------

        ------------------------------------------------------------------------------
        This SF.Net email is sponsored by the Verizon Developer Community
        Take advantage of Verizon's best-in-class app development support
        A streamlined, 14 day to market process makes app distribution
        fast and easy
        Join now and get one step closer to millions of Verizon customers
        http://p.sf.net/sfu/verizon-dev2dev

        ------------------------------------------------------------------------

        _______________________________________________
        Geoserver-devel mailing list
        Geoserver-devel@lists.sourceforge.net
        <mailto:Geoserver-devel@lists.sourceforge.net>
        https://lists.sourceforge.net/lists/listinfo/geoserver-devel

    -- Justin Deoliveira
    OpenGeo - http://opengeo.org
    Enterprise support for open source geospatial.

------------------------------------------------------------------------

------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev

------------------------------------------------------------------------

_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

Justin,

here is the listing of the data_dir/data directory before the excution of

curl -v -u admin:geoserver -XPUT --header ‘Content-type: application/zip’ --data-binary @fe_2007_01001_edges.zip http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

command:

C:\Program Files\GeoServer 2.0.0\data_dir\data>dir /s/w/o/p
Volume in drive C is OSDisk
Volume Serial Number is 907C-9CD2

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data

[.] […]
0 File(s) 0 bytes

Total Files Listed:
0 File(s) 0 bytes
2 Dir(s) 31,512,698,880 bytes free

C:\Program Files\GeoServer 2.0.0\data_dir\data>

After executing the command I get the following:
C:\Program Files\GeoServer 2.0.0\data_dir\data>dir /s/w/o/p
Volume in drive C is OSDisk
Volume Serial Number is 907C-9CD2

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data

[.] […] [fe_2007_01001_edges]
0 File(s) 0 bytes

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data\fe_2007_01001_edges

[.] […] fe_2007_01001_edges.shp
1 File(s) 3,361,720 bytes

Total Files Listed:
1 File(s) 3,361,720 bytes
5 Dir(s) 31,509,241,856 bytes free

Also I tried another zip file and I get the same results. Also I tried Geoserver 1.7.6 (with the corresponding version of REST jar) and got exactly the same exception.

BTW, how am I supposed to install REST jar - I just copied the restconfig-?.?.?.jar to the webapps\geoserver\WEB-INF\lib folder ?

Thanks,

Andy

On Tue, Dec 29, 2009 at 6:33 PM, Justin Deoliveira <jdeolive@anonymised.com> wrote:

Hmmm… strange the requests look fine to me. Can you show me the contents of the data_dir/data directory before and after the upload, a recursive listing if possible.

Andy Burgard wrote:

Justin,

thanks for the help.Here are the cURL commands I am submitting:

curl -u admin:geoserver -v -XPOST -H “Content-type: text/xml” -d “roads” http://localhost:8080/geoserver/rest/workspaces

curl -XGET http://localhost:8080/geoserver/rest/workspaces/roads.xml

I get the following at this point:

/workspaces/roads.xml

roads

<atom:link xmlns:atom=“http://www.w3.org/2005/Atom” rel=“alternate” href=“ht
tp://localhost:8080/geoserver/rest/workspaces/roads/datastores.xml” type=“applic
ation/xml”/>


<atom:link xmlns:atom=“http://www.w3.org/2005/Atom” rel=“alternate” href=“ht
tp://localhost:8080/geoserver/rest/workspaces/roads/coveragestores.xml” type=“ap
plication/xml”/>

Next I do:

curl -v -u admin:geoserver -XPUT --header ‘Content-type: application/zip’ --data-binary @fe_2007_01001_edges.zip http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

That’s when I get the exception I posted in my original email. Here fe_2007_01001_edges.zip is a zip file that contains a fe_2007_01001_edges shapefile. The file is taken from TIGER/Line dataset.

Thanks,

Andy

On Tue, Dec 29, 2009 at 11:34 AM, Justin Deoliveira <jdeolive@anonymised.com mailto:[jdeolive@anonymised.com](mailto:jdeolive@anonymised.com)> wrote:

Hi Andy,

First I would try clearing out any directories under data_dir/data
that were created by previous upload attempts. Then try again and
capture the log of the first attempt. It would also be helpful to
have the exact cURL request that you are making.

A common mistake is not setting the content-type properly to
application/zip.

-Jusitn

Andy Burgard wrote:

Hello everybody,

I am trying to repeat the steps in the REST Configuration
Examples as outlined here:
http://docs.geoserver.org/2.0.0/user/extensions/rest/rest-config-examples-curl.html

I failed to accomplish “Upload a Shapefile” step - I can see the
attached exception thrown in the GeoServer console.

It looks like GeoTools is trying to locate an shx file in the
destination folder before it copied it there.

I am using GeoServer 2.0.0 running on Windows XP. Any ideas what
is going on?

Thanks,

Andy

27 Dec 19:13:38 INFO [catalog.rest] - PUT file, mimetype:
application/x-www-form
-urlencoded
27 Dec 19:13:38 INFO [catalog.rest] - Using existing datastore:
fe_2007_010001_e
dges
27 Dec 19:13:38 WARN [shapefile.sh] - Could not open the .shx
file, continuing a
ssuming the .shp file is not sparse
java.io.FileNotFoundException: C:\Program Files\GeoServer
2.0.0\data_dir\data\fe
_2007_010001_edges\fe_2007_010001_edges.shx
at
org.geotools.data.shapefile.ShpFiles.getReadChannel(ShpFiles.java:821)
at
org.geotools.data.shapefile.shp.IndexFile.(IndexFile.java:78)
at
org.geotools.data.shapefile.shp.ShapefileReader.(ShapefileReader.java:215)
at
org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
at
org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
at
org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
at
org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
at org.restlet.Finder.handle(Finder.java:298)
at
org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at
com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at
org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
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:875)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at
org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
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:275)
at
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
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.content(HttpConnection.java:842)
at
org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at
org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
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)
27 Dec 19:13:38 ERROR [geoserver.rest] -
java.lang.RuntimeException: java.io.IOException: Wrong magic
number, expected 9994, got 1347093252
at
org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:253)
at org.restlet.Finder.handle(Finder.java:298)
at
org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at
com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at
org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
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:875)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at
org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
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:275)
at
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
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.content(HttpConnection.java:842)
at
org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at
org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
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.io.IOException: Wrong magic number, expected
9994, got 1347093252
at
org.geotools.data.shapefile.shp.ShapefileHeader.checkMagic(ShapefileHeader.java:53)
at
org.geotools.data.shapefile.shp.ShapefileHeader.read(ShapefileHeader.java:75)
at
org.geotools.data.shapefile.shp.ShapefileReader.readHeader(ShapefileReader.java:259)
at
org.geotools.data.shapefile.shp.ShapefileReader.init(ShapefileReader.java:309)
at
org.geotools.data.shapefile.shp.ShapefileReader.(ShapefileReader.java:221)
at
org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
at
org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
at
org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
at
org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
… 56 more



This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon’s best-in-class app development support
A streamlined, 14 day to market process makes app distribution
fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev



Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net

mailto:[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@anonymised.comrge.net)

https://lists.sourceforge.net/lists/listinfo/geoserver-devel

– Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.



This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon’s best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev



Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel


Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

Hmmm... i am stumped on this one. Any chance you can post the zip file you are trying to POST? (privately if you wish) With it I can try to replicate the problem.

-Justin

Andy Burgard wrote:

Justin,

here is the listing of the data_dir/data directory before the excution of

curl -v -u admin:geoserver -XPUT --header 'Content-type: application/zip' --data-binary @fe_2007_01001_edges.zip http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

command:

C:\Program Files\GeoServer 2.0.0\data_dir\data>dir /s/w/o/p
Volume in drive C is OSDisk
Volume Serial Number is 907C-9CD2

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data

[.] [..]
               0 File(s) 0 bytes

     Total Files Listed:
               0 File(s) 0 bytes
               2 Dir(s) 31,512,698,880 bytes free

C:\Program Files\GeoServer 2.0.0\data_dir\data>

After executing the command I get the following:
C:\Program Files\GeoServer 2.0.0\data_dir\data>dir /s/w/o/p
Volume in drive C is OSDisk
Volume Serial Number is 907C-9CD2

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data

[.] [..] [fe_2007_01001_edges]
               0 File(s) 0 bytes

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data\fe_2007_01001_edges

[.] [..] fe_2007_01001_edges.shp
               1 File(s) 3,361,720 bytes

     Total Files Listed:
               1 File(s) 3,361,720 bytes
               5 Dir(s) 31,509,241,856 bytes free

Also I tried another zip file and I get the same results. Also I tried Geoserver 1.7.6 (with the corresponding version of REST jar) and got exactly the same exception.

BTW, how am I supposed to install REST jar - I just copied the restconfig-?.?.?.jar to the webapps\geoserver\WEB-INF\lib folder ?

Thanks,

Andy

On Tue, Dec 29, 2009 at 6:33 PM, Justin Deoliveira <jdeolive@anonymised.com <mailto:jdeolive@anonymised.com>> wrote:

    Hmmm... strange the requests look fine to me. Can you show me the
    contents of the data_dir/data directory before and after the upload,
    a recursive listing if possible.

    Andy Burgard wrote:

        Justin,

        thanks for the help.Here are the cURL commands I am submitting:

        curl -u admin:geoserver -v -XPOST -H "Content-type: text/xml" -d
        "<workspace><name>roads</name></workspace>"
        http://localhost:8080/geoserver/rest/workspaces

        curl -XGET http://localhost:8080/geoserver/rest/workspaces/roads.xml

        I get the following at this point:

        /workspaces/roads.xml
        <workspace>
         <name>roads</name>
         <dataStores>
           <atom:link xmlns:atom="http://www.w3.org/2005/Atom&quot;
        rel="alternate" href="ht
        tp://localhost:8080/geoserver/rest/workspaces/roads/datastores.xml"
        type="applic
        ation/xml"/>
         </dataStores>
         <coverageStores>
           <atom:link xmlns:atom="http://www.w3.org/2005/Atom&quot;
        rel="alternate" href="ht
        tp://localhost:8080/geoserver/rest/workspaces/roads/coveragestores.xml"
        type="ap
        plication/xml"/>
         </coverageStores>
        </workspace>

        Next I do:

        curl -v -u admin:geoserver -XPUT --header 'Content-type:
        application/zip' --data-binary @fe_2007_01001_edges.zip
        http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

        That's when I get the exception I posted in my original email.
        Here fe_2007_01001_edges.zip is a zip file that contains a
        fe_2007_01001_edges shapefile. The file is taken from
        TIGER/Line dataset.

        Thanks,

        Andy

        On Tue, Dec 29, 2009 at 11:34 AM, Justin Deoliveira
        <jdeolive@anonymised.com <mailto:jdeolive@anonymised.com>
        <mailto:jdeolive@anonymised.com>> wrote:

           Hi Andy,

           First I would try clearing out any directories under
        data_dir/data
           that were created by previous upload attempts. Then try again and
           capture the log of the first attempt. It would also be helpful to
           have the exact cURL request that you are making.

           A common mistake is not setting the content-type properly to
           application/zip.

           -Jusitn

           Andy Burgard wrote:

               Hello everybody,

               I am trying to repeat the steps in the REST Configuration
               Examples as outlined here:
                      http://docs.geoserver.org/2.0.0/user/extensions/rest/rest-config-examples-curl.html

               I failed to accomplish "Upload a Shapefile" step - I can
        see the
               attached exception thrown in the GeoServer console.

               It looks like GeoTools is trying to locate an shx file in the
               destination folder before it copied it there.

               I am using GeoServer 2.0.0 running on Windows XP. Any
        ideas what
               is going on?

               Thanks,

               Andy

               27 Dec 19:13:38 INFO [catalog.rest] - PUT file, mimetype:
               application/x-www-form
               -urlencoded
               27 Dec 19:13:38 INFO [catalog.rest] - Using existing
        datastore:
               fe_2007_010001_e
               dges
               27 Dec 19:13:38 WARN [shapefile.sh] - Could not open the .shx
               file, continuing a
               ssuming the .shp file is not sparse
               java.io.FileNotFoundException: C:\Program Files\GeoServer
               2.0.0\data_dir\data\fe
               _2007_010001_edges\fe_2007_010001_edges.shx
                      at
                      org.geotools.data.shapefile.ShpFiles.getReadChannel(ShpFiles.java:821)
                      at
                      org.geotools.data.shapefile.shp.IndexFile.<init>(IndexFile.java:78)
                      at
                      org.geotools.data.shapefile.shp.ShapefileReader.<init>(ShapefileReader.java:215)
                      at
                      org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
                      at
                      org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
                      at
                      org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
                      at
                      org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
                      at
                      org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
                      at
                      org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
                      at org.restlet.Finder.handle(Finder.java:298)
                      at
                      org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
                      at org.restlet.Filter.doHandle(Filter.java:105)
                      at org.restlet.Filter.handle(Filter.java:134)
                      at org.restlet.Router.handle(Router.java:444)
                      at
                      com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
                      at
                      org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
                      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:875)
                      at
                      org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
                      at
                      org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
                      at
                      org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
                      at
               javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
                      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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
                      at
                      org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                      at
                      org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
                      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:275)
                      at
                      org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
                      at
                      org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                      at
                      org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
                      at
                      org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                      at
                      org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
                      at
                      org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                      at
                      org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
                      at
                      org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                      at
                      org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
                      at
                      org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
                      at
                      org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                      at
                      org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
                      at
                      org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                      at
                      org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
                      at
                      org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                      at
               org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
                      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.content(HttpConnection.java:842)
                      at
               org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
                      at
                      org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
                      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)
               27 Dec 19:13:38 ERROR [geoserver.rest] -
               java.lang.RuntimeException: java.io.IOException: Wrong magic
               number, expected 9994, got 1347093252
                      at
                      org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:253)
                      at org.restlet.Finder.handle(Finder.java:298)
                      at
                      org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
                      at org.restlet.Filter.doHandle(Filter.java:105)
                      at org.restlet.Filter.handle(Filter.java:134)
                      at org.restlet.Router.handle(Router.java:444)
                      at
                      com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
                      at
                      org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
                      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:875)
                      at
                      org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
                      at
                      org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
                      at
                      org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
                      at
               javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
                      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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
                      at
                      org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                      at
                      org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
                      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:275)
                      at
                      org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
                      at
                      org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                      at
                      org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
                      at
                      org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                      at
                      org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
                      at
                      org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                      at
                      org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
                      at
                      org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                      at
                      org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
                      at
                      org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
                      at
                      org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                      at
                      org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
                      at
                      org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                      at
                      org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
                      at
                      org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                      at
               org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
                      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.content(HttpConnection.java:842)
                      at
               org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
                      at
                      org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
                      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.io.IOException: Wrong magic number, expected
               9994, got 1347093252
                      at
                      org.geotools.data.shapefile.shp.ShapefileHeader.checkMagic(ShapefileHeader.java:53)
                      at
                      org.geotools.data.shapefile.shp.ShapefileHeader.read(ShapefileHeader.java:75)
                      at
                      org.geotools.data.shapefile.shp.ShapefileReader.readHeader(ShapefileReader.java:259)
                      at
                      org.geotools.data.shapefile.shp.ShapefileReader.init(ShapefileReader.java:309)
                      at
                      org.geotools.data.shapefile.shp.ShapefileReader.<init>(ShapefileReader.java:221)
                      at
                      org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
                      at
                      org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
                      at
                      org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
                      at
                      org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
                      at
                      org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
                      at
                      org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
                      ... 56 more

                      ------------------------------------------------------------------------

                      ------------------------------------------------------------------------------
               This SF.Net email is sponsored by the Verizon Developer
        Community
               Take advantage of Verizon's best-in-class app development
        support
               A streamlined, 14 day to market process makes app
        distribution
               fast and easy
               Join now and get one step closer to millions of Verizon
        customers
               http://p.sf.net/sfu/verizon-dev2dev

                      ------------------------------------------------------------------------

               _______________________________________________
               Geoserver-devel mailing list
               Geoserver-devel@lists.sourceforge.net
        <mailto:Geoserver-devel@lists.sourceforge.net>
               <mailto:Geoserver-devel@lists.sourceforge.net
        <mailto:Geoserver-devel@lists.sourceforge.net>>

               https://lists.sourceforge.net/lists/listinfo/geoserver-devel

           -- Justin Deoliveira
           OpenGeo - http://opengeo.org
           Enterprise support for open source geospatial.

        ------------------------------------------------------------------------

        ------------------------------------------------------------------------------
        This SF.Net email is sponsored by the Verizon Developer Community
        Take advantage of Verizon's best-in-class app development support
        A streamlined, 14 day to market process makes app distribution
        fast and easy
        Join now and get one step closer to millions of Verizon customers
        http://p.sf.net/sfu/verizon-dev2dev

        ------------------------------------------------------------------------

        _______________________________________________
        Geoserver-devel mailing list
        Geoserver-devel@lists.sourceforge.net
        <mailto:Geoserver-devel@lists.sourceforge.net>
        https://lists.sourceforge.net/lists/listinfo/geoserver-devel

    -- Justin Deoliveira
    OpenGeo - http://opengeo.org
    Enterprise support for open source geospatial.

------------------------------------------------------------------------

------------------------------------------------------------------------------
This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon's best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev

------------------------------------------------------------------------

_______________________________________________
Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

Justin,

this file is coming from TIGER/Line dataset. I attached it but it can also be found here:
ftp://ftp2.census.gov/geo/tiger/TIGER2007FE/01_ALABAMA/01001_Autauga/fe_2007_01001_edges.zip

I don’t think that the problem I am experiencing has to do with this particular file. I tried a different file and I still see the same problem. So either my GeoServer is installed incorrectly or it is just a bug.

BTW, I am using java version “1.6.0_07”.

Thanks for the help,

On Thu, Dec 31, 2009 at 10:06 AM, Justin Deoliveira <jdeolive@anonymised.com501…> wrote:

Hmmm… i am stumped on this one. Any chance you can post the zip file you are trying to POST? (privately if you wish) With it I can try to replicate the problem.

-Justin

Andy Burgard wrote:

Justin,

here is the listing of the data_dir/data directory before the excution of

curl -v -u admin:geoserver -XPUT --header ‘Content-type: application/zip’ --data-binary @fe_2007_01001_edges.zip http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

command:

C:\Program Files\GeoServer 2.0.0\data_dir\data>dir /s/w/o/p
Volume in drive C is OSDisk
Volume Serial Number is 907C-9CD2

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data

[.] […]
0 File(s) 0 bytes

Total Files Listed:
0 File(s) 0 bytes
2 Dir(s) 31,512,698,880 bytes free

C:\Program Files\GeoServer 2.0.0\data_dir\data>

After executing the command I get the following:
C:\Program Files\GeoServer 2.0.0\data_dir\data>dir /s/w/o/p
Volume in drive C is OSDisk
Volume Serial Number is 907C-9CD2

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data

[.] […] [fe_2007_01001_edges]
0 File(s) 0 bytes

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data\fe_2007_01001_edges

[.] […] fe_2007_01001_edges.shp
1 File(s) 3,361,720 bytes

Total Files Listed:
1 File(s) 3,361,720 bytes
5 Dir(s) 31,509,241,856 bytes free

Also I tried another zip file and I get the same results. Also I tried Geoserver 1.7.6 (with the corresponding version of REST jar) and got exactly the same exception.

BTW, how am I supposed to install REST jar - I just copied the restconfig-?.?.?.jar to the webapps\geoserver\WEB-INF\lib folder ?

Thanks,

Andy

On Tue, Dec 29, 2009 at 6:33 PM, Justin Deoliveira <jdeolive@anonymised.com mailto:[jdeolive@anonymised.com](mailto:jdeolive@anonymised.com)> wrote:

Hmmm… strange the requests look fine to me. Can you show me the
contents of the data_dir/data directory before and after the upload,
a recursive listing if possible.

Andy Burgard wrote:

Justin,

thanks for the help.Here are the cURL commands I am submitting:

curl -u admin:geoserver -v -XPOST -H “Content-type: text/xml” -d
“roads”
http://localhost:8080/geoserver/rest/workspaces

curl -XGET http://localhost:8080/geoserver/rest/workspaces/roads.xml

I get the following at this point:

/workspaces/roads.xml

roads

<atom:link xmlns:atom=“http://www.w3.org/2005/Atom
rel=“alternate” href=“ht
tp://localhost:8080/geoserver/rest/workspaces/roads/datastores.xml”
type=“applic
ation/xml”/>


<atom:link xmlns:atom=“http://www.w3.org/2005/Atom
rel=“alternate” href=“ht
tp://localhost:8080/geoserver/rest/workspaces/roads/coveragestores.xml”
type=“ap
plication/xml”/>

Next I do:

curl -v -u admin:geoserver -XPUT --header ‘Content-type:
application/zip’ --data-binary @fe_2007_01001_edges.zip
http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

That’s when I get the exception I posted in my original email.
Here fe_2007_01001_edges.zip is a zip file that contains a
fe_2007_01001_edges shapefile. The file is taken from
TIGER/Line dataset.

Thanks,

Andy

On Tue, Dec 29, 2009 at 11:34 AM, Justin Deoliveira
<jdeolive@anonymised.com mailto:[jdeolive@anonymised.com](mailto:jdeolive@anonymised.com)

<mailto:jdeolive@anonymised.com mailto:[jdeolive@anonymised.com](mailto:jdeolive@anonymised.com501...)>> wrote:

Hi Andy,

First I would try clearing out any directories under
data_dir/data
that were created by previous upload attempts. Then try again and
capture the log of the first attempt. It would also be helpful to
have the exact cURL request that you are making.

A common mistake is not setting the content-type properly to
application/zip.

-Jusitn

Andy Burgard wrote:

Hello everybody,

I am trying to repeat the steps in the REST Configuration
Examples as outlined here:
http://docs.geoserver.org/2.0.0/user/extensions/rest/rest-config-examples-curl.html

I failed to accomplish “Upload a Shapefile” step - I can
see the
attached exception thrown in the GeoServer console.

It looks like GeoTools is trying to locate an shx file in the
destination folder before it copied it there.

I am using GeoServer 2.0.0 running on Windows XP. Any
ideas what
is going on?

Thanks,

Andy

27 Dec 19:13:38 INFO [catalog.rest] - PUT file, mimetype:
application/x-www-form
-urlencoded
27 Dec 19:13:38 INFO [catalog.rest] - Using existing
datastore:
fe_2007_010001_e
dges
27 Dec 19:13:38 WARN [shapefile.sh] - Could not open the .shx
file, continuing a
ssuming the .shp file is not sparse
java.io.FileNotFoundException: C:\Program Files\GeoServer
2.0.0\data_dir\data\fe
_2007_010001_edges\fe_2007_010001_edges.shx
at
org.geotools.data.shapefile.ShpFiles.getReadChannel(ShpFiles.java:821)
at
org.geotools.data.shapefile.shp.IndexFile.(IndexFile.java:78)
at
org.geotools.data.shapefile.shp.ShapefileReader.(ShapefileReader.java:215)
at
org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
at
org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
at
org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
at
org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
at org.restlet.Finder.handle(Finder.java:298)
at
org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at
com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at
org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
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:875)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at
org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
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:275)
at
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
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.content(HttpConnection.java:842)
at
org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at
org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
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)
27 Dec 19:13:38 ERROR [geoserver.rest] -
java.lang.RuntimeException: java.io.IOException: Wrong magic
number, expected 9994, got 1347093252
at
org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:253)
at org.restlet.Finder.handle(Finder.java:298)
at
org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at
com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at
org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
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:875)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at
org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
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:275)
at
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
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.content(HttpConnection.java:842)
at
org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at
org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
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.io.IOException: Wrong magic number, expected
9994, got 1347093252
at
org.geotools.data.shapefile.shp.ShapefileHeader.checkMagic(ShapefileHeader.java:53)
at
org.geotools.data.shapefile.shp.ShapefileHeader.read(ShapefileHeader.java:75)
at
org.geotools.data.shapefile.shp.ShapefileReader.readHeader(ShapefileReader.java:259)
at
org.geotools.data.shapefile.shp.ShapefileReader.init(ShapefileReader.java:309)
at
org.geotools.data.shapefile.shp.ShapefileReader.(ShapefileReader.java:221)
at
org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
at
org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
at
org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
at
org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
… 56 more



This SF.Net email is sponsored by the Verizon Developer
Community
Take advantage of Verizon’s best-in-class app development
support
A streamlined, 14 day to market process makes app
distribution
fast and easy
Join now and get one step closer to millions of Verizon
customers
http://p.sf.net/sfu/verizon-dev2dev



Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
mailto:[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@anonymised.comrge.net)
<mailto:Geoserver-devel@anonymised.comet
mailto:[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@anonymised.comrge.net)>

https://lists.sourceforge.net/lists/listinfo/geoserver-devel

– Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.



This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon’s best-in-class app development support
A streamlined, 14 day to market process makes app distribution
fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev



Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
mailto:[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@anonymised.comrge.net)
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

– Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.



This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon’s best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev



Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel


Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

(attachments)

fe_2007_01001_edges.zip (3.21 MB)

I am sorry to be a pest but I still need an answer to this question. I would really appreciate if somebody could confirm if there is a problem with REST api. I really need this functionality for the project I want to do.

Thanks,

Andy

On Thu, Jan 7, 2010 at 4:34 PM, Andy Burgard <andy.burgard@anonymised.com…> wrote:

Justin,

this file is coming from TIGER/Line dataset. I attached it but it can also be found here:
ftp://ftp2.census.gov/geo/tiger/TIGER2007FE/01_ALABAMA/01001_Autauga/fe_2007_01001_edges.zip

I don’t think that the problem I am experiencing has to do with this particular file. I tried a different file and I still see the same problem. So either my GeoServer is installed incorrectly or it is just a bug.

BTW, I am using java version “1.6.0_07”.

Thanks for the help,

On Thu, Dec 31, 2009 at 10:06 AM, Justin Deoliveira <jdeolive@anonymised.com> wrote:

Hmmm… i am stumped on this one. Any chance you can post the zip file you are trying to POST? (privately if you wish) With it I can try to replicate the problem.

-Justin

Andy Burgard wrote:

Justin,

here is the listing of the data_dir/data directory before the excution of

curl -v -u admin:geoserver -XPUT --header ‘Content-type: application/zip’ --data-binary @fe_2007_01001_edges.zip http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

command:

C:\Program Files\GeoServer 2.0.0\data_dir\data>dir /s/w/o/p
Volume in drive C is OSDisk
Volume Serial Number is 907C-9CD2

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data

[.] […]
0 File(s) 0 bytes

Total Files Listed:
0 File(s) 0 bytes
2 Dir(s) 31,512,698,880 bytes free

C:\Program Files\GeoServer 2.0.0\data_dir\data>

After executing the command I get the following:
C:\Program Files\GeoServer 2.0.0\data_dir\data>dir /s/w/o/p
Volume in drive C is OSDisk
Volume Serial Number is 907C-9CD2

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data

[.] […] [fe_2007_01001_edges]
0 File(s) 0 bytes

Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data\fe_2007_01001_edges

[.] […] fe_2007_01001_edges.shp
1 File(s) 3,361,720 bytes

Total Files Listed:
1 File(s) 3,361,720 bytes
5 Dir(s) 31,509,241,856 bytes free

Also I tried another zip file and I get the same results. Also I tried Geoserver 1.7.6 (with the corresponding version of REST jar) and got exactly the same exception.

BTW, how am I supposed to install REST jar - I just copied the restconfig-?.?.?.jar to the webapps\geoserver\WEB-INF\lib folder ?

Thanks,

Andy

On Tue, Dec 29, 2009 at 6:33 PM, Justin Deoliveira <jdeolive@anonymised.com mailto:[jdeolive@anonymised.com](mailto:jdeolive@anonymised.com)> wrote:

Hmmm… strange the requests look fine to me. Can you show me the
contents of the data_dir/data directory before and after the upload,
a recursive listing if possible.

Andy Burgard wrote:

Justin,

thanks for the help.Here are the cURL commands I am submitting:

curl -u admin:geoserver -v -XPOST -H “Content-type: text/xml” -d
“roads”
http://localhost:8080/geoserver/rest/workspaces

curl -XGET http://localhost:8080/geoserver/rest/workspaces/roads.xml

I get the following at this point:

/workspaces/roads.xml

roads

<atom:link xmlns:atom=“http://www.w3.org/2005/Atom
rel=“alternate” href=“ht
tp://localhost:8080/geoserver/rest/workspaces/roads/datastores.xml”
type=“applic
ation/xml”/>


<atom:link xmlns:atom=“http://www.w3.org/2005/Atom
rel=“alternate” href=“ht
tp://localhost:8080/geoserver/rest/workspaces/roads/coveragestores.xml”
type=“ap
plication/xml”/>

Next I do:

curl -v -u admin:geoserver -XPUT --header ‘Content-type:
application/zip’ --data-binary @fe_2007_01001_edges.zip
http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

That’s when I get the exception I posted in my original email.
Here fe_2007_01001_edges.zip is a zip file that contains a
fe_2007_01001_edges shapefile. The file is taken from
TIGER/Line dataset.

Thanks,

Andy

On Tue, Dec 29, 2009 at 11:34 AM, Justin Deoliveira
<jdeolive@anonymised.com mailto:[jdeolive@anonymised.com](mailto:jdeolive@anonymised.com)

<mailto:jdeolive@anonymised.com mailto:[jdeolive@anonymised.com](mailto:jdeolive@anonymised.com501...)>> wrote:

Hi Andy,

First I would try clearing out any directories under
data_dir/data
that were created by previous upload attempts. Then try again and
capture the log of the first attempt. It would also be helpful to
have the exact cURL request that you are making.

A common mistake is not setting the content-type properly to
application/zip.

-Jusitn

Andy Burgard wrote:

Hello everybody,

I am trying to repeat the steps in the REST Configuration
Examples as outlined here:
http://docs.geoserver.org/2.0.0/user/extensions/rest/rest-config-examples-curl.html

I failed to accomplish “Upload a Shapefile” step - I can
see the
attached exception thrown in the GeoServer console.

It looks like GeoTools is trying to locate an shx file in the
destination folder before it copied it there.

I am using GeoServer 2.0.0 running on Windows XP. Any
ideas what
is going on?

Thanks,

Andy

27 Dec 19:13:38 INFO [catalog.rest] - PUT file, mimetype:
application/x-www-form
-urlencoded
27 Dec 19:13:38 INFO [catalog.rest] - Using existing
datastore:
fe_2007_010001_e
dges
27 Dec 19:13:38 WARN [shapefile.sh] - Could not open the .shx
file, continuing a
ssuming the .shp file is not sparse
java.io.FileNotFoundException: C:\Program Files\GeoServer
2.0.0\data_dir\data\fe
_2007_010001_edges\fe_2007_010001_edges.shx
at
org.geotools.data.shapefile.ShpFiles.getReadChannel(ShpFiles.java:821)
at
org.geotools.data.shapefile.shp.IndexFile.(IndexFile.java:78)
at
org.geotools.data.shapefile.shp.ShapefileReader.(ShapefileReader.java:215)
at
org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
at
org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
at
org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
at
org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
at org.restlet.Finder.handle(Finder.java:298)
at
org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at
com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at
org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
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:875)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at
org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
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:275)
at
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
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.content(HttpConnection.java:842)
at
org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at
org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
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)
27 Dec 19:13:38 ERROR [geoserver.rest] -
java.lang.RuntimeException: java.io.IOException: Wrong magic
number, expected 9994, got 1347093252
at
org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:253)
at org.restlet.Finder.handle(Finder.java:298)
at
org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
at org.restlet.Filter.doHandle(Filter.java:105)
at org.restlet.Filter.handle(Filter.java:134)
at org.restlet.Router.handle(Router.java:444)
at
com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
at
org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
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:875)
at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
at
org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
at
javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
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:275)
at
org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at
org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
at
org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
at
org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
at
org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
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.content(HttpConnection.java:842)
at
org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
at
org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
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.io.IOException: Wrong magic number, expected
9994, got 1347093252
at
org.geotools.data.shapefile.shp.ShapefileHeader.checkMagic(ShapefileHeader.java:53)
at
org.geotools.data.shapefile.shp.ShapefileHeader.read(ShapefileHeader.java:75)
at
org.geotools.data.shapefile.shp.ShapefileReader.readHeader(ShapefileReader.java:259)
at
org.geotools.data.shapefile.shp.ShapefileReader.init(ShapefileReader.java:309)
at
org.geotools.data.shapefile.shp.ShapefileReader.(ShapefileReader.java:221)
at
org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
at
org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
at
org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
at
org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
at
org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
… 56 more



This SF.Net email is sponsored by the Verizon Developer
Community
Take advantage of Verizon’s best-in-class app development
support
A streamlined, 14 day to market process makes app
distribution
fast and easy
Join now and get one step closer to millions of Verizon
customers
http://p.sf.net/sfu/verizon-dev2dev



Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
mailto:[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@anonymised.comrge.net)
<mailto:Geoserver-devel@anonymised.comet
mailto:[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@anonymised.comrge.net)>

https://lists.sourceforge.net/lists/listinfo/geoserver-devel

– Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.



This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon’s best-in-class app development support
A streamlined, 14 day to market process makes app distribution
fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev



Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
mailto:[Geoserver-devel@lists.sourceforge.net](mailto:Geoserver-devel@anonymised.comrge.net)
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

– Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.



This SF.Net email is sponsored by the Verizon Developer Community
Take advantage of Verizon’s best-in-class app development support
A streamlined, 14 day to market process makes app distribution fast and easy
Join now and get one step closer to millions of Verizon customers
http://p.sf.net/sfu/verizon-dev2dev



Geoserver-devel mailing list
Geoserver-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-devel


Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.

Hi Andy,

Just to let you know this email list is not commercial support, it is users helping users in their spare time. So if you don't get a response it means people are probably busy. If you do need more reliable support there are certainly companies willing to offer it.

That said, apologies for dragging my heels on this one it has been a busy week. Unfortunately I am not able to reproduce the problem. This operation is quite a common one so it must be something specific to your setup that is causing the error. I am sort of out of ideas here... the only thing I can ask is that you post your data directory for me and i can try to run with it to see if i can reproduce.

Past that the only thing I can suggest is that you break out a java debugger and walk through the code...

-Justin

Andy Burgard wrote:

I am sorry to be a pest but I still need an answer to this question. I would really appreciate if somebody could confirm if there is a problem with REST api. I really need this functionality for the project I want to do.

Thanks,

Andy

On Thu, Jan 7, 2010 at 4:34 PM, Andy Burgard <andy.burgard@anonymised.com <mailto:andy.burgard@anonymised.com>> wrote:

    Justin,

    this file is coming from TIGER/Line dataset. I attached it but it
    can also be found here:
    ftp://ftp2.census.gov/geo/tiger/TIGER2007FE/01_ALABAMA/01001_Autauga/fe_2007_01001_edges.zip

    I don't think that the problem I am experiencing has to do with this
    particular file. I tried a different file and I still see the same
    problem. So either my GeoServer is installed incorrectly or it is
    just a bug.

    BTW, I am using java version "1.6.0_07".

    Thanks for the help,

    On Thu, Dec 31, 2009 at 10:06 AM, Justin Deoliveira
    <jdeolive@anonymised.com <mailto:jdeolive@anonymised.com>> wrote:

        Hmmm... i am stumped on this one. Any chance you can post the
        zip file you are trying to POST? (privately if you wish) With it
        I can try to replicate the problem.

        -Justin

        Andy Burgard wrote:

            Justin,

            here is the listing of the data_dir/data directory before
            the excution of

            curl -v -u admin:geoserver -XPUT --header 'Content-type:
            application/zip' --data-binary @fe_2007_01001_edges.zip
            http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

            command:

            C:\Program Files\GeoServer 2.0.0\data_dir\data>dir /s/w/o/p
             Volume in drive C is OSDisk
             Volume Serial Number is 907C-9CD2

             Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data

            [.] [..]
                          0 File(s) 0 bytes

                Total Files Listed:
                          0 File(s) 0 bytes
                          2 Dir(s) 31,512,698,880 bytes free

            C:\Program Files\GeoServer 2.0.0\data_dir\data>

            After executing the command I get the following:
            C:\Program Files\GeoServer 2.0.0\data_dir\data>dir /s/w/o/p
             Volume in drive C is OSDisk
             Volume Serial Number is 907C-9CD2

             Directory of C:\Program Files\GeoServer 2.0.0\data_dir\data

            [.] [..] [fe_2007_01001_edges]
                          0 File(s) 0 bytes

             Directory of C:\Program Files\GeoServer
            2.0.0\data_dir\data\fe_2007_01001_edges

            [.] [..] fe_2007_01001_edges.shp
                          1 File(s) 3,361,720 bytes

                Total Files Listed:
                          1 File(s) 3,361,720 bytes
                          5 Dir(s) 31,509,241,856 bytes free

            Also I tried another zip file and I get the same results.
            Also I tried Geoserver 1.7.6 (with the corresponding
            version of REST jar) and got exactly the same exception.

            BTW, how am I supposed to install REST jar - I just copied
            the restconfig-?.?.?.jar to the
            webapps\geoserver\WEB-INF\lib folder ?

            Thanks,

            Andy

            On Tue, Dec 29, 2009 at 6:33 PM, Justin Deoliveira
            <jdeolive@anonymised.com <mailto:jdeolive@anonymised.com>
            <mailto:jdeolive@anonymised.com>>
            wrote:

               Hmmm... strange the requests look fine to me. Can you
            show me the
               contents of the data_dir/data directory before and after
            the upload,
               a recursive listing if possible.

               Andy Burgard wrote:

                   Justin,

                   thanks for the help.Here are the cURL commands I am
            submitting:

                   curl -u admin:geoserver -v -XPOST -H "Content-type:
            text/xml" -d
                   "<workspace><name>roads</name></workspace>"
                   http://localhost:8080/geoserver/rest/workspaces

                   curl -XGET
            http://localhost:8080/geoserver/rest/workspaces/roads.xml

                   I get the following at this point:

                   /workspaces/roads.xml
                   <workspace>
                    <name>roads</name>
                    <dataStores>
                      <atom:link xmlns:atom="http://www.w3.org/2005/Atom&quot;
                   rel="alternate" href="ht
                              tp://localhost:8080/geoserver/rest/workspaces/roads/datastores.xml"
                   type="applic
                   ation/xml"/>
                    </dataStores>
                    <coverageStores>
                      <atom:link xmlns:atom="http://www.w3.org/2005/Atom&quot;
                   rel="alternate" href="ht
                              tp://localhost:8080/geoserver/rest/workspaces/roads/coveragestores.xml"
                   type="ap
                   plication/xml"/>
                    </coverageStores>
                   </workspace>

                   Next I do:

                   curl -v -u admin:geoserver -XPUT --header 'Content-type:
                   application/zip' --data-binary @fe_2007_01001_edges.zip
                              http://localhost:8080/geoserver/rest/workspaces/roads/datastores/fe_2007_01001_edges/file.shp

                   That's when I get the exception I posted in my
            original email.
                   Here fe_2007_01001_edges.zip is a zip file that
            contains a
                   fe_2007_01001_edges shapefile. The file is taken from
                   TIGER/Line dataset.

                   Thanks,

                   Andy

                   On Tue, Dec 29, 2009 at 11:34 AM, Justin Deoliveira
                   <jdeolive@anonymised.com <mailto:jdeolive@anonymised.com>
            <mailto:jdeolive@anonymised.com>
                   <mailto:jdeolive@anonymised.com
            <mailto:jdeolive@anonymised.com> <mailto:jdeolive@anonymised.com
            <mailto:jdeolive@anonymised.com>>>> wrote:

                      Hi Andy,

                      First I would try clearing out any directories under
                   data_dir/data
                      that were created by previous upload attempts.
            Then try again and
                      capture the log of the first attempt. It would
            also be helpful to
                      have the exact cURL request that you are making.

                      A common mistake is not setting the content-type
            properly to
                      application/zip.

                      -Jusitn

                      Andy Burgard wrote:

                          Hello everybody,

                          I am trying to repeat the steps in the REST
            Configuration
                          Examples as outlined here:
                                           http://docs.geoserver.org/2.0.0/user/extensions/rest/rest-config-examples-curl.html

                          I failed to accomplish "Upload a Shapefile"
            step - I can
                   see the
                          attached exception thrown in the GeoServer
            console.

                          It looks like GeoTools is trying to locate an
            shx file in the
                          destination folder before it copied it there.

                          I am using GeoServer 2.0.0 running on Windows
            XP. Any
                   ideas what
                          is going on?

                          Thanks,

                          Andy

                          27 Dec 19:13:38 INFO [catalog.rest] - PUT
            file, mimetype:
                          application/x-www-form
                          -urlencoded
                          27 Dec 19:13:38 INFO [catalog.rest] - Using
            existing
                   datastore:
                          fe_2007_010001_e
                          dges
                          27 Dec 19:13:38 WARN [shapefile.sh] - Could
            not open the .shx
                          file, continuing a
                          ssuming the .shp file is not sparse
                          java.io.FileNotFoundException: C:\Program
            Files\GeoServer
                          2.0.0\data_dir\data\fe
                          _2007_010001_edges\fe_2007_010001_edges.shx
                                 at
                                           org.geotools.data.shapefile.ShpFiles.getReadChannel(ShpFiles.java:821)
                                 at
                                           org.geotools.data.shapefile.shp.IndexFile.<init>(IndexFile.java:78)
                                 at
                                           org.geotools.data.shapefile.shp.ShapefileReader.<init>(ShapefileReader.java:215)
                                 at
                                           org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
                                 at
                                           org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
                                 at
                                           org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
                                 at
                                           org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
                                 at
                                           org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
                                 at
                                           org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
                                 at
            org.restlet.Finder.handle(Finder.java:298)
                                 at
                                           org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
                                 at
            org.restlet.Filter.doHandle(Filter.java:105)
                                 at
            org.restlet.Filter.handle(Filter.java:134)
                                 at
            org.restlet.Router.handle(Router.java:444)
                                 at
                                           com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
                                 at
                                           org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
                                 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:875)
                                 at
                                           org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
                                 at
                                           org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
                                 at
                                           org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
                                 at
                                     javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
                                 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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
                                 at
                                           org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                                 at
                                           org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
                                 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:275)
                                 at
                                           org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
                                 at
                                           org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                                 at
                                           org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
                                 at
                                           org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                                 at
                                           org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
                                 at
                                           org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                                 at
                                           org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
                                 at
                                           org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                                 at
                                           org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
                                 at
                                           org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
                                 at
                                           org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                                 at
                                           org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
                                 at
                                           org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                                 at
                                           org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
                                 at
                                           org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                                 at
                                     org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
                                 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.content(HttpConnection.java:842)
                                 at
                                     org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
                                 at
                                           org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
                                 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)
                          27 Dec 19:13:38 ERROR [geoserver.rest] -
                          java.lang.RuntimeException:
            java.io.IOException: Wrong magic
                          number, expected 9994, got 1347093252
                                 at
                                           org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:253)
                                 at
            org.restlet.Finder.handle(Finder.java:298)
                                 at
                                           org.geoserver.rest.BeanDelegatingRestlet.handle(BeanDelegatingRestlet.java:38)
                                 at
            org.restlet.Filter.doHandle(Filter.java:105)
                                 at
            org.restlet.Filter.handle(Filter.java:134)
                                 at
            org.restlet.Router.handle(Router.java:444)
                                 at
                                           com.noelios.restlet.ext.servlet.ServletConverter.service(ServletConverter.java:129)
                                 at
                                           org.geoserver.rest.RESTDispatcher.handleRequestInternal(RESTDispatcher.java:79)
                                 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:875)
                                 at
                                           org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:809)
                                 at
                                           org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
                                 at
                                           org.springframework.web.servlet.FrameworkServlet.doPut(FrameworkServlet.java:521)
                                 at
                                     javax.servlet.http.HttpServlet.service(HttpServlet.java:730)
                                 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.vfny.geoserver.filters.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:108)
                                 at
                                           org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                                 at
                                           org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
                                 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:275)
                                 at
                                           org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:124)
                                 at
                                           org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                                 at
                                           org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
                                 at
                                           org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                                 at
                                           org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:174)
                                 at
                                           org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                                 at
                                           org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
                                 at
                                           org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
                                 at
                                           org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
                                 at
                                           org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
                                 at
                                           org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                                 at
                                           org.geoserver.filters.LoggingFilter.doFilter(LoggingFilter.java:73)
                                 at
                                           org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                                 at
                                           org.geoserver.filters.ReverseProxyFilter.doFilter(ReverseProxyFilter.java:183)
                                 at
                                           org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
                                 at
                                     org.geoserver.filters.GZIPFilter.doFilter(GZIPFilter.java:47)
                                 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.content(HttpConnection.java:842)
                                 at
                                     org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:648)
                                 at
                                           org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:205)
                                 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.io.IOException: Wrong magic
            number, expected
                          9994, got 1347093252
                                 at
                                           org.geotools.data.shapefile.shp.ShapefileHeader.checkMagic(ShapefileHeader.java:53)
                                 at
                                           org.geotools.data.shapefile.shp.ShapefileHeader.read(ShapefileHeader.java:75)
                                 at
                                           org.geotools.data.shapefile.shp.ShapefileReader.readHeader(ShapefileReader.java:259)
                                 at
                                           org.geotools.data.shapefile.shp.ShapefileReader.init(ShapefileReader.java:309)
                                 at
                                           org.geotools.data.shapefile.shp.ShapefileReader.<init>(ShapefileReader.java:221)
                                 at
                                           org.geotools.data.shapefile.ShapefileDataStore.openShapeReader(ShapefileDataStore.java:453)
                                 at
                                           org.geotools.data.shapefile.ShapefileDataStore.readAttributes(ShapefileDataStore.java:680)
                                 at
                                           org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:638)
                                 at
                                           org.geotools.data.shapefile.ShapefileDataStore.getSchema(ShapefileDataStore.java:632)
                                 at
                                           org.geotools.data.shapefile.ShapefileDataStore.getFeatureSource(ShapefileDataStore.java:964)
                                 at
                                           org.geoserver.catalog.rest.DataStoreFileResource.handlePut(DataStoreFileResource.java:220)
                                 ... 56 more

                                           ------------------------------------------------------------------------

                                           ------------------------------------------------------------------------------
                          This SF.Net email is sponsored by the Verizon
            Developer
                   Community
                          Take advantage of Verizon's best-in-class app
            development
                   support
                          A streamlined, 14 day to market process makes app
                   distribution
                          fast and easy
                          Join now and get one step closer to millions
            of Verizon
                   customers
                          http://p.sf.net/sfu/verizon-dev2dev

                                           ------------------------------------------------------------------------

                          _______________________________________________
                          Geoserver-devel mailing list
                          Geoserver-devel@lists.sourceforge.net
            <mailto:Geoserver-devel@lists.sourceforge.net>
                   <mailto:Geoserver-devel@lists.sourceforge.net
            <mailto:Geoserver-devel@lists.sourceforge.net>>
                          <mailto:Geoserver-devel@lists.sourceforge.net
            <mailto:Geoserver-devel@lists.sourceforge.net>
                   <mailto:Geoserver-devel@lists.sourceforge.net
            <mailto:Geoserver-devel@lists.sourceforge.net>>>

                                     https://lists.sourceforge.net/lists/listinfo/geoserver-devel

                      -- Justin Deoliveira
                      OpenGeo - http://opengeo.org
                      Enterprise support for open source geospatial.

                              ------------------------------------------------------------------------

                              ------------------------------------------------------------------------------
                   This SF.Net email is sponsored by the Verizon
            Developer Community
                   Take advantage of Verizon's best-in-class app
            development support
                   A streamlined, 14 day to market process makes app
            distribution
                   fast and easy
                   Join now and get one step closer to millions of
            Verizon customers
                   http://p.sf.net/sfu/verizon-dev2dev

                              ------------------------------------------------------------------------

                   _______________________________________________
                   Geoserver-devel mailing list
                   Geoserver-devel@lists.sourceforge.net
            <mailto:Geoserver-devel@lists.sourceforge.net>
                   <mailto:Geoserver-devel@lists.sourceforge.net
            <mailto:Geoserver-devel@lists.sourceforge.net>>
                              https://lists.sourceforge.net/lists/listinfo/geoserver-devel

               -- Justin Deoliveira
               OpenGeo - http://opengeo.org
               Enterprise support for open source geospatial.

            ------------------------------------------------------------------------

            ------------------------------------------------------------------------------
            This SF.Net email is sponsored by the Verizon Developer
            Community
            Take advantage of Verizon's best-in-class app development
            support
            A streamlined, 14 day to market process makes app
            distribution fast and easy
            Join now and get one step closer to millions of Verizon
            customers
            http://p.sf.net/sfu/verizon-dev2dev

            ------------------------------------------------------------------------

            _______________________________________________
            Geoserver-devel mailing list
            Geoserver-devel@lists.sourceforge.net
            <mailto:Geoserver-devel@lists.sourceforge.net>
            https://lists.sourceforge.net/lists/listinfo/geoserver-devel

        -- Justin Deoliveira
        OpenGeo - http://opengeo.org
        Enterprise support for open source geospatial.

--
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.