1

Ok guys, here we go ! For my needs, I basically added a standalone version of GeoWebCache. After some configuration, the GeoWebCache retrieve the data from GeoServer using Capabilities.

Now, in my OpenLayers code, I would like to question GeoWebCache to retrieve my data, and not GeoServer (if it is possible).

For the moment, I have something like this (working) :

    var fond_carto = new OpenLayers.Layer.WMS(
        "Fond cartographique 2", 
        "http://179.172.277.77:8080/geoserver/wms",
        {
            layers: 'departement',
            TILED: 'true'
        }

I tried stuff like that (not working) :

    var fond_carto = new OpenLayers.Layer.WMS(
        "Fond cartographique 2", 
        "http://179.172.277.77:8080/geowebcache/sevice/wms",
        {
            layers: 'departement',
            TILED: 'true'
        } 

Is there a way to accomplish that ? After some reading, I assume I'm a bit lost with this standalone version of GeoWebCache. It is written it works as a proxy between client (OpenLayers) and server (GeoServer). But I read that the TILED: 'true' option means that GeoServer will send the layers for tiling to GeoWebCache. As I desactivated the integrated version of GeoWebCache in GeoServer, and as my WMS request are still tiled, I assume this is true. But then it's not really a proxy.

Could it works as follow:

openlayers => standalone geowebcache => geoserver => standalone geowebcache => openlayers

Or it has to work that way :

openlayers => geoserver => standalone geowebcache => geoserver => openlayers

Thanks for any tips or any clarifications :-) !

EDIT

After some more configuration in geowebcache.xml, I still have the error but I can add some details to help. This is the URL of the request that is not displaying (pink tiles) :

http://179.172.277.77:8088/geowebcache/sevice/wms?LAYERS=departement&TILED=true&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&FORMAT=image%2Fjpeg&SRS=EPSG%3A4326&BBOX=2.8125,48.515625,3.515625,49.21875&WIDTH=256&HEIGHT=256:8080/geowebcache/sevice/wms?LAYERS=departement&TILED=true&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&FORMAT=image%2Fjpeg&SRS=EPSG%3A4326&BBOX=2.8125,48.515625,3.515625,49.21875&WIDTH=256&HEIGHT=256 :

and when I try to copy/paste this url, I got a GWC error :

400: Thread 35 Unknown layer departement. Check the logfiles, it may not have loaded properly.

I don't get why I got this error. Here's my geowebcache.xml description of the layer :

<wmsLayer>
  <name>departement</name>
  <mimeFormats>
    <string>image/gif</string>
    <string>image/jpeg</string>
    <string>image/png</string>
    <string>image/png8</string>
  </mimeFormats>
  <gridSubsets>
    <gridSubset>
      <gridSetName>EPSG:4326</gridSetName>
    </gridSubset>
  </gridSubsets>
  <wmsUrl>
    <string>http://179.172.277.77:8080/geoserver/wms</string>
  </wmsUrl>
  <wmsLayers>aaz:departement</wmsLayers>
</wmsLayer>
2

Your Geoserver Instance and GeoWebCache should be running on different ports if on the same machine.

Then your GeoWebCache end point should be something like:

http://179.172.277.77:PORT/geowebcache/service/wms?

The flow is Openlayers => Standalone GeoWebCache => GeoServer

EDIT: (For Additional Question)

You look like you are using workspace aaz so your reference to the layer in geoWebCache should be aaz:departement not departement

  • 1
    Ok, I'm trying this out, then I'll make a feed back. – Stranded Kid Nov 18 '13 at 9:24
  • Hmhmhm, it seems like it doesn't change anything. I guess I have some more thing to do/change into geowebcache configuration. – Stranded Kid Nov 18 '13 at 10:03
  • I am running the exact same scenario. Geoserver defaults to port 8080, you must make sure your geowebcache to a different port, say 8081 or port 80 if it is not in use, then you do not have to specify the port in the url. – Mark Cupitt Nov 18 '13 at 12:52
  • I've improved, facing now a new error, I've edited my post. – Stranded Kid Nov 18 '13 at 13:21
  • I answered this, but you should have posted it as a new question per StackExcahange Etiquette. Please accept the answer and UpVote if it answered your original question then ask as a new question as the original question has been dealt with. – Mark Cupitt Nov 18 '13 at 13:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.