3

REST API で形状ファイルをアップロードしようとしています。これが私が得るエラーです: No such datastore: ws1,nete

バージョン 1.7.5 を restconfig-1.7.5.jar プラグインと一緒にインストールしました。

1) ワークスペース ws1 を作成します。

curl -u admin:geoserver -v -XPOST -H 'Content-type: text/xml' -d 'ws1'localhost:8080/geoserver/rest/workspaces

2) ワークスペースを確認する

curl -XGET -H 'Accept: text/xml' localhost:8080/geoserver/rest/workspaces/ws1

返信は大丈夫です

3) シェープファイルのアップロード

curl -u admin:geoserver -XPUT -H 'Content-type: application/zip' --data-binary @roads.z​​ip localhost:8080/geoserver/rest/workspaces/ws1/datastores/roads/file.shp

返事:

警告: ファイル "roads.z​​ip" からデータを読み取れませんでした。これにより、空の POST が作成されます。ファイルの解凍中にエラーが発生しました: zip を開く際にエラーが発生しました

助けが必要です!!!

4

1 に答える 1

3

私は今日同じ問題を自問し、最終的に解決しました。REST拡張機能を使用してGeoserver 2.0.2を実行しています。

次のcurlコマンドが機能しています:

curl -u admin:geoserver -v -XPUT -H 'Content-type: application/zip' --data-binary @/home/shape.zip http://localhost:8085/geoserver/rest/workspaces/ws/datastores/test1/file.shp

「.shp」の前の「ファイル」は任意ですので、お好きなものを使ってください。

「test1」は新しいデータストアの名前です。

「/home/shape.zip」は、圧縮された Shapefile へのパスです。注: シェープファイルは複数のファイルで構成されています! 紹介についてはウィキペディアを参照してください。Geoserver の圧縮された Shapefie には、少なくとも .shp、.dbf、.shx、.prj が含まれている必要があります。

Java で開発している場合は、Java クライアントを使用して、REST 経由で Geoserver を構成することをお勧めします。GSRCJは、Java 1.5+ で書かれた非常に小さな (2 クラス、依存関係ゼロ) クライアントです。これは完全な実装ではありませんが、シェープファイルを Geoserver にアップロードする方法などの作業コードがあります。こちらのコードを参照してください。

于 2010-10-29T00:18:13.070 に答える