マップ背景の設定方法については、こちらの記事を参照してください。本記事では、OGC WMSの設定方法について紹介します。
今回使用しているデータは、地質調査総合センターの以下のページで紹介されているものです。
basic versionをクリックすると、WMSサービスのgetCapabilitiesの応答が表示されます。
今回表示しているマップ背景は、以下のように設定しています。
名前:Seamless Digital Geological Map of Japan
タイプ:OGC WMS
WMS URL:https://gbank.gsj.jp/ows/seamlessgeology200k_b_en?version=1.3.0&service=WMS&styles=default&sld_version=1.1.0&layers=line,label,area&CRS=EPSG:3857
こうして作成したマップ背景を、マップの背景として設定しています。今回のマップの設定では、初期位置およびズームとして、タイプを静的値、経度は139.839478、緯度は35.652832、ズーム・レベルを6として、東京の周辺を最初に表示するようにしました。
地質調査総合センターが提供しているWMSのURLに与えるパラメータを調べた方法を説明します。
最初にWMS URLのオンライン・ヘルプを参照します。
BBOX、WIDTH、HEIGHT、REQUEST、FORMAT、SRS / CRSのパラメータは、Oracle APEXから与えられるため、WMS URLには含めません。
先ほどのパラメータよりCRS=EPSG:3857を除いて、マップを表示させてみます。
マップ背景は表示されず、JavaScriptコンソールにエラーが記録されています。
JavaScriptコンソールよりネットワークを開きます。WMSのリクエストはブラウザで動作しているMapLibreのJavaScriptコンポーネントが発行しています。
WMSのリクエストのどれかのリンクのアドレスをコピーします。
オンライン・ヘルプではCRS / SRSはAPEXが与えるとなっていますが、実際にはSRSだけが与えられています。SRSがあればCRSを必須としないWMSのサービスが一般的なのかもしれませんが、地質調査総合センターのWMSはそうなっていないようです。
WMS server error. Missing required parameter CRS
WMS server error. Missing required parameter CRS
大体のケースで、version、service、layersはマップ背景のWMS URLに含める必要があります。これらのパラメータに指定する値は、getCapabilitiesの応答から見つけることができます。
今回のケースに限りかもしれませんが、Oracle APEXがWMSのリクエストを発行する際にsrs=EPSG:3857を付加していました。そのため、必須パラメータだと言われたCRSとしても同じEPSG:3857を指定する必要がありました。
また、WMSのリクエストを受け付けるサーバー側が特別なHTTPヘッダーを要求している場合もあります。そのようなHTTPヘッダーがあれば、HTTPヘッダーの項目に設定します。
WMSのサービスによっては、Access-Control-Allow-Originヘッダーとしてno-corsを指定するよう指示しているサービスもありました。
属性には、マップ背景のコピーライト情報を記載します。
Oracle APEXのマップ背景としてOGC WMSのサービスを使用する方法について紹介しました。
Oracle APEXのアプリケーション作成の参考になれば幸いです。
完