[Geoserver-users] Update style though REST api

Hello,

I have a weird problem when uploading an SLD file to geoserver 2.4.0 using the RESP api.

The style gets uploaded successfully (http 200 is returned), and I can see it in the list of styles in the geoserver admin gui.
But, parts of the style have been removed.

I've embedded the style I upload as well as what I see on the geoserver adming gui.
You can see that all lines starting with <sld:SvgParameter.. have disappeared.

Any idea?
Serge

SLD that gets uploaded:
------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld&quot; xmlns:ogc="http://www.opengis.net/ogc&quot; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quot; xmlns:xlink="http://www.w3.org/1999/xlink&quot; xmlns:sld="http://www.opengis.net/sld&quot; version="1.1.0" xsi:schemaLocation="http://www.opengis.net/sld http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd&quot;&gt;
   <NamedLayer>
     <sld:Name>line</sld:Name>
     <UserStyle>
       <sld:Name>line</sld:Name>
       <sld:FeatureTypeStyle>
         <sld:Rule>
           <sld:Name>Single symbol</sld:Name>
           <sld:LineSymbolizer>
             <sld:Stroke>
               <sld:SvgParameter name="stroke">#FF0000</sld:SvgParameter>
               <sld:SvgParameter name="stroke-width">3.26</sld:SvgParameter>
               <sld:SvgParameter name="stroke-linejoin">bevel</sld:SvgParameter>
               <sld:SvgParameter name="stroke-linecap">square</sld:SvgParameter>
               <sld:SvgParameter name="stroke-dasharray">5 2</sld:SvgParameter>
             </sld:Stroke>
           </sld:LineSymbolizer>
           <sld:LineSymbolizer>
             <sld:Stroke>
               <sld:SvgParameter name="stroke">#00FF00</sld:SvgParameter>
               <sld:SvgParameter name="stroke-width">2.26</sld:SvgParameter>
               <sld:SvgParameter name="stroke-linejoin">round</sld:SvgParameter>
               <sld:SvgParameter name="stroke-linecap">square</sld:SvgParameter>
               <sld:SvgParameter name="stroke-dasharray">5 2</sld:SvgParameter>
             </sld:Stroke>
           </sld:LineSymbolizer>
         </sld:Rule>
       </sld:FeatureTypeStyle>
     </UserStyle>
   </NamedLayer>
</sld:StyledLayerDescriptor>

Tomcat Logfile:
---------------------
         ... 88 more
17 Oct 12:27:20 DEBUG [org.geotools.styling] - StyleLayerDescriptorImpl added 1 styled layers
17 Oct 12:27:20 DEBUG [org.geotools.styling] - number of fts set 1
17 Oct 12:27:26 DEBUG [org.geotools.styling] - number of fts set 1
17 Oct 12:27:26 INFO [org.geoserver.catalog.rest] - PUT style line

Style at the GeoServer GUI:
--------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld&quot; xmlns:sld="http://www.opengis.net/sld&quot; xmlns:ogc="http://www.opengis.net/ogc&quot; xmlns:gml="http://www.opengis.net/gml&quot; version="1.0.0">
   <sld:NamedLayer>
     <sld:Name>line</sld:Name>
     <sld:UserStyle>
       <sld:Name>line</sld:Name>
       <sld:FeatureTypeStyle>
         <sld:Name>name</sld:Name>
         <sld:Rule>
           <sld:Name>Single symbol</sld:Name>
           <sld:LineSymbolizer>
             <sld:Stroke/>
           </sld:LineSymbolizer>
           <sld:LineSymbolizer>
             <sld:Stroke/>
           </sld:LineSymbolizer>
         </sld:Rule>
       </sld:FeatureTypeStyle>
     </sld:UserStyle>
   </sld:NamedLayer>
</sld:StyledLayerDescriptor>

It is removing the non conformant bits when it processes the style.

All the SvgParameter should be CSSParameter.

Ian

···

On 17 October 2013 12:24, Serge de Schaetzen <sergeds@anonymised.com> wrote:

Hello,

I have a weird problem when uploading an SLD file to geoserver 2.4.0
using the RESP api.

The style gets uploaded successfully (http 200 is returned), and I can
see it in the list of styles in the geoserver admin gui.
But, parts of the style have been removed.

I’ve embedded the style I upload as well as what I see on the geoserver
adming gui.
You can see that all lines starting with <sld:SvgParameter… have
disappeared.

Any idea?
Serge

SLD that gets uploaded:

<?xml version="1.0" encoding="UTF-8"?>

<sld:StyledLayerDescriptor xmlns=“http://www.opengis.net/sld
xmlns:ogc=“http://www.opengis.net/ogc
xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance
xmlns:xlink=“http://www.w3.org/1999/xlink
xmlns:sld=“http://www.opengis.net/sld” version=“1.1.0”
xsi:schemaLocation=“http://www.opengis.net/sld
http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd”>

sld:Nameline</sld:Name>

sld:Nameline</sld:Name>
sld:FeatureTypeStyle
sld:Rule
sld:NameSingle symbol</sld:Name>
sld:LineSymbolizer
sld:Stroke
<sld:SvgParameter name=“stroke”>#FF0000</sld:SvgParameter>
<sld:SvgParameter name=“stroke-width”>3.26</sld:SvgParameter>
<sld:SvgParameter
name=“stroke-linejoin”>bevel</sld:SvgParameter>
<sld:SvgParameter
name=“stroke-linecap”>square</sld:SvgParameter>
<sld:SvgParameter name=“stroke-dasharray”>5
2</sld:SvgParameter>
</sld:Stroke>
</sld:LineSymbolizer>
sld:LineSymbolizer
sld:Stroke
<sld:SvgParameter name=“stroke”>#00FF00</sld:SvgParameter>
<sld:SvgParameter name=“stroke-width”>2.26</sld:SvgParameter>
<sld:SvgParameter
name=“stroke-linejoin”>round</sld:SvgParameter>
<sld:SvgParameter
name=“stroke-linecap”>square</sld:SvgParameter>
<sld:SvgParameter name=“stroke-dasharray”>5
2</sld:SvgParameter>
</sld:Stroke>
</sld:LineSymbolizer>
</sld:Rule>
</sld:FeatureTypeStyle>


</sld:StyledLayerDescriptor>

Tomcat Logfile:

… 88 more
17 Oct 12:27:20 DEBUG [org.geotools.styling] - StyleLayerDescriptorImpl
added 1 styled layers
17 Oct 12:27:20 DEBUG [org.geotools.styling] - number of fts set 1
17 Oct 12:27:26 DEBUG [org.geotools.styling] - number of fts set 1
17 Oct 12:27:26 INFO [org.geoserver.catalog.rest] - PUT style line

Style at the GeoServer GUI:

<?xml version="1.0" encoding="UTF-8"?>

<sld:StyledLayerDescriptor xmlns=“http://www.opengis.net/sld
xmlns:sld=“http://www.opengis.net/sld
xmlns:ogc=“http://www.opengis.net/ogc
xmlns:gml=“http://www.opengis.net/gml” version=“1.0.0”>
sld:NamedLayer
sld:Nameline</sld:Name>
sld:UserStyle
sld:Nameline</sld:Name>
sld:FeatureTypeStyle
sld:Namename</sld:Name>
sld:Rule
sld:NameSingle symbol</sld:Name>
sld:LineSymbolizer
sld:Stroke/
</sld:LineSymbolizer>
sld:LineSymbolizer
sld:Stroke/
</sld:LineSymbolizer>
</sld:Rule>
</sld:FeatureTypeStyle>
</sld:UserStyle>
</sld:NamedLayer>
</sld:StyledLayerDescriptor>


October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/4140/ostg.clktrk


Geoserver-users mailing list
Geoserver-users@anonymised.comsts.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users


Ian Turton

Ian,

this is even more confusing.

It does indeed work through the REST api when I change the SvgParameter lines to CssParameter.
But when I upload the file with SvgParameters from within the GeoServer, it is accepted, and I can see all SvgParameter lines in the style editor.

Is there a reason why the REST api behaves differently?

Serge.

Ian Turton schreef op 17/10/2013 15:04:

It is removing the non conformant bits when it processes the style.

All the SvgParameter should be CSSParameter.

Ian

On 17 October 2013 12:24, Serge de Schaetzen <sergeds@anonymised.com <mailto:sergeds@anonymised.com>> wrote:

    Hello,

    I have a weird problem when uploading an SLD file to geoserver 2.4.0
    using the RESP api.

    The style gets uploaded successfully (http 200 is returned), and I can
    see it in the list of styles in the geoserver admin gui.
    But, parts of the style have been removed.

    I've embedded the style I upload as well as what I see on the
    geoserver
    adming gui.
    You can see that all lines starting with <sld:SvgParameter.. have
    disappeared.

    Any idea?
    Serge

    SLD that gets uploaded:
    ------------------------------------
    <?xml version="1.0" encoding="UTF-8"?>
    <sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld&quot;
    xmlns:ogc="http://www.opengis.net/ogc&quot;
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quot;
    xmlns:xlink="http://www.w3.org/1999/xlink&quot;
    xmlns:sld="http://www.opengis.net/sld&quot; version="1.1.0"
    xsi:schemaLocation="http://www.opengis.net/sld
    http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd&quot;&gt;
       <NamedLayer>
         <sld:Name>line</sld:Name>
         <UserStyle>
           <sld:Name>line</sld:Name>
           <sld:FeatureTypeStyle>
             <sld:Rule>
               <sld:Name>Single symbol</sld:Name>
               <sld:LineSymbolizer>
                 <sld:Stroke>
                   <sld:SvgParameter
    name="stroke">#FF0000</sld:SvgParameter>
                   <sld:SvgParameter
    name="stroke-width">3.26</sld:SvgParameter>
                   <sld:SvgParameter
    name="stroke-linejoin">bevel</sld:SvgParameter>
                   <sld:SvgParameter
    name="stroke-linecap">square</sld:SvgParameter>
                   <sld:SvgParameter name="stroke-dasharray">5
    2</sld:SvgParameter>
                 </sld:Stroke>
               </sld:LineSymbolizer>
               <sld:LineSymbolizer>
                 <sld:Stroke>
                   <sld:SvgParameter
    name="stroke">#00FF00</sld:SvgParameter>
                   <sld:SvgParameter
    name="stroke-width">2.26</sld:SvgParameter>
                   <sld:SvgParameter
    name="stroke-linejoin">round</sld:SvgParameter>
                   <sld:SvgParameter
    name="stroke-linecap">square</sld:SvgParameter>
                   <sld:SvgParameter name="stroke-dasharray">5
    2</sld:SvgParameter>
                 </sld:Stroke>
               </sld:LineSymbolizer>
             </sld:Rule>
           </sld:FeatureTypeStyle>
         </UserStyle>
       </NamedLayer>
    </sld:StyledLayerDescriptor>

    Tomcat Logfile:
    ---------------------
             ... 88 more
    17 Oct 12:27:20 DEBUG [org.geotools.styling] -
    StyleLayerDescriptorImpl
    added 1 styled layers
    17 Oct 12:27:20 DEBUG [org.geotools.styling] - number of fts set 1
    17 Oct 12:27:26 DEBUG [org.geotools.styling] - number of fts set 1
    17 Oct 12:27:26 INFO [org.geoserver.catalog.rest] - PUT style line

    Style at the GeoServer GUI:
    --------------------------------------
    <?xml version="1.0" encoding="UTF-8"?>
    <sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld&quot;
    xmlns:sld="http://www.opengis.net/sld&quot;
    xmlns:ogc="http://www.opengis.net/ogc&quot;
    xmlns:gml="http://www.opengis.net/gml&quot; version="1.0.0">
       <sld:NamedLayer>
         <sld:Name>line</sld:Name>
         <sld:UserStyle>
           <sld:Name>line</sld:Name>
           <sld:FeatureTypeStyle>
             <sld:Name>name</sld:Name>
             <sld:Rule>
               <sld:Name>Single symbol</sld:Name>
               <sld:LineSymbolizer>
                 <sld:Stroke/>
               </sld:LineSymbolizer>
               <sld:LineSymbolizer>
                 <sld:Stroke/>
               </sld:LineSymbolizer>
             </sld:Rule>
           </sld:FeatureTypeStyle>
         </sld:UserStyle>
       </sld:NamedLayer>
    </sld:StyledLayerDescriptor>

    ------------------------------------------------------------------------------
    October Webinars: Code for Performance
    Free Intel webinars can help you accelerate application performance.
    Explore tips for MPI, OpenMP, advanced profiling, and more. Get
    the most from
    the latest Intel processors and coprocessors. See abstracts and
    register >
    http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/4140/ostg.clktrk
    _______________________________________________
    Geoserver-users mailing list
    Geoserver-users@lists.sourceforge.net
    <mailto:Geoserver-users@lists.sourceforge.net>
    https://lists.sourceforge.net/lists/listinfo/geoserver-users

--
Ian Turton

Hello,

This seems to an issue to the following element in the version 1.0.0 the parameter is calles CSSParameter,
in the version 1.1.0 the same parameter should be called SVGParameter.

Could it be that the rest API just checks against the 1.0.0 version and that the Web interface supports
correctly the two version.

Regards,

Eric Smets

---
Op 17/10/2013 15:04, Ian Turton schreef:

It is removing the non conformant bits when it processes the style.

All the SvgParameter should be CSSParameter.

Ian

On 17 October 2013 12:24, Serge de Schaetzen <sergeds@anonymised.com <mailto:sergeds@anonymised.com>> wrote:

    Hello,

    I have a weird problem when uploading an SLD file to geoserver 2.4.0
    using the RESP api.

    The style gets uploaded successfully (http 200 is returned), and I can
    see it in the list of styles in the geoserver admin gui.
    But, parts of the style have been removed.

    I've embedded the style I upload as well as what I see on the geoserver
    adming gui.
    You can see that all lines starting with <sld:SvgParameter.. have
    disappeared.

    Any idea?
    Serge

    SLD that gets uploaded:
    ------------------------------------
    <?xml version="1.0" encoding="UTF-8"?>
    <sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld&quot;
    xmlns:ogc="http://www.opengis.net/ogc&quot;
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quot;
    xmlns:xlink="http://www.w3.org/1999/xlink&quot;
    xmlns:sld="http://www.opengis.net/sld&quot; version="1.1.0"
    xsi:schemaLocation="http://www.opengis.net/sld
    http://schemas.opengis.net/sld/1.1.0/StyledLayerDescriptor.xsd&quot;&gt;
       <NamedLayer>
         <sld:Name>line</sld:Name>
         <UserStyle>
           <sld:Name>line</sld:Name>
           <sld:FeatureTypeStyle>
             <sld:Rule>
               <sld:Name>Single symbol</sld:Name>
               <sld:LineSymbolizer>
                 <sld:Stroke>
                   <sld:SvgParameter name="stroke">#FF0000</sld:SvgParameter>
                   <sld:SvgParameter name="stroke-width">3.26</sld:SvgParameter>
                   <sld:SvgParameter
    name="stroke-linejoin">bevel</sld:SvgParameter>
                   <sld:SvgParameter
    name="stroke-linecap">square</sld:SvgParameter>
                   <sld:SvgParameter name="stroke-dasharray">5
    2</sld:SvgParameter>
                 </sld:Stroke>
               </sld:LineSymbolizer>
               <sld:LineSymbolizer>
                 <sld:Stroke>
                   <sld:SvgParameter name="stroke">#00FF00</sld:SvgParameter>
                   <sld:SvgParameter name="stroke-width">2.26</sld:SvgParameter>
                   <sld:SvgParameter
    name="stroke-linejoin">round</sld:SvgParameter>
                   <sld:SvgParameter
    name="stroke-linecap">square</sld:SvgParameter>
                   <sld:SvgParameter name="stroke-dasharray">5
    2</sld:SvgParameter>
                 </sld:Stroke>
               </sld:LineSymbolizer>
             </sld:Rule>
           </sld:FeatureTypeStyle>
         </UserStyle>
       </NamedLayer>
    </sld:StyledLayerDescriptor>

    Tomcat Logfile:
    ---------------------
             ... 88 more
    17 Oct 12:27:20 DEBUG [org.geotools.styling] - StyleLayerDescriptorImpl
    added 1 styled layers
    17 Oct 12:27:20 DEBUG [org.geotools.styling] - number of fts set 1
    17 Oct 12:27:26 DEBUG [org.geotools.styling] - number of fts set 1
    17 Oct 12:27:26 INFO [org.geoserver.catalog.rest] - PUT style line

    Style at the GeoServer GUI:
    --------------------------------------
    <?xml version="1.0" encoding="UTF-8"?>
    <sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld&quot;
    xmlns:sld="http://www.opengis.net/sld&quot;
    xmlns:ogc="http://www.opengis.net/ogc&quot;
    xmlns:gml="http://www.opengis.net/gml&quot; version="1.0.0">
       <sld:NamedLayer>
         <sld:Name>line</sld:Name>
         <sld:UserStyle>
           <sld:Name>line</sld:Name>
           <sld:FeatureTypeStyle>
             <sld:Name>name</sld:Name>
             <sld:Rule>
               <sld:Name>Single symbol</sld:Name>
               <sld:LineSymbolizer>
                 <sld:Stroke/>
               </sld:LineSymbolizer>
               <sld:LineSymbolizer>
                 <sld:Stroke/>
               </sld:LineSymbolizer>
             </sld:Rule>
           </sld:FeatureTypeStyle>
         </sld:UserStyle>
       </sld:NamedLayer>
    </sld:StyledLayerDescriptor>

    ------------------------------------------------------------------------------
    October Webinars: Code for Performance
    Free Intel webinars can help you accelerate application performance.
    Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from
    the latest Intel processors and coprocessors. See abstracts and register >
    http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/4140/ostg.clktrk
    _______________________________________________
    Geoserver-users mailing list
    Geoserver-users@lists.sourceforge.net
    <mailto:Geoserver-users@lists.sourceforge.net>
    https://lists.sourceforge.net/lists/listinfo/geoserver-users

--
Ian Turton

------------------------------------------------------------------------------
October Webinars: Code for Performance
Free Intel webinars can help you accelerate application performance.
Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from
the latest Intel processors and coprocessors. See abstracts and register >
http://pubads.g.doubleclick.net/gampad/clk?id=60135031&iu=/4140/ostg.clktrk

_______________________________________________
Geoserver-users mailing list
Geoserver-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

--
Eric Smets eric.smets@anonymised.com
FKS bvba - Formal and Knowledge Systems http://www.fks.be/
Schampbergstraat 32 Tel: ++32-(0)11-21 49 11
B-3511 Hasselt Fax: ++32-(0)11-22 04 19