gvSIG bugs #441

Reading WFS feature type fails

Added by Jukka Rahkonen about 12 years ago. Updated over 11 years ago.

Status:Closed% Done:

0%

Priority:UrgentSpent time:-
Assignee:Juan Lucas Domínguez
Category:WFS
Target version:2.0.0-devel-2052
Severity: Add-on version:
gvSIG version:2.0.0 Add-on build:
gvSIG build: Add-on resolve version:
Operative System:Windows Add-on resolve build:
Keywords: Proyecto:
Has patch:No Hito:
Add-on name:Formats: WFS support (org.gvsig.wfs)

Description

GvSIG 2.0 alpha 4 cannot get data from this WFS service
http://188.64.1.61/cgi-bin/tinyows?service=wfs&version=1.1.0&request=getcapabilities

The feature type I tried is "municipalities". Older gvSIG version 1.11 reads data OK, as well as Kosmo GIS, Quantum GIS, GDAL/OGR 1.9.0 and many others. The error I get makes me think that problem may have something to do with the default SRS, which is <DefaultSRS>urn:ogc:def:crs:EPSG::3067</DefaultSRS>

finland.jpg (37.4 KB) Juan Lucas Domínguez, 07/03/2012 12:43 PM

gvSIG.log (321 KB) María Maluenda, 08/27/2012 01:02 PM

240

History

#1 Updated by Manuel Madrid about 12 years ago

  • Priority changed from Normal to Urgent

#2 Updated by Antonio Falciano about 12 years ago

The same behavior happens in gvSIG 1.11 (build 1305) and gvSIG 1.12 (build 1206) with the following service (WFS v. 1.1.0):
http://wms.pcn.minambiente.it/cgi-bin/mapserv.exe?map=/ms_ogc/wfs/Autorita_bacino.map
The alphanumeric data are loaded, while geometries not.

#3 Updated by Joaquín del Cerro Murciano almost 12 years ago

  • Assignee set to Juan Lucas Domínguez
  • Add-on name changed from Unknown to Formats: WFS support (org.gvsig.wfs)

#4 Updated by Joaquín del Cerro Murciano almost 12 years ago

  • Target version set to 2.0.0-alpha6

#5 Updated by Juan Lucas Domínguez almost 12 years ago

  • Status changed from New to In progress

#6 Updated by Juan Lucas Domínguez almost 12 years ago

  • Status changed from In progress to Fixed

gvsig-desktop:r38394

<BBOX> element had to be nested inside <Filter> element

#7 Updated by Joaquín del Cerro Murciano almost 12 years ago

  • Target version changed from 2.0.0-alpha6 to 2.0.0-devel-2048

#8 Updated by María Maluenda almost 12 years ago

  • Status changed from Fixed to Under review

Please, could you check this issue with gvSIG 2.0 2049 [1] and let us know if it still happens or not?.

[1] https://gvsig.org/web/projects/gvsig-desktop/devel/gvsig/2_0_0/version

#9 Updated by Juan Lucas Domínguez almost 12 years ago

Hello,
It works also in EPSG:4326 (not sure who is reprojecting, but it works)
See attached image "finland.jpg"
Can we close this ticket?

#10 Updated by Juan Lucas Domínguez almost 12 years ago

I have tested it with build 2049 and it works.
Why is it not closed?

#11 Updated by Juan Lucas Domínguez almost 12 years ago

  • Target version changed from 2.0.0-devel-2048 to 2.0.0-devel-2050

#12 Updated by Juan Lucas Domínguez almost 12 years ago

  • Status changed from Under review to New

#13 Updated by Juan Lucas Domínguez almost 12 years ago

  • Status changed from New to Fixed

#14 Updated by María Maluenda over 11 years ago

  • File gvSIG.log added
  • Status changed from Fixed to Under review

1.- Open gvSIG BN 2051
2.- Open new view (23030)
3.- Add new layer--> WFS / http://188.64.1.61/cgi-bin/tinyows?service=wfs&version=1.1.0&request=getcapabilities/ Next/Next
4.- Enable Show layer names and select Layer= municipalities
5.- Click Next, check that appears by default srs=EPSG 3067, you can't change.
6.- Click Ok
A warning message and isn't displayed WFS layer
Attached .log

#15 Updated by Jukka Rahkonen over 11 years ago

This seems to happen because the connection URL contains the request=getcapabilities part
http://188.64.1.61/cgi-bin/tinyows?service=wfs&version=1.1.0&request=getcapabilities
gvSIG creates the following request

service=wfs&version=1.1.0&request=getcapabilities&REQUEST=GetFeature&SERVICE=WFS&TYPENAME=lv:municipalities&PROPERTYNAME=lv:suuralue,lv:avi,lv:maakunta,lv:seutukunta,lv:kunta,lv:suural_ni1,lv:suural_ni2,lv:avi_ni1,lv:avi_ni2,lv:maaku_ni1,lv:maaku_ni2,lv:seutuk_ni1,lv:seutuk_ni2,lv:kunta_ni1,lv:kunta_ni2,lv:kieli_ni1,lv:kieli_ni2,lv:kaupunki,lv:shape_leng,lv:shape_area,lv:the_geom&VERSION=1.1.0&EXCEPTIONS=XML&MAXFEATURES=1000&NAMESPACE=xmlns(lv=http://latuviitta.fi/)&RESULTTYPE=hits

There are both request=getcapabilities and REQUEST=GetFeature. TinyOWS server is sending back answer to getcapabilities while gvSIG is awaiting answer for GetFeature&RESULTTYPE=hits.

Without request=getcapabilities in the connection string everything seems to work OK. I do not know what server should do in this case. It would be most safe if gvSIG would not send the unnecessary request=getcapabilities.

#16 Updated by Jukka Rahkonen over 11 years ago

More information: If I try to read a layer from WFS with the URL which contains that unnecessary "getcapabilities" then gvSIG starts to behave very badly. If I click on the table of contains for removing the layer the CPU load is reaching 100% for a long time. The whole computer gets jammed and the only way to continue seems to be to kill the gvsig-desktop.exe process from task manager.
I tested this with Windows XP and gvSIG 2.0.0 2051 win-x86-standard-withjre.

#17 Updated by Juan Lucas Domínguez over 11 years ago

Thanks Jukka for those tests.

Note for myself: A.Falciano's issue is probably caused by an error in: org.gvsig.gpe.prov.gml.parser.v2.geometries.MultiPolygonTypeBinding, parseTag

#18 Updated by Juan Lucas Domínguez over 11 years ago

I don't think this is really a bug because the URL used is not right and the server is not behaving properly (I think it should not accept two occurrences of "request"). I have added a warning to the user if a suspicious string is found in the URL.

Nevertheless, there is still a problem described by Antonio Falciano which I will address soon.

#19 Updated by Jukka Rahkonen over 11 years ago

Hi,

It is perhaps not so straight forward. It is true that the URL used for making connection is odd. However, it does return a valid GetCapabilities response and if you see inside the document http://188.64.1.61/cgi-bin/tinyows?service=WFS&version=1.1.0&request=GetCapabilities there are these entries:

<ows:Operation name="GetFeature">
<ows:DCP>
<ows:HTTP><ows:Get xlink:href="http://188.64.1.61/cgi-bin/tinyows?"/>
</ows:HTTP>
</ows:DCP>
<ows:DCP><ows:HTTP>
<ows:Post xlink:href="http://188.64.1.61/cgi-bin/tinyows"/>
</ows:HTTP>
</ows:DCP>

If WFS standard is followed strictly the client should use those URLs which are advertised in the GetCapabilities and not just simply use the same base URL that was used for GetCapabilities.
It is known that GetCapabilities can advertise wrong URLs for GetFeature (and same with GetMaps in WMS services). Some WMS clients are asking user to select between the same base URL used for GetCapabilities of the URL that comes with the GetCapabilities response. Perhaps WFS client could behave in a similar way too.

#20 Updated by Juan Lucas Domínguez over 11 years ago

  • Status changed from Under review to New
  • Target version changed from 2.0.0-devel-2050 to 2.0.0-devel-2052

#21 Updated by Juan Lucas Domínguez over 11 years ago

  • Status changed from New to Fixed

gvsig-gpe:r270

Added parsing for the surfaceMembers element (multipolygon).

Unfortunately, in server:

http://wms.pcn.minambiente.it/cgi-bin/mapserv.exe?map=/ms_ogc/wfs/Autorita_bacino.map

only EPSG:4326 is available (using new order: first latitude then longitude) so gvSIG paints it flipped (see image italy-flipped.jpg)

#22 Updated by María Maluenda over 11 years ago

  • Status changed from Fixed to Closed

Closed in the gvSIG build 2056.
I tested:
1.- Open gvSIG BN 2056
2.- Open new view (23030)
3.- Add new layer--> WFS / http://188.64.1.61/cgi-bin/tinyows?
4.- Enable Show layer names and select Layer= municipalities
5.- Click Next, check that appears by default srs=EPSG 3067, you can't change.
6.- Click Ok
Layer is loaded ok

Also available in: Atom PDF