Opened 13 years ago
#3696 new defect
GetFeatureInfo and Oracle
Reported by: | escheper | Owned by: | aboudreault |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | Input - Native Oracle Spatial Support | Version: | 5.6 |
Severity: | normal | Keywords: | WMS GetFeatureInfo |
Cc: |
Description
Performing a WMS GetFeatureInfo request on an Oracle Spatial layer gives an incomplete gml result in 5.6.3. See sample below.
<?xml version="1.0" encoding="ISO-8859-1"?> <msGMLOutput
xmlns:gml="http://www.opengis.net/gml" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Klachten_layer>
A similar problem was reported in ticket #3505. The presented solution did not work for me.
I've solved the problem by myself and have attached the modified source. The modifications are in line 1987 and 2072.
1987:
/*do we have a query_by_point request (e.g. GetFeatureInfo)? */ if (layer->map->query.type == MS_QUERY_BY_POINT) {
/*use the maps query maxresults. */ layer->maxfeatures = layer->map->query.maxresults;
}
2072:
/* get rows fetched */ OCIAttrGet( (dvoid *)sthand->stmthp, (ub4)OCI_HTYPE_STMT, (dvoid *)&sthand->rows_fetched, (ub4 *)0, (ub4)OCI_ATTR_ROW_COUNT, hand->errhp ) )
&& TRY( hand,
/* get rows count */ /* this should also be done at the first fetch. */ OCIAttrGet( (dvoid *)sthand->stmthp, (ub4)OCI_HTYPE_STMT, (dvoid *)&sthand->rows_count, (ub4 *)0, (ub4)OCI_ATTR_ROW_COUNT, hand->errhp ) );
The attached source file is from version 5.6.3.
Hopefully it's a useful solution for other people.
Modified source file