Hello All, I figured out what the issue is. For some reason the generated SQL has the wrong SRID. I figured this out by adding a few lines to PostGIS.py to write the sql to a file. The resulting SQL has 4326 for the SRID when it should be 900913.
For example if my request is: http://69.59.158.11/featureserver/featureserver.cgi/parkinfo_google?format=WFS&maxfeatures=50&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&SRS=EPSG%3A900913&BBOX=-40075016.6784,-40075016.50840001,40075016.6784,40075016.8484 The sql is: SELECT AsText(the_geom_google) as fs_text_geom, gid, unit_name, agncy_nam, access FROM "holdingsfeb08" WHERE the_geom_google && SetSRID('BOX3D(-40075016.678400 -40075016.508400,40075016.678400 40075016.848400)'::box3d, 4326) and intersects(the_geom_google, SetSRID('BOX3D(-40075016.678400 -40075016.508400,40075016.678400 40075016.848400)'::box3d, 4326)) LIMIT 50 If I change line 28 from def __init__(self, name, srid = 4326, fid = "ogc_fid", geometry = "the_geom", order = "", attribute_cols = '*', writable = True, **args): to def __init__(self, name, srid = 900913, fid = "ogc_fid", geometry = "the_geom", order = "", attribute_cols = '*', writable = True, **args): All works fine. So it seems like the parameter from the URL is not overwriting the initial value set here. Jennifer Jennifer Strahan GIS Specialist GreenInfo Network 116 New Montgomery St. Ste. 738 San Francisco, CA 94105 (415)979-0343x306 Jennifer Strahan wrote: > Hi Josh, > > Thanks for taking a look at this. Thanks also for the tip regarding > polygons vs. multipolygons and attribute_cols. > > I've updated to the latest trunk and installed simplejson (I just > extracted it to the root of my FeatureServer install. No other config > required, right?). I'm still having the same issue. I think the other > person who had this problem had misspelled sphericalMercator. I'm not > sure what's going on in my case. I should have mentioned before that > everything works fine if I'm not using the sphericalMercator layer. > > Anything else I should try? > > Thanks, > Jennifer > > > > Jennifer Strahan > GIS Specialist > GreenInfo Network > 116 New Montgomery St. Ste. 738 > San Francisco, CA 94105 > (415)979-0343x306 > > > > Josh Livni wrote: > >> At first glance I see a featureserver issue -- if you try the url that >> gets loaded initially (I just checked the firebug console), >> featureserver returns an error: >> http://69.59.158.11/featureserver/featureserver.cgi/parkinfo_google?format=json&maxfeatures=50&SERVICE=WFS&VERSION=1.0.0&REQUEST=GetFeature&SRS=EPSG%3A900913&BBOX=-40075016.6784,-40075016.50840001,40075016.6784,40075016.8484 >> >> >> >> I note if you remove the bbox parameter from the url featureserver >> works fine. >> >> I also note someone else had a similar problem the other day on the FS >> list, but I don't know what happened with that. I recall he also >> didn't have simplejson installed. Can you install that, and ensure >> you are using the latest featureserver trunk? >> >> -Josh >> >> PS - you may wish to use polygons instead of multipolygons, since >> featureserver does not support the latter (though I don't think this >> is the problem at hand here), and if using the latest version you can >> also put 'attribute_cols' in your config to limit the field results - >> for example you may not need your original the_geom column being >> returned... >> >> >> Jennifer Strahan wrote: >> >>> Hello, >>> >>> I'm having trouble overlaying a WFS layer on the Google Spherical >>> Mercator layers. For some reason, the BBox query fails. Not sure if >>> it's an issue with my data or with the BBOX values that are added to >>> the URL. >>> >>> Here's a link to my test code: http://69.59.158.11/TEST/wfs.html >>> The data is in a PostGIS database and I'm using FeatureServer. >>> Originally the SRID for the data I'm working with is 4326. >>> >>> In order to convert to 900913, I followed these steps: >>> >>> 1. Insert a reference to 900913 into spatial_ref_sys: >>> INSERT into spatial_ref_sys (srid, auth_name, auth_srid, proj4text, >>> srtext) values ( 900913, 'spatialreference.org', 900913, '+proj=merc >>> +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 >>> +units=m [EMAIL PROTECTED] +wktext +no_defs', >>> 'PROJCS["unnamed",GEOGCS["unnamed >>> ellipse",DATUM["unknown",SPHEROID["unnamed",6378137,0]],PRIMEM["Greenwich",0],UNIT["degree",0.0174532925199433]],PROJECTION["Mercator_2SP"],PARAMETER["standard_parallel_1",0],PARAMETER["central_meridian",0],PARAMETER["false_easting",0],PARAMETER["false_northing",0],UNIT["Meter",1],EXTENSION["PROJ4","+proj=merc >>> >>> +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 >>> +units=m [EMAIL PROTECTED] +wktext +no_defs"]]'); >>> >>> 2. Add a new geometry column to my table: >>> select >>> addGeometrycolumn('public','holdingsfeb08','the_geom_google',900913,'MULTIPOLYGON',2); >>> >>> >>> >>> 3. update holdingsfeb08 set the_geom_google = transform(the_geom, >>> 900913); >>> >>> My FeatureServer config looks like this: >>> [parkinfo_google] >>> type=PostGIS >>> dsn=dbname=parkinfo_review >>> layer=holdingsfeb08 >>> fid=gid >>> geometry=the_geom_google >>> >>> Anyone have any idea how I can get this working? >>> Thanks, >>> Jennifer >>> >>> >>> > > _______________________________________________ > Users mailing list > [email protected] > http://openlayers.org/mailman/listinfo/users > _______________________________________________ Users mailing list [email protected] http://openlayers.org/mailman/listinfo/users
