Re: [OSGeoJapan-discuss] OSGeo4W のMapServer tutorialの例題17のWFS表示
Daisuke YOSHIDA
nro2dai @ gmail.com
2012年 4月 2日 (月) 09:49:57 EDT
奈良崎様
吉田です。
手元にテスト環境がないので、詳しく調べられませんが、
MapfileでENCODING "SHIFT_JIS"を指定し、
WMSではOKで、WFSでは文字化けしたというのは、
クライアントはQGISを使用したのでしょうか?
ちなみに、WMSでは属性情報までは対応していないと思うのですが、
また、ブラウザ上のGetFeatureリクエストでも文字化けを起こしますでしょうか?
2012年3月31日15:37 奈良崎 優 <mnara-260116 at kamakuranet.ne.jp>:
> 吉田様、皆様
> アドバイスありがとうございます。奈良崎です。
> OSGeo4Wでダウンロード出来るMapServerのWFSのチュートリアルですが、
> 例題16のMETADATAがあるMapfileは、次のURLのブラウザ入力をすると
> QGISのWFSで表示できましたが、METADATAが無い例題17のMapFileは表示できませんでした。
> http://localhost/cgi-bin/mapserver.exe?MAP=c:\OSGeo4W/apps/mapserver-tutorial/example16/example.map
> ただ、表示できた例題16の地名が文字化けします。
> WMSの時には、MapfileのENCODING "SHIFT_JIS"
> が効いたようですが、WFSではダメなようです。
> 地名が文字化けするのなら、例え、OpenLayerで表示できたとしても
> 使えないように思うのですが。MapServer最新版なら、WFSでも文字化けしないのでしょうか?
> あるいは、他の回避策があるのでしょうか?
> (OpenLayerの方は、進捗ありません。)
> QGISのMapserver Export Pluginで出来るMapfileを編集することにより、
> WMSは使い物になりそうなことが分かりましたので、ハンズオンで「QGISユーザーのためのMap_Web配信入門」
> とかやると受講する人はいないでしょうか?
> 以下は、例題16のMapfileです。
>
> MAP
> NAME "mapserver_tutorial_wfs_server"
> IMAGETYPE PNG
> EXTENT 139.72520 35.67139 139.78845 35.70731
> SIZE 550 450
>
> IMAGECOLOR 255 255 255
> SHAPEPATH "../data"
>
> FONTSET ../fonts/fonts.txt
>
> UNITS dd
>
> WEB
> TEMPLATE 'example_template.html'
> IMAGEPATH "C:\OSGeo4W/tmp/ms_tmp/"
> IMAGEURL "/ms_tmp/"
> MINSCALEDENOM 1000
> MAXSCALEDENOM 70000
> METADATA
> "wfs_title" "MapServer Tutorial WFS Server"
> "wfs_onlineresource"
> "http://127.0.0.1/cgi-bin/mapserv.exe?MAP=C:\OSGeo4W/apps/mapserver-tutorial/example16/example.map"
>
> "wfs_srs" "EPSG:4301 EPSG:4269 EPSG:4326"
> "wfs_abstract" "This demonstration server shows how to setup a
> MapServer .map file to serve data through the WFS standard."
> END
> END
>
> PROJECTION
> "init=epsg:4301"
> END
>
> LAYER
> NAME "roads"
> METADATA
> "wfs_title" "Roads"
> "wfs_srs" "EPSG:4301"
> "gml_include_items" "NAMAE,SYUBETSU"
> "gml_featureid" "ID"
> END
> DATA dourokukan
> STATUS ON
> TYPE LINE
> MAXSCALEDENOM 50000
> CLASS
> NAME "roads"
> STYLE
> COLOR 187 187 127
> END
> END
> PROJECTION
> "init=epsg:4301"
> END
> DUMP TRUE
> END
>
> LAYER
> NAME "administrative"
> METADATA
> "wfs_title" "Administrative"
> "wfs_srs" "EPSG:4301"
> "gml_include_items" "SYURUI"
> "gml_featureid" "ID"
> END
> DATA gyouseikai
> STATUS ON
> TYPE LINE
> CLASS
> NAME "Administrative"
> STYLE
> COLOR 227 127 227
> END
> END
> PROJECTION
> "init=epsg:4301"
> END
> DUMP TRUE
> END
>
> LAYER
> NAME "rail"
> METADATA
> "wfs_title" "Rail"
> "wfs_srs" "EPSG:4301"
> "gml_include_items" "NAMAE,SYUBETSU"
> "gml_featureid" "ID"
> END
> DATA tetsudokukan
> STATUS ON
> TYPE LINE
> CLASS
> NAME "Rail"
> STYLE
> COLOR 128 128 128
> END
> END
> PROJECTION
> "init=epsg:4301"
> END
> DUMP TRUE
> END
>
> LAYER
> NAME "rivers"
> METADATA
> "wfs_title" "Rivers"
> "wfs_srs" "EPSG:4301"
> "gml_include_items" "NAMAE,SYUBETSU"
> "gml_featureid" "ID"
> END
> DATA kasenkukan
> STATUS ON
> TYPE LINE
> CLASS
> NAME "Rivers"
> STYLE
> COLOR 0 255 255
> END
> END
> PROJECTION
> "init=epsg:4301"
> END
> DUMP TRUE
> END
>
> LAYER
> NAME "water"
> METADATA
> "wfs_title" "Water"
> "wfs_srs" "EPSG:4301"
> "gml_include_items" "SYURUI"
> "gml_featureid" "ID"
> END
> DATA suiikikai
> STATUS ON
> TYPE LINE
> CLASS
> NAME "Water"
> STYLE
> COLOR 0 0 255
> END
> END
> PROJECTION
> "init=epsg:4301"
> END
> DUMP TRUE
> END
>
> LAYER
> NAME "places"
> METADATA
> "wfs_title" "Place name"
> "wfs_srs" "EPSG:4301"
> "gml_include_items" "NAMAE,SYURUI"
> "gml_featureid" "ID"
> END
> DATA chimei
> STATUS ON
> TYPE POINT
> LABELITEM "NAMAE"
> CLASS
> NAME "Places"
> STYLE
> COLOR 10 100 100
> END
> LABEL
> TYPE TRUETYPE
> FONT pgothic
> COLOR 220 20 20
> SIZE 7
> POSITION CL
> PARTIALS FALSE
> BUFFER 5
> ENCODING "SHIFT_JIS"
> END
> END
> PROJECTION
> "init=epsg:4301"
> END
> DUMP TRUE
> END
>
> END
>
>
>
>
> ----- Original Message ----- From: "Daisuke YOSHIDA" <nro2dai at gmail.com>
> To: <osgeojapan-discuss at lists.osgeo.org>
> Sent: Friday, March 30, 2012 11:21 PM
>
> Subject: Re: [OSGeoJapan-discuss] OSGeo4W のMapServer tutorialの例題17のWFS表示
>
>
>> 楢崎様
>>
>> ブラウザでGetFeatureリクエストを試してみてはどうでしょうか?
>> もしくは、QGISのWFSクライアント機能で試してみて下さい。
>>
>> OpenLayersのコードですが、
>>
>> {layers: 'mapserver_tutorial_wfs_client' のところ、
>> 'mapserver_tutorial_wfs_client' から 'Roads' に変更してみたらどうでしょうか?
>>
>> あと、Mapfileのパスが、OpenLayersでのパスと微妙に違うのが気になりました。
>> "wfs_onlineresource"
>>
>> "http://127.0.0.1/cgi-bin/mapserv.exe?MAP=C:\OSGeo4W/apps/mapserver-tutorial/example16.map"
>>
>>
>>
>>
>> 2012年3月30日14:03 奈良崎 優 <mnara-260116 at kamakuranet.ne.jp>:
>>>
>>> 皆様
>>> いつもお世話になっております。奈良崎です。
>>> OSGeo4W のMapServer tutorialの例題17(帝塚山大学さんのMapServerのTutorialではなく、
>>> その後のOSGeo4W でダウンロードできるTutorialです。)
>>> は動きましたのでWFSサーバはOKとして、
>>> これをOpenlayersで表示できないかと考えました。すなわち、WMSでは例題12のWMSサーバを
>>> 例題14のOpenLayerで表示しているので、このWFS版を作ろうとしました。
>>> しかし、OpenlayerのHTMLを起動したのですが、
>>> 何も表示されません。HTMLのエラーを指摘いただけないでしょうか?
>>> HTMLファイルの変更点は、
>>> new OpenLayers.Layer.WMSのWMS−−>Vector
>>> にしただけです。
>>> 以下に、mapfileとhtmlファイルを示します。
>>> よろしくお願いします。
>>> (1)MAPファイル(例題17でcontinents Layer を削除しただけ)
>>> MAP
>>> NAME "mapserver_tutorial_wfs_client"
>>> IMAGETYPE PNG
>>> EXTENT 139.562947 35.524705 139.917821 35.817635
>>> SIZE 550 450
>>>
>>> IMAGECOLOR 255 255 255
>>> SHAPEPATH "../data"
>>>
>>> FONTSET ../fonts/fonts.txt
>>>
>>> UNITS dd
>>>
>>> WEB
>>> TEMPLATE 'example_template.html'
>>> IMAGEPATH "C:\OSGeo4W/tmp/ms_tmp/"
>>> IMAGEURL "/ms_tmp/"
>>> END
>>>
>>> PROJECTION
>>> "init=epsg:4301"
>>> END
>>>
>>>
>>> LAYER
>>> NAME "roads"
>>> DATA dourokukan
>>> STATUS OFF
>>> TYPE LINE
>>> MAXSCALEDENOM 50000
>>> CLASS
>>> NAME "roads"
>>> STYLE
>>> COLOR 187 187 127
>>> END
>>> END
>>> END
>>>
>>> LAYER
>>> NAME "administrative"
>>> DATA gyouseikai
>>> STATUS OFF
>>> TYPE LINE
>>> CLASS
>>> NAME "Administrative"
>>> STYLE
>>> COLOR 227 127 227
>>> END
>>> END
>>> END
>>>
>>> LAYER
>>> NAME "rail"
>>> DATA tetsudokukan
>>> STATUS OFF
>>> TYPE LINE
>>> CLASS
>>> NAME "Rail"
>>> STYLE
>>> COLOR 128 128 128
>>> END
>>> END
>>> END
>>>
>>> LAYER
>>> NAME "rivers"
>>> DATA kasenkukan
>>> STATUS OFF
>>> TYPE LINE
>>> CLASS
>>> NAME "Rivers"
>>> STYLE
>>> COLOR 0 255 255
>>> END
>>> END
>>> END
>>>
>>> LAYER
>>> NAME "water"
>>> DATA suiikikai
>>> STATUS OFF
>>> TYPE LINE
>>> CLASS
>>> NAME "water"
>>> STYLE
>>> COLOR 0 0 255
>>> END
>>> END
>>> END
>>>
>>> END
>>> (2)HTMLファイル
>>> <html xmlns="http://www.w3.org/1999/xhtml">
>>> <head>
>>> <meta http-equiv="Content-Type" content="text/html;
>>> charset=ISO-8859-1"/>
>>> <link rel="stylesheet" href="style.css" type="text/css" />
>>> <style type="text/css">
>>> #map {
>>> width: 800px;
>>> height: 500px;
>>> border: 1px solid black;
>>> }
>>> </style>
>>> <script src="OpenLayers.js"></script>
>>> <script type="text/javascript">
>>> var lon = 139.7245;
>>> var lat = 35.6816;
>>> var zoom = 11;
>>> var map, layer;
>>>
>>> function init(){
>>> map = new OpenLayers.Map( 'map' );
>>>
>>>
>>> localWMS = new OpenLayers.Layer.Vector( "Local WFS layers",
>>>
>>>
>>> "http://127.0.0.1/cgi-bin/mapserv.exe?MAP=C:/OSGeo4W/apps/mapserver-tutorial/example17/example.map",
>>> {layers: 'mapserver_tutorial_wfs_client', transparent: true},
>>> {isBaseLayer: true} );
>>> map.addLayer(localWMS);
>>>
>>> map.setCenter(new OpenLayers.LonLat(lon, lat), zoom);
>>> map.addControl( new OpenLayers.Control.LayerSwitcher() );
>>> }
>>> </script>
>>> </head>
>>> <body onload="init()">
>>> <h1 id="title">OpenLayers Example</h1>
>>>
>>> <div id="tags">
>>> </div>
>>> <p id="shortdesc">
>>> Shows the basic use of OpenLayers with our local WMS layers and a
>>> GeoGrid WMS layer.
>>> </p>
>>>
>>> <div id="map" class="smallmap"></div>
>>>
>>> <div id="docs">
>>> OpenLayers is a JavaScript file (OpenLayers.js) that can be easily
>>> included in any HTML file.<br>Click on the source
>>> below to see the few lines required to add these 2 WMS servers
>>> into
>>> the map.<br>
>>> <br>
>>> <hr noshade width="40%" size="1" align="left">
>>> <a href="/mapserver-tutorial/example14/openlayers_source.html">-
>>> (source) -</a>
>>> <a href="/mapserver-tutorial/index.html">- (back) -</a>
>>> </div>
>>> </body>
>>> </html>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> OSGeoJapan-discuss mailing list
>>> OSGeoJapan-discuss at lists.osgeo.org
>>> http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss
>>>
>>
>
>
> --------------------------------------------------------------------------------
>
>
>
>> _______________________________________________
>> OSGeoJapan-discuss mailing list
>> OSGeoJapan-discuss at lists.osgeo.org
>> http://lists.osgeo.org/mailman/listinfo/osgeojapan-discuss
>>
>
OSGeoJapan-discuss メーリングリストの案内