[Geoserver-users] Does Cascaded WMS interpret between WMS versions?

Hi,

I am getting different results with my GeoServer 2.7.1. My test layer is the same one that cascades ne_10m_popolated_places from demo.opengeo.org/geoserver

Requests to my server:

http://localhost:8080/geoserver/cite/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&FORMAT=image%2Fpng&TRANSPARENT=true&STYLES&LAYERS=cite%3Ane_10m_populated_places&SRS=EPSG%3A4326&WIDTH=768&HEIGHT=368&BBOX=-16,-11,17,4

http://localhost:8080/geoserver/cite/wms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image%2Fpng&TRANSPARENT=true&STYLES&LAYERS=cite%3Ane_10m_populated_places&CRS=EPSG%3A4326&WIDTH=768&HEIGHT=368&BBOX=-11,-16,4,17

For me the request that is sent to demo.opengeo.org is correct in both cases:

DEBUG [data.ows] - Executed request to URL: http://demo.opengeo.org:80/geoserver/ows?SERVICE=WMS&LAYERS=ne%3Ane_10m_populated_places&CRS=EPSG:4326&FORMAT=image%2Fpng&HEIGHT=368&TRANSPARENT=TRUE&REQUEST=GetMap&WIDTH=768&BBOX=-11.0,-6.0,4.0,17.0&STYLES=&VERSION=1.3.0

What to do next:

  1. If you did not do it already, forget GeoWebCache and test only Geoserver.

  2. Repeat my test with demo.opengeo.org with your computer and check if it is good

a. no good → we must have difference in our GeoServer versions, update into 2.7.1 which work well for me

b. also good for you → fault is not in GeoServer, study GWC

  1. Add GeoWebCache back and study the requests
  • no good → prepare a bug report for GWC

  • still good → odd, both GeoServer and GWC seems to be OK; only thing that differs is the WMS source

  1. Find or set up WMW service that is producing error for you, share the link so others can test it too.

-Jukka Rahkonen-

Lähettäjä: Joel Harris [mailto:jdharri@…84…]
Lähetetty: 13. elokuuta 2015 23:23
Vastaanottaja: Rahkonen Jukka (MML)
Kopio: geoserver-users@lists.sourceforge.net
Aihe: Re: [Geoserver-users] Does Cascaded WMS interpret between WMS versions?

···

Thank you for the help. As you show it does make the version change which is great, but the translation between the versions differs.

example:

Just for more information: Geoserver computed the bounding box for the remote layer as [-180,-90,180,83.623596] though the getcapabilities request shows a slightly different extent (not sure if that effects this issue).

I make a request to geoserver in WMS 1.3.0 format EPSG:4326 for bounding box [-90,45,-45,90]. geoserver cascades this request to the remote server with a bounding box of [-91.7578125,43.2421875,-43.2421875,91.7578125]

I make a request to geoserver in WMS 1.1.1 format EPSG:4326 for bounding box [45,-90,90,-45]. geoserver cascades this request to the remote server with a bounding box of [-90.0,45.0,-45.0,90.0]

Theoretically these should be the exact same tile for either request, but the results are drastically different. In the case of the initial request made in v1.1.1 through geoserver, a plain white tile is returned, and the v1.3.0 request returns a tile of South America as expected.

Thanks,

Joel

On Thu, Aug 13, 2015 at 10:40 AM, Rahkonen Jukka (MML) <jukka.rahkonen@…6847…> wrote:

Hi,

You can test it rather easily by yourself.

  1. Make a new WMS store by using URL http://demo.opengeo.org/geoserver/wms?service=wms&version=1.3.0&request=getcapabilities

  2. Publish some layer from the service

  3. Set the logging level of your Geoserver into Verbose logging

  4. Browse you new cascaded layer with the layer preview

  5. Look at the logs

I can see from my logs that the layer preview application sends WMS 1.1.0 requests to my local Geoserver and it is forwarding the requests as

2015-08-13 17:21:40,544 DEBUG [data.ows] - Executed request to URL: http://demo.opengeo.org:80/geoserver/ows?SERVICE=WMS&LAYERS=ne%3Ane_10m_populated_places&CRS=EPSG:4326&FORMAT=image%2Fpng&HEIGHT=368&TRANSPARENT=TRUE&REQUEST=GetMap&WIDTH=768&BBOX=-11.83572284049336,-16.978337647899394,4.336152159506639,16.771662352100606&STYLES=&VERSION=1.3.0

The answer to your question is Yes.

I made my test with Geoserver 2.7.1.

-Jukka Rahkonen-

Joel Harris wrote:

Hello list,

I’m cascading a remote WMS as you may have guessed and the service I’m cascading supports WMS 1.3.0. I’m trying to utilize a stand alone Geowebcache (GWC) instance to cache the service cascaded by the Geoserver but GWC only supports WMS 1.1.1. I expected geoserver to make the translation of the request between 1.1.1 to 1.3.0, but it doesn’t seem to accomplish this.

Is cascaded WMS supposed to support the interpretation between WMS versions?

trying this on Geoserver 2.5 and 2.7.1 with geowebcache 1.6 and 1.7.1 both stand-alone.

I’m running these instances on Glassfish 4.0, with java 1.7u71.

Thanks,

Joel