[CITE-Forum] about TEAM parser

Stephan Meißl stephan.meissl at eox.at
Tue Aug 23 11:38:21 EDT 2011


All,

as Jinsongdi points out our service responses with HTTP status codes
other than 200 in case an ows:exception is returned e.g. 400 BAD REQUEST
for the request [1]. This behavior is defined in OWS Common 2.0, OGC
06-121r9 section 8.6 "HTTP STATUS codes for OGC Exceptions" which is
used by WCS 2.0 and thus EO-WCS.

I'm wondering how other services got around this problem?

Thanks for any guidance,
Stephan

[1] http://ows.eox.at/cci/ows?service=WCS&VERSION=2.0.0&request=DescribeEOCoverageSet


On Mon, 2011-08-22 at 17:25 +0200, Jinsongdi Yu wrote:
> Dear all,
> 
> I get a TEAM parser problem when I develop wcseo test suite. 
> 
> The ctl is as below: 
> <xsl:variable name="DescribeEOCoverageSet">
>             <ctl:request>
> 
> 
>                <ctl:url>
>                   <xsl:value-of select="$url"/>
>                </ctl:url>
>                <ctl:method>get</ctl:method>
>                <ctl:param name="service">WCS</ctl:param>
> 
> 
>                <ctl:param name="VERSION">2.0.0</ctl:param>
>                <ctl:param name="request">DescribeEOCoverageSet</ctl:param>
>                <ctlp:HTTPParser>
> 
> 
>                  <ctlp:XMLValidatingParser>
>                     <ctlp:schemas>
>                        <ctlp:schema type="file">resources/wcseo/1.0/wcsEODescribeEOCoverageSet.xsd</ctlp:schema>
> 
> 
>                     </ctlp:schemas>
>                  </ctlp:XMLValidatingParser>
>                </ctlp:HTTPParser>
> 
> 
>             </ctl:request>
>          </xsl:variable>
>          <xsl:choose>
>             <xsl:when test="string-length($DescribeEOCoverageSet)=0">
>                <ctl:message>[FAILURE] Parsing or validation errors.</ctl:message>
> 
> 
>                <ctl:fail/>
>             </xsl:when>
>             <xsl:otherwise>
>                <xsl:if test="not(empty($DescribeEOCoverageSet//*[local-name()='ExceptionReport']))">
> 
> 
>                   <ctl:message>[FAILURE] Send a valid EOCoverageSetDescription request, and the result should not contain an ows:ExceptionReport.</ctl:message>
>                   <ctl:fail/>
>                </xsl:if>
> 
> 
>             </xsl:otherwise>
>          </xsl:choose>
> The test log is as below: 
> Request d1e176_1:
>    Method: get
>    URL: http://ows.eox.at/cci/ows?service=WCS&VERSION=2.0.0&request=DescribeEOCoverageSet
> 
> 
>    Response from parser ctlp:HTTPParser:
>       <response>
>    <status code="400" protocol="HTTP/1.1">BAD</status>
>    <headers>
>       <header name="Date">Mon, 22 Aug 2011 14:37:18 GMT</header>
> 
> 
>       <header name="Server">Apache/2.2.16 (Debian)</header>
>       <header name="Vary">Accept-Encoding</header>
>       <header name="Connection">close</header>
> 
> 
>       <header name="Transfer-Encoding">chunked</header>
>       <header name="Content-Type">text/xml</header>
>    </headers>
>    <content/>
> 
> 
>    <!--Response received in [74] milliseconds--></response>
>    Messages from parser ctlp:HTTPParser:
>         java.io.IOException: Server returned HTTP response code: 400 for URL: http://ows.eox.at/cci/ows?service=WCS&VERSION=2.0.0&request=DescribeEOCoverageSet
> 
> 
> 
> Message d1e223_1:
>    [FAILURE] Send an invalid EOCoverageSetDescription request, and the result should contain an ows:ExceptionReport.
> 
> Result: Failed
> It seems the XMLValidatingParser is not invoked when there is a 400
> error.
> 
> The complete kvp request is as below:
> http://ows.eox.at/cci/ows?service=WCS&VERSION=2.0.0&request=DescribeEOCoverageSet
> 
> And the response is as below:
> 
> 
> 
> 
> 
> 
> 
> 
> 
> Status: HTTP/1.1 400
> BAD REQUEST
> Date:
> Mon, 22 Aug 2011
> 13:58:55 GMT
> 
> 
> 
> Server:
> Apache/2.2.16 (Debian)
> 
> 
> 
> Vary:
> Accept-Encoding
> 
> 
> 
> Content-Encoding:
> gzip
> 
> 
> 
> Connection:
> close
> 
> 
> 
> Transfer-Encoding:
> chunked
> 
> 
> 
> Content-Type:
> text/xml
> 
> 
> 
> 
> 
> 
> Content (encoded: 0.20 KiB / decoded: 0.30 KiB)
> <?xml version="1.0" encoding="ISO-8859-1"?><ows:ExceptionReport version="2.0.0" xml:lang="en" xmlns:ows="http://www.opengis.net/ows/2.0"><ows:Exception exceptionCode="MissingParameterValue" locator="eoid"><ows:ExceptionText>Missing 'eoid' parameter</ows:ExceptionText></ows:Exception></ows:ExceptionReport>
> 
> 
> 
> 
> 
> Best
> Jinsongdi
> 
> 
> -- 
> Street Address:Campus Ring 1,28759 Bremen,Germany
> Mailing Address:P.O. Box 750 561,28725 Bremen,Germany
> Telephone:    +49 421 200 3050
> E-Mail:          j.yu at jacobs-university.de
> 

-- 
--------------------------------------
DI Stephan Meißl

EOX IT Services GmbH
A-1090 Wien, Thurngasse 8/4, Austria
Mobile: +43 (0) 664 / 968 8701
Skype: stephan_meissl
mailto: stephan.meissl at eox.at
http://www.eox.at
HG Wien - FN 312068z - UID ATU64265057
--------------------------------------



More information about the CITE-Forum mailing list