使用 Openlayers 的 WFS 请求中出现奇怪的错误
Strange error in WFS request with Openlayers
我已经使用 OpenLayers 库编写了一个脚本来从 Geoserver 获取一些图层并将它们显示在地图上。我同时使用 WMS 和 WFS 图层。
windows OS 在我的本地主机 (MAMP) 中一切正常。
现在我必须在 UBUNTU 12.10 系统中迁移。虽然我正确获取了WMS,但我无法获取WFS。
我使用了 firebug,这是 POST 请求:
<wfs:GetFeature xmlns:wfs="http://www.opengis.net/wfs" service="WFS" version="1.1.0" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<wfs:Query typeName="rural:foc_network" srsName="EPSG:4326" xmlns:rural="http://www.opengeospatial.net/rural">
<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
<ogc:BBOX>
<gml:Envelope xmlns:gml="http://www.opengis.net/gml" srsName="EPSG:4326">
<gml:lowerCorner>21.831815896484 37.948519811767</gml:lowerCorner>
<gml:upperCorner>22.346800027344 38.120181188719</gml:upperCorner>
</gml:Envelope>
</ogc:BBOX>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
这是 POST 响应(实际上是我的 cgi 文件的内容:
#!/usr/bin/env python
"""This is a blind proxy that we use to get around browser
restrictions that prevent the Javascript from loading pages not on the
same server as the Javascript. This has several problems: it's less
efficient, it might break some sites, and it's a security risk because
people can use this proxy to browse the web and p
在 firegu 的 XML 标签中我得到这个错误:
XML Parsing Error: not well-formed Location: moz-nullprincipal:{79ed7c81-0daf-4525-a315-808f0894befd} Line Number 1, Column 2:
#!/usr/bin/env python
你知道这里出了什么问题吗?是不是路径:#!/usr/bin/env python 设置错了?或者还有什么问题?
这是我的 WFS 请求:
wfs_layer_komvoi = new OpenLayers.Layer.Vector("Κόμβοι", {
strategies: [new OpenLayers.Strategy.BBOX()],
protocol: new OpenLayers.Protocol.WFS({
version: "1.1.0",
url: "http://localhost:8080/geoserver/wfs",
featurePrefix: "rural", //workspace from geoserver
featureType: "komvoi_real", //layer name from geoserver
featureNS : "http://www.opengeospatial.net/rural", //namespace from geoserver
styles: "point"
})
})
谢谢
D.
看来是网络的问题。是否有来自地理服务器和您的应用程序的代理?
您是否尝试过使用地理服务器界面来显示您的 WFS 文件而不是您的应用程序?
我已经使用 OpenLayers 库编写了一个脚本来从 Geoserver 获取一些图层并将它们显示在地图上。我同时使用 WMS 和 WFS 图层。 windows OS 在我的本地主机 (MAMP) 中一切正常。 现在我必须在 UBUNTU 12.10 系统中迁移。虽然我正确获取了WMS,但我无法获取WFS。
我使用了 firebug,这是 POST 请求:
<wfs:GetFeature xmlns:wfs="http://www.opengis.net/wfs" service="WFS" version="1.1.0" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.1.0/wfs.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<wfs:Query typeName="rural:foc_network" srsName="EPSG:4326" xmlns:rural="http://www.opengeospatial.net/rural">
<ogc:Filter xmlns:ogc="http://www.opengis.net/ogc">
<ogc:BBOX>
<gml:Envelope xmlns:gml="http://www.opengis.net/gml" srsName="EPSG:4326">
<gml:lowerCorner>21.831815896484 37.948519811767</gml:lowerCorner>
<gml:upperCorner>22.346800027344 38.120181188719</gml:upperCorner>
</gml:Envelope>
</ogc:BBOX>
</ogc:Filter>
</wfs:Query>
</wfs:GetFeature>
这是 POST 响应(实际上是我的 cgi 文件的内容:
#!/usr/bin/env python
"""This is a blind proxy that we use to get around browser
restrictions that prevent the Javascript from loading pages not on the
same server as the Javascript. This has several problems: it's less
efficient, it might break some sites, and it's a security risk because
people can use this proxy to browse the web and p
在 firegu 的 XML 标签中我得到这个错误:
XML Parsing Error: not well-formed Location: moz-nullprincipal:{79ed7c81-0daf-4525-a315-808f0894befd} Line Number 1, Column 2:
#!/usr/bin/env python
你知道这里出了什么问题吗?是不是路径:#!/usr/bin/env python 设置错了?或者还有什么问题?
这是我的 WFS 请求:
wfs_layer_komvoi = new OpenLayers.Layer.Vector("Κόμβοι", {
strategies: [new OpenLayers.Strategy.BBOX()],
protocol: new OpenLayers.Protocol.WFS({
version: "1.1.0",
url: "http://localhost:8080/geoserver/wfs",
featurePrefix: "rural", //workspace from geoserver
featureType: "komvoi_real", //layer name from geoserver
featureNS : "http://www.opengeospatial.net/rural", //namespace from geoserver
styles: "point"
})
})
谢谢 D.
看来是网络的问题。是否有来自地理服务器和您的应用程序的代理? 您是否尝试过使用地理服务器界面来显示您的 WFS 文件而不是您的应用程序?