[PyWPS-dev] XML parser for Docker container

Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

[PyWPS-dev] XML parser for Docker container

Adam Laža
Hi devs,

I have a problem with xml parsing when using alpine/flask Dockerfile [1] (the only minor change is upgraded Xerces version to 3.2.1 and added curl package to apk). After building and starting a container I tried to send sample POST request using curl from within the running container (I checked the xml and it's well-formated):

curl -d pywps-flask/static/requests/execute_buffer_post.xml localhost:5000/wps

but I got ExceptionError:

<?xml version="1.0" encoding="UTF-8"?>
<!-- PyWPS 4.0.0 -->
<ows:ExceptionReport xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/ows/1.1 http://schemas.opengis.net/ows/1.1.0/owsExceptionReport.xsd" version="1.0.0">
  <ows:Exception exceptionCode="NoApplicableCode" locator="" >
      <ows:ExceptionText>Start tag expected, '&lt;' not found, line 1, column 1</ows:ExceptionText>
  </ows:Exception>
</ows:ExceptionReport>



I also tried to use OWSLib to send the request and I get the result code but the output in response is not well-formated:

        <wps:Output>
            <ows:Identifier>buff_out</ows:Identifier>
            <ows:Title>Buffered file</ows:Title>
            <ows:Abstract></ows:Abstract>
            <wps:Data>
                <wps:ComplexData mimeType="application/gml+xml" encoding="" schema="">
                    <![CDATA[
                            &lt;ogr:FeatureCollection xmlns:xsi=&#34;http://www.w3.org/2001/XMLSchema-instance&#34; xmlns:ogr=&#34;http://ogr.maptools.org/&#34; xmlns:gml=&#34;http://www.opengis.net/gml&#34; xsi:schemaLocation=&#34;                            http://schemas.opengis.net/gml/2.1.2/feature.xsd&#34;&gt;
  &lt;gml:boundedBy&gt;
    &lt;gml:Box&gt;
      &lt;gml:coord&gt;&lt;gml:X&gt;-0.9514645979959721&lt;/gml:X&gt;&lt;gml:Y&gt;-0.986306232731747&lt;/gml:Y&gt;&lt;/gml:coord&gt;
      &lt;gml:coord&gt;&lt;gml:X&gt;1.048535402004028&lt;/gml:X&gt;&lt;gml:Y&gt;1.013693767268253&lt;/gml:Y&gt;&lt;/gml:coord&gt;
    &lt;/gml:Box&gt;
  &lt;/gml:boundedBy&gt;
                                                                                            
  &lt;gml:featureMember&gt;
    &lt;ogr:point_buffer fid=&#34;point_buffer.0&#34;&gt;
      &lt;ogr:geometryProperty&gt;&lt;gml:Polygon&gt;&lt;gml:outerBoundaryIs&gt;&lt;gml:LinearRing&gt;&lt;gml:coordinates&gt;1.04853540200403,0.013693767268253 1.0471649367586,-0.038642188974691 1.0430572973723,-0.0908346959994 11.03622374259917,0.170128232308481 1.0430572973723,0.118222230535904 1.0471649367586,0.066029723511194 1.04853540200403,0.013693767268253&lt;/gml:coordinates&gt;&lt;/gml:LinearRing&gt;&lt;/gml:outerBoundaryIs&gt;&lt;/gml:Polygon&gt;&lt;/ogr:geometryProperty&gt;
    &lt;/ogr:point_buffer&gt;
  &lt;/gml:featureMember&gt;
&lt;/ogr:FeatureCollection&gt;

                    ]]>
                </wps:ComplexData>
            </wps:Data>
        </wps:Output>

Any idea what could be wrong? I hadn't this problem before. It started after I built a new Docker image (but from the same Dockerfile). I suspect expat or xerces but not really sure what I should be looking for.

Cheers,
Adam



_______________________________________________
pywps-dev mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/pywps-dev
Reply | Threaded
Open this post in threaded view
|

Re: XML parser for Docker container

Carsten Ehbrecht-3
Hi Adam,

I haven’t checked this. Could you please open a ticket on Github? In my processes I always return Complex outputs as reference, so I have probably avoid these issues. 

Cheers,
Carsten

On 10. Aug 2018, at 12:37, Adam Laža <[hidden email]> wrote:

Hi devs,

I have a problem with xml parsing when using alpine/flask Dockerfile [1] (the only minor change is upgraded Xerces version to 3.2.1 and added curl package to apk). After building and starting a container I tried to send sample POST request using curl from within the running container (I checked the xml and it's well-formated):

curl -d pywps-flask/static/requests/execute_buffer_post.xml localhost:5000/wps

but I got ExceptionError:

<?xml version="1.0" encoding="UTF-8"?>
<!-- PyWPS 4.0.0 -->
<ows:ExceptionReport xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/ows/1.1 http://schemas.opengis.net/ows/1.1.0/owsExceptionReport.xsd" version="1.0.0">
  <ows:Exception exceptionCode="NoApplicableCode" locator="" >
      <ows:ExceptionText>Start tag expected, '&lt;' not found, line 1, column 1</ows:ExceptionText>
  </ows:Exception>
</ows:ExceptionReport>



I also tried to use OWSLib to send the request and I get the result code but the output in response is not well-formated:

        <wps:Output>
            <ows:Identifier>buff_out</ows:Identifier>
            <ows:Title>Buffered file</ows:Title>
            <ows:Abstract></ows:Abstract>
            <wps:Data>
                <wps:ComplexData mimeType="application/gml+xml" encoding="" schema="">
                    <![CDATA[
                            &lt;ogr:FeatureCollection xmlns:xsi=&#34;http://www.w3.org/2001/XMLSchema-instance&#34; xmlns:ogr=&#34;http://ogr.maptools.org/&#34; xmlns:gml=&#34;http://www.opengis.net/gml&#34; xsi:schemaLocation=&#34;                            http://schemas.opengis.net/gml/2.1.2/feature.xsd&#34;&gt;
  &lt;gml:boundedBy&gt;
    &lt;gml:Box&gt;
      &lt;gml:coord&gt;&lt;gml:X&gt;-0.9514645979959721&lt;/gml:X&gt;&lt;gml:Y&gt;-0.986306232731747&lt;/gml:Y&gt;&lt;/gml:coord&gt;
      &lt;gml:coord&gt;&lt;gml:X&gt;1.048535402004028&lt;/gml:X&gt;&lt;gml:Y&gt;1.013693767268253&lt;/gml:Y&gt;&lt;/gml:coord&gt;
    &lt;/gml:Box&gt;
  &lt;/gml:boundedBy&gt;
                                                                                            
  &lt;gml:featureMember&gt;
    &lt;ogr:point_buffer fid=&#34;point_buffer.0&#34;&gt;
      &lt;ogr:geometryProperty&gt;&lt;gml:Polygon&gt;&lt;gml:outerBoundaryIs&gt;&lt;gml:LinearRing&gt;&lt;gml:coordinates&gt;1.04853540200403,0.013693767268253 1.0471649367586,-0.038642188974691 1.0430572973723,-0.0908346959994 11.03622374259917,0.170128232308481 1.0430572973723,0.118222230535904 1.0471649367586,0.066029723511194 1.04853540200403,0.013693767268253&lt;/gml:coordinates&gt;&lt;/gml:LinearRing&gt;&lt;/gml:outerBoundaryIs&gt;&lt;/gml:Polygon&gt;&lt;/ogr:geometryProperty&gt;
    &lt;/ogr:point_buffer&gt;
  &lt;/gml:featureMember&gt;
&lt;/ogr:FeatureCollection&gt;

                    ]]>
                </wps:ComplexData>
            </wps:Data>
        </wps:Output>

Any idea what could be wrong? I hadn't this problem before. It started after I built a new Docker image (but from the same Dockerfile). I suspect expat or xerces but not really sure what I should be looking for.

Cheers,
Adam


_______________________________________________
pywps-dev mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/pywps-dev


_______________________________________________
pywps-dev mailing list
[hidden email]
https://lists.osgeo.org/mailman/listinfo/pywps-dev