Bjørn,

Thanks for the info.  I'm not sure if I should file an Issue on the doc for the 
broken link, or on the demo for the missing file (no public GitHub repository 
for the demo?).

While testing the GeoMoose/OpenLayers client, I did see foreign WMS servers 
(not under my control) cause a "Cross-Origin Request Blocked" error.  This was 
unexpected as I had encoded the XML SLD document and included it in the GET 
request parameter SLD_BODY.  I could understand getting the error if I had used 
the alternative method of instead using SLD=http://... to reference an SLD 
document somewhere on the web, but I did not use that method.  I even removed 
the reference links in the header of the SLD, but I got the same error.

Thanks again!
Brent Fraser

----------------------------------------
From: "Bjørn Ove Grøtan" <bjorn....@grotan.com>
Sent: 12/31/22 5:47 AM
To: Brent Fraser <bfra...@geoanalytic.com>
Cc: "mapserver-users@lists.osgeo.org" <mapserver-users@lists.osgeo.org>
Subject: Re: [MapServer-users] Link in SLD doc returns an exception

Brent Fraser:
> Hi All,
>
> I'm experimenting with SLD and reading the MapServer doc. On the SLD page 
> under Server Side Support, it says "Test the remote SLD request" with a link 
> to
>
> https://demo.mapserver.org/cgi-bin/wms?SERVICE=wms&VERSION=1.1.1&REQUEST=GetMap&LAYERS=country_bounds&FORMAT=png&WIDTH=400&HEIGHT=300&SRS=EPSG:4326&STYLES=&BBOX=-180.0,-90.0,180.0,90.0&TRANSPARENT=TRUE&SLD=https://demo.mapserver.org/ogc-demos/map/sld/sld_line_simple.xml
>
> The link looks good but it returns an exception:
>
> <?xml version='1.0' encoding="UTF-8" standalone="no" ?>
> <!DOCTYPE ServiceExceptionReport SYSTEM 
> "http://schemas.opengis.net/wms/1.1.1/exception_1_1_1.dtd";>
> <ServiceExceptionReport version="1.1.1">
> <ServiceException>
> msSLDApplySLDURL: WMS server error. Could not open SLD 
> https://demo.mapserver.org/ogc-demos/map/sld/sld_line_simple.xml and save it 
> in a temporary file. Please make sure that the sld url is valid and that the 
> temporary path is set. The temporary path can be defined for example by 
> setting TEMPPATH in the map file. Please check the MapServer documentation on 
> temporary path settings.
> msHTTPExecuteRequests(): HTTP request error. HTTP GET request failed with 
> status 404 () for 
> https://demo.mapserver.org/ogc-demos/map/sld/sld_line_simple.xml
> </ServiceException>
> </ServiceExceptionReport>
>
> Is the demo in a repo somewhere or does someone have some insight? Thanks!

The error message is correct,
https://demo.mapserver.org/ogc-demos/map/sld/sld_line_simple.xml returns a 404
Page not found, The root folder at /ogc-demos/ has been removed at some point.

Be aware though, that not all WMS-servers allow (by configuration) external
hosted SLD-files due to potential XXE (XML eXternal Entity) vulnerability,

Also might be of interrest: the Mapserver implementation of GetStyle-request
(return SLD for a given layer) has some limitations on line-symbols where
images (png) are placed along the line symbol, and same with polygon fills
using a repeated png-file as fill - but simple polygon symbologies with a solid
fill color works as expected.

--
Kind regards

Bjørn Ove Grøtan
_______________________________________________
MapServer-users mailing list
MapServer-users@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/mapserver-users

Reply via email to