[Qgis-developer] Error connecting QGIS 1.9.0 to Ortho Refresh WCS

Bruce, Bob (CON) Bob.Bruce at gov.mb.ca
Thu Jan 17 14:07:55 PST 2013


I am having trouble using the WCS capability in version 1.9.0 code revision f210668
Here are the full details of the QGIS version from the Help listing:

QGIS version			1.9.0-Master	QGIS code revision		f210668
Compiled against Qt		4.7.1			Running against Qt		4.7.1
Compiled against GDAL/OGR	1.9.2			Running against GDAL/OGR	1.9.2
GEOS Version			3.3.5			PostgreSQL Client Version	8.3.10
SpatiaLite Version		3.0.1			QWT Version				5.2.1
PROJ.4 Version			480			QScintilla2 Version		2.6.2
This copy of QGIS writes debugging output.

The URL that I am connecting to is: http://nis.cubewerx.com/cubewerx/cubeserv.cgi?CONFIG=OIM_Ortho_Refresh_2010&DATASTORE=OIM_Ortho_Refresh_2010_store
The URL of the GetCapabilities request is: http://nis.cubewerx.com/cubewerx/cubeserv.cgi?CONFIG=OIM_Ortho_Refresh_2010&VERSION=1.0.0&SERVICE=WCS&DATASTORE=OIM_Ortho_Refresh_2010_store&REQUEST=GetCapabilities

According to Cubewerx, who is our imagery OGC WCS service provider, their log shows both the GetCapabilities and GetCoverage requests present in the same HTTP request while they should be done separately.

This is the request that they are finding in their server log:
	2012-11-15 19:06:00.980 10527 received HTTP GET request from 205.200.189.2 to URL "http://nis.cubewerx.com/cubewerx/cubeserv.cgi?CONFIG=OIM_Ortho_Refresh_2010&DATASTORE=OIM_Ortho_Refresh_2010_store&service=wcs&version=1.1.1&REQUEST=DescribeCoverage&COVERAGE=OIM_Ortho_Refresh_2010_store&SERVICE=WCS&REQUEST=GetCapabilities&AcceptVersions=1.1.0,1.0.0"

Is there a fix to this problem available in a later version of QGIS?

Here is the error report that I am seeing in QGIS when I try and add this data source to the project:
	WCS provider: Cannot calculate extent
	(d:\src\qgis\src\providers\wcs\qgswcsprovider.cpp : 188 : QgsWcsProvider::QgsWcsProvider)
	Raster layer: Provider is not valid (provider: wcs, URI: cache=AlwaysCache&crs=EPSG:26914&format=GeoTIFF&identifier=image_set&url=http://nis.cubewerx.com/cubewerx/cubeserv.cgi?CONFIG%	3DOIM_Ortho_Refresh_2010%26DATASTORE%3DOIM_Ortho_Refresh_2010_store
	(d:\src\qgis\src\core\raster\qgsrasterlayer.cpp : 1609 : QgsRasterLayer::setDataProvider)

Thanks,
	Bob Bruce

From: ekeighan [mailto:ekeighan at cubewerx.com] 
Sent: January-17-13 3:33 PM
To: Bruce, Bob (CON)
Subject: Re: Error connecting QGIS 1.9.0 to Ortho Refresh WCS

Bob,

FYI...

ekeighan at cubewerx.com wrote:

*Raster layer:* Provider is not valid (provider: wcs, URI: 
cache=AlwaysCache&crs=EPSG:26914&format=GeoTIFF&identifier=image_set&url=http://nis.cubewerx.com/cubewerx/cubeserv.cgi?CONFIG%3DOIM_Ortho_Refresh_2010%26DATASTORE%3DOIM_Ortho_Refresh_2010_store
(d:\src\qgis\src\core\raster\qgsrasterlayer.cpp : 1609 : 
QgsRasterLayer::setDataProvider)

Is there something at your end that could be changed to allow this to 
calculate the extent?
Looking through the server log, we see only the following related request
present twice:

2012-11-15 19:06:00.980 10527 received HTTP GET request from 205.200.189.2 to URL "http://nis.cubewerx.com/cubewerx/cubeserv.cgi?CONFIG=OIM_Ortho_Refresh_2010&DATASTORE=OIM_Ortho_Refresh_2010_store&service=wcs&version=1.1.1&REQUEST=DescribeCoverage&COVERAGE=OIM_Ortho_Refresh_2010_store&SERVICE=WCS&REQUEST=GetCapabilities&AcceptVersions=1.1.0,1.0.0"

---------------------------------------------------------------

This doesn't make any sense, since it contains two different REQUEST arguments, one for DescribeCoverage and another for GetCapabilities.
The Qgs error suggests that the base URL it's using is:

http://nis.cubewerx.com/cubewerx/cubeserv.cgi?CONFIG%3DOIM_Ortho_Refresh_2010%26DATASTORE%3DOIM_Ortho_Refresh_2010_store

but it almost seems as though it was entered improperly as:

http://nis.cubewerx.com/cubewerx/cubeserv.cgi?CONFIG=OIM_Ortho_Refresh_2010&DATASTORE=OIM_Ortho_Refresh_2010_store&service=wcs&version=1.1.1&REQUEST=DescribeCoverage&COVERAGE=OIM_Ortho_Refresh_2010_store

The WCS request received from the client produces an error return, since
the server has problems parsing the broken request:

<ExceptionReport version="1.1.0" xml:lang="en"
  xsi:schemaLocation="http://www.opengis.net/ows/1.1 http://schemas.cubewerx.com/schemas/ows/1.1.0/owsExceptionReport.xsd">
  <Exception exceptionCode="MissingParameterValue" locator="identifiers">
    <ExceptionText>CubeSERV: Cannot execute WCS request, raised in Wcs_Execute() in file "wcs.c" line 162</ExceptionText>
    <ExceptionText>CubeSERV: Missing parameter "identifiers", raised in throwMissingParamError() in file "cw_cgiparams.c" line 797</ExceptionText>
  </Exception>
</ExceptionReport>

The first request from the client should be just a proper GetCapabilities
request:

http://nis.cubewerx.com/cubewerx/cubeserv.cgi?CONFIG=OIM_Ortho_Refresh_2010&DATASTORE=OIM_Ortho_Refresh_2010_store&SERVICE=WCS&REQUEST=GetCapabilities&AcceptVersions=1.1.0,1.0.0

which returns the expected data.
-------------------------------------------------

Regards,

Edric

On 17/01/2013 3:35 PM, Bruce, Bob (CON) wrote:
Edric,
            I took another look at connecting QGIS to your WCS, using a newer beta test version. It provided a mechanism to connect to the WCS and it allowed me to try and add it to my map. When I tried to add it I got the following message:
 
WCS provider: Cannot calculate extent
(d:\src\qgis\src\providers\wcs\qgswcsprovider.cpp : 188 : QgsWcsProvider::QgsWcsProvider)
Raster layer: Provider is not valid (provider: wcs, URI: cache=AlwaysCache&crs=EPSG:26914&format=GeoTIFF&identifier=image_set&url=http://nis.cubewerx.com/cubewerx/cubeserv.cgi?CONFIG%3DOIM_Ortho_Refresh_2010%26DATASTORE%3DOIM_Ortho_Refresh_2010_store
(d:\src\qgis\src\core\raster\qgsrasterlayer.cpp : 1609 : QgsRasterLayer::setDataProvider)
 
Is there something at your end that could be changed to allow this to calculate the extent?
 
Thanks,
            Bob

*******************************************************************************************************************
**    Bob Bruce, FEC, P.Eng.         Geomatics Support Engineer
**    Bob.Bruce at gov.mb.ca           Geospatial Technology Services Management
**    work # (204) 945-6636              GeoManitoba, Manitoba Conservation and Water Stewardship
**    FAX  # (204) 945-1365             1007 Century Street,
**                                                  Winnipeg, Manitoba, Canada, R3H 0W4
**                                                  49-54-31.85N,97-12-16.08W
**
**             Check out our digital maps at: http://mli2.gov.mb.ca/
**                 and WMS: http://mlidata.gov.mb.ca/wms/request.aspx
*******************************************************************************************************************
 



More information about the Qgis-developer mailing list