Skip to main content

Problem seeding Mapserver's mapcacheMapServer's MapCache from an ArcGIS WMS source

I have an ArcGIS Server acting as a WMS service for some data that I cannot serve any other way. The rest of our system uses either MapserverMapServer or MapcacheMapCache (from the MS4W distribution) to serve our data via WMS and WFS.

This all works fine, but the system needs to be run as part of an experiment on a closed network. To reduce complexity for the experiment, I want to create a tile cache of the ArcGIS WMS service and only run MapserverMapServer and MapcacheMapCache on that closed network.

I added sources to my mapcacheMapCache file that point to the ArcGIS server's WMS layers, and I can use QGIS or our internal software to use the ArcGIS layers through mapcacheMapCache no problem. I see the data in the software, and I can see the tiles as they are populated in the cache.

The problem comes when I try to run the seeder against the ArcGIS layers in the mapcacheMapCache file. They all fail and the error message spits out HTML that looks like the internal web management console that comes with ArcGIS Server.

An example source from my mapcacheMapCache file:

<source name="mcs_seabed" type="wms">
    <http>
        <url>http://myhost:6080/arcgis/rest/services/SampleWorldCities/MapServer/exts/MaritimeChartService/WMSServer</url>
    </http>
    <getmap>
        <params>
            <FORMAT>image/png</FORMAT>
            <LAYERS>3</LAYERS>
        </params>
    </getmap>
</source>

If I just type the URL above into a browser I get back the GetCapabilities response.

The tile set looks like this:

<tileset name="SEABED">
     <source>mcs_seabed</source>
     <cache>disk</cache>
     <grid>GoogleMapsCompatible</grid>
</tileset>

I'm calling the seeder like this:

mapcache_seed.exe --config C:\ms4w\apps\mapcache\mapcache.xml --extent -20037508.3427892480,-20037508.3427892480,20037508.3427892480,20037508.3427892480 --grid GoogleMapsCompatible --nthreads 1 --tileset SEABED

I think there is a problem with how the seeder is assembling the WMS requests it uses since it works fine if I just point QGIS or our OpenLayers based client at the WMS service of MapcacheMapCache.

Anything obvious I'm missing here?

Problem seeding Mapserver's mapcache from an ArcGIS WMS source

I have an ArcGIS Server acting as a WMS service for some data that I cannot serve any other way. The rest of our system uses either Mapserver or Mapcache (from the MS4W distribution) to serve our data via WMS and WFS.

This all works fine, but the system needs to be run as part of an experiment on a closed network. To reduce complexity for the experiment, I want to create a tile cache of the ArcGIS WMS service and only run Mapserver and Mapcache on that closed network.

I added sources to my mapcache file that point to the ArcGIS server's WMS layers, and I can use QGIS or our internal software to use the ArcGIS layers through mapcache no problem. I see the data in the software, and I can see the tiles as they are populated in the cache.

The problem comes when I try to run the seeder against the ArcGIS layers in the mapcache file. They all fail and the error message spits out HTML that looks like the internal web management console that comes with ArcGIS Server.

An example source from my mapcache file:

<source name="mcs_seabed" type="wms">
    <http>
        <url>http://myhost:6080/arcgis/rest/services/SampleWorldCities/MapServer/exts/MaritimeChartService/WMSServer</url>
    </http>
    <getmap>
        <params>
            <FORMAT>image/png</FORMAT>
            <LAYERS>3</LAYERS>
        </params>
    </getmap>
</source>

If I just type the URL above into a browser I get back the GetCapabilities response.

The tile set looks like this:

<tileset name="SEABED">
     <source>mcs_seabed</source>
     <cache>disk</cache>
     <grid>GoogleMapsCompatible</grid>
</tileset>

I'm calling the seeder like this:

mapcache_seed.exe --config C:\ms4w\apps\mapcache\mapcache.xml --extent -20037508.3427892480,-20037508.3427892480,20037508.3427892480,20037508.3427892480 --grid GoogleMapsCompatible --nthreads 1 --tileset SEABED

I think there is a problem with how the seeder is assembling the WMS requests it uses since it works fine if I just point QGIS or our OpenLayers based client at the WMS service of Mapcache.

Anything obvious I'm missing here?

Problem seeding MapServer's MapCache from an ArcGIS WMS source

I have an ArcGIS Server acting as a WMS service for some data that I cannot serve any other way. The rest of our system uses either MapServer or MapCache (from the MS4W distribution) to serve our data via WMS and WFS.

This all works fine, but the system needs to be run as part of an experiment on a closed network. To reduce complexity for the experiment, I want to create a tile cache of the ArcGIS WMS service and only run MapServer and MapCache on that closed network.

I added sources to my MapCache file that point to the ArcGIS server's WMS layers, and I can use QGIS or our internal software to use the ArcGIS layers through MapCache no problem. I see the data in the software, and I can see the tiles as they are populated in the cache.

The problem comes when I try to run the seeder against the ArcGIS layers in the MapCache file. They all fail and the error message spits out HTML that looks like the internal web management console that comes with ArcGIS Server.

An example source from my MapCache file:

<source name="mcs_seabed" type="wms">
    <http>
        <url>http://myhost:6080/arcgis/rest/services/SampleWorldCities/MapServer/exts/MaritimeChartService/WMSServer</url>
    </http>
    <getmap>
        <params>
            <FORMAT>image/png</FORMAT>
            <LAYERS>3</LAYERS>
        </params>
    </getmap>
</source>

If I just type the URL above into a browser I get back the GetCapabilities response.

The tile set looks like this:

<tileset name="SEABED">
     <source>mcs_seabed</source>
     <cache>disk</cache>
     <grid>GoogleMapsCompatible</grid>
</tileset>

I'm calling the seeder like this:

mapcache_seed.exe --config C:\ms4w\apps\mapcache\mapcache.xml --extent -20037508.3427892480,-20037508.3427892480,20037508.3427892480,20037508.3427892480 --grid GoogleMapsCompatible --nthreads 1 --tileset SEABED

I think there is a problem with how the seeder is assembling the WMS requests it uses since it works fine if I just point QGIS or our OpenLayers based client at the WMS service of MapCache.

Anything obvious I'm missing here?

Source Link

Problem seeding Mapserver's mapcache from an ArcGIS WMS source

I have an ArcGIS Server acting as a WMS service for some data that I cannot serve any other way. The rest of our system uses either Mapserver or Mapcache (from the MS4W distribution) to serve our data via WMS and WFS.

This all works fine, but the system needs to be run as part of an experiment on a closed network. To reduce complexity for the experiment, I want to create a tile cache of the ArcGIS WMS service and only run Mapserver and Mapcache on that closed network.

I added sources to my mapcache file that point to the ArcGIS server's WMS layers, and I can use QGIS or our internal software to use the ArcGIS layers through mapcache no problem. I see the data in the software, and I can see the tiles as they are populated in the cache.

The problem comes when I try to run the seeder against the ArcGIS layers in the mapcache file. They all fail and the error message spits out HTML that looks like the internal web management console that comes with ArcGIS Server.

An example source from my mapcache file:

<source name="mcs_seabed" type="wms">
    <http>
        <url>http://myhost:6080/arcgis/rest/services/SampleWorldCities/MapServer/exts/MaritimeChartService/WMSServer</url>
    </http>
    <getmap>
        <params>
            <FORMAT>image/png</FORMAT>
            <LAYERS>3</LAYERS>
        </params>
    </getmap>
</source>

If I just type the URL above into a browser I get back the GetCapabilities response.

The tile set looks like this:

<tileset name="SEABED">
     <source>mcs_seabed</source>
     <cache>disk</cache>
     <grid>GoogleMapsCompatible</grid>
</tileset>

I'm calling the seeder like this:

mapcache_seed.exe --config C:\ms4w\apps\mapcache\mapcache.xml --extent -20037508.3427892480,-20037508.3427892480,20037508.3427892480,20037508.3427892480 --grid GoogleMapsCompatible --nthreads 1 --tileset SEABED

I think there is a problem with how the seeder is assembling the WMS requests it uses since it works fine if I just point QGIS or our OpenLayers based client at the WMS service of Mapcache.

Anything obvious I'm missing here?