Estoy tratando de agregar uno de los conjuntos de datos con GeoServer a un OpenLayers mapa. Yo he seguido los OpenGeo tutoriales, visto similares hilo por aquí, pero me parece que no puede descifrarlo. Puede alguien echar un vistazo a mi código y la instalación de GeoServer y me dicen donde voy mal?
Aquí está mi código:
//WMS map
world = new OpenLayers.Layer.WMS("Global Imagery", "http://maps.opengeo.org/geowebcache/service/wms", {
layers : "openstreetmap",
format : "image/png"
});
map.addLayer(world);
//WFS
parks = new OpenLayers.Layer.Vector("WFS", {
strategies : [new OpenLayers.Strategy.BBOX()],
protocol : new OpenLayers.Protocol.WFS({
url : "http://localhost:8081/geoserver/wfs",
featureType : "medford:parks",
featureNS : "http://medford.opengeo.org/medford"
})
});
map.addLayer(parks);
map.zoomToMaxExtent();
GeoServer detalles: nombre del espacio de trabajo = medford, URI de espacio de Nombres = http://medford.opengeo.org Para el tipo de característica que me han tratado de "parques" y "medford:parques"
La capa está habilitado, anuncia y tiene un 30 característica de límite de retorno.
Yo estoy luchando para poner un simple mapa.
Solución Actualizada. Ahora Trabajar.
wfs = new OpenLayers.Layer.Vector("Fields_WFS", {
strategies : [new OpenLayers.Strategy.Fixed()],
protocol : new OpenLayers.Protocol.WFS({
version : "1.1.0",
url : GEOSERVER_HOST + ":" + GEOSERVER_PORT + "/geoserver/wfs",
featurePrefix : "rpid",
featureType : "FIELDS_SUBSET_BNG_OSGB36_1",
featureNS : "<namespace>",
//geometryName : "GEOM", type "Geometry"
srsName : "EPSG:27700"
}),
renderers : renderer
})
No es necesario especificar el Nombre de la geometría en la Capa de definición. Desde Nativo SRS fue nulo en nuestra base de datos, si seguimos geometryName de lo que se lleva por defecto, pero sin ella, se utiliza la proyección de mapa(27700 - en nuestro caso).