He mirado por la red y he buscado ejemplos, pero me parece que no puede encontrar una manera de hacer una capa WFS ser la capa interior. Me juego hasta la proyección de la manera correcta y me puse isBaseLayer: cierto . Cuando abro mi mapa está vacío. Sólo los controles están presentes y hay un mapa en blanco.
Podría ser que simplemente no es compatible (pero ya que existe la opción de establecer como isBaseLayer: es verdad, esto no tendría ningún sentido) ?!
Gracias por tu ayuda.
P. S.: lo único que he cambiado puede ser visto dentro del código.
EDITAR:
Aquí está mi código:
function myInit2(){
var geographic = new OpenLayers.Projection("EPSG:4326");
var mercator = new OpenLayers.Projection("EPSG:900913");
var world = new OpenLayers.Bounds(-180, -89, 180, 89).transform(
geographic, mercator
);
var deutschl = new OpenLayers.Bounds(5, 50, 15, 56).transform(
geographic, mercator
);
var dortmund= new OpenLayers.LonLat(7.46, 51.51).transform(
geographic, mercator
);
map = new OpenLayers.Map("map_location", {
maxExtent: new OpenLayers.Bounds(5, 50, 15, 56).transform(
geographic, mercator)
});
//var osm = new OpenLayers.Layer.OSM();
// this was the old baselayer
var baseL = new OpenLayers.Layer.WFS(
"Bundesländer",
"http://vs136213:8080/geoserver/wfs",
{typename: "BitmarckKarten:land_shp"},
{isBaseLayer: true, extractAttributes: true, styleMap: myStyleMapL}
);
//initialize the base layer here
//map.addLayers([osm]);
//old add of baselayer
map.addLayers([baseL]);
map.addControl(new OpenLayers.Control.LayerSwitcher());
// map.addControl(new OpenLayers.Control.Permalink());
map.addControl(new OpenLayers.Control.MousePosition());
map.addControl(new OpenLayers.Control.PanZoomBar());
map.addControl(new OpenLayers.Control.Navigation());
map.setCenter(dortmund, 6);
getDivInfos();
};