1

私のターゲット:Openlayers + geoserver + POSTGISを使用して、

  1. グーグルマップを表示します。
  2. ジオサーバーからブラウザーのユーザーへのDsplayレイヤー、
  3. ユーザーがレイヤーの機能を編集できるようにし、
  4. エンドユーザーによってPOSTGISデータベースに新しく追加された機能を永続化する

私のステータス :

  1. グーグルマップを表示できました。
  2. postgisシェープファイルインポート/エクスポートマネージャーを使用して、SHAPEFILES(.shp)をPOSTGISDBにロードしました
  3. GEOSERVERADMINCONSOLEにワークスペースを追加しました。
  4. GEOSERVERADMINCONSOLEにDATASOURCEを追加しました。

私の問題 :

  1. ブラウザでレイヤーを表示できません。
  2. EDITLAYERSCREENの[FeatureTypeDetails]の下にTYPEGEOMETRYが見つかりません。

参考文献

単純なHTMLページのWFSコード:

var wfs = new OpenLayers.Layer.Vector("USACITIES",
{
    strategies: [new OpenLayers.Strategy.Fixed()],
    projection: new OpenLayers.Projection("EPSG:4326"),
    protocol: new OpenLayers.Protocol.WFS({
        version: "1.1.0",
        url: "http://localhost:8080/geoserver/wfs",
        featurePrefix: 'usa', //geoserver worspace name
        featureType: "usa:states", //geoserver Layer Name
        featureNS: "http://usa.opengeo.org", // Edit Workspace Namespace URI
        geometryName: "the_geom" // field in Feature Type details with type "Geometry"
    })
});
map.addLayer(wfs);
4

1 に答える 1

0

私はあなたのコードに間違いがあると思います:

featureType: "usa:states", //geoserver Layer Name

私はこれがすべきだと思います

featureType: "states", //geoserver Layer Name

プレフィックスはすでにfeatureNSで定義されているため

Geoserverの「機能タイプの詳細」について:テーブルに「the_geom」または「geom」列があるかどうか、およびそのタイプがジオメトリであるかどうかをPostgresで確認してください。

于 2013-01-15T09:16:23.397 に答える