|
|
@@ -60,7 +60,8 @@ class OWS:
|
|
|
self.parsedUrl = urlparse.urlparse(self.url)
|
|
|
if self.service == "WFS":
|
|
|
from owslib.wfs import WebFeatureService
|
|
|
- self.capabilities = WebFeatureService(url=self.url)
|
|
|
+ self.capabilities = WebFeatureService(url=self.url,version="1.1.0")
|
|
|
+ logging.debug("OWS Capabilities: %s",self.capabilities)
|
|
|
elif self.service == "WCS":
|
|
|
from owslib.wcs import WebCoverageService
|
|
|
self.capabilities = WebCoverageService(url=self.url,version="1.0.0")
|
|
|
@@ -133,6 +134,10 @@ class OWS:
|
|
|
if request.getValueByName("fes"):
|
|
|
self.setFilter(mapobj,request)
|
|
|
|
|
|
+ # mapobj.getLayerByName(request.getValueByName("layers")).metadata.get("wfs_filter")
|
|
|
+ # here is still fine
|
|
|
+
|
|
|
+ # but it fails here:
|
|
|
mapobj.OWSDispatch(request)
|
|
|
|
|
|
def getMapObj(self,mapfilename=None):
|
|
|
@@ -236,7 +241,12 @@ class OWS:
|
|
|
|
|
|
dest = osr.SpatialReference()
|
|
|
if crs:
|
|
|
- dest.ImportFromEPSG(int(crs.split(":")[1]))
|
|
|
+ try:
|
|
|
+ crsSplit = crs.split(":")
|
|
|
+ epsg = int(crsSplit[len(crsSplit)-1])
|
|
|
+ dest.ImportFromEPSG(epsg)
|
|
|
+ except (ValueError):
|
|
|
+ logging.debug("Unable to parse crs '%s'" % crs)
|
|
|
else:
|
|
|
dest.ImportFromWkt(wkt)
|
|
|
source = osr.SpatialReference()
|
|
|
@@ -266,6 +276,8 @@ class OWS:
|
|
|
logging.debug("Setting filter for layer %s to %s" % (request.getValueByName("layers"),request.getValueByName("fes")))
|
|
|
layerobj = mapobj.getLayerByName(request.getValueByName("layers"))
|
|
|
layerobj.setMetaData("wfs_filter",request.getValueByName("fes"))
|
|
|
+ # layerobj.metadata.get("wfs_filter") is still fine
|
|
|
+
|
|
|
|
|
|
def getService():
|
|
|
|