Opened 16 years ago

Closed 16 years ago

#222 closed defect (fixed)

WFS digitizing failed when using GeoServer 1.6.2 due to missing links in xsi:schemaLocation

Reported by: astrid_emde Owned by: astrid_emde
Priority: major Milestone: 2.5 release
Component: administration Version: 2.5 rc6
Keywords: WFS, Transaction, GeoServer 1.6.x, WFS 1.0.0 Cc: christoph

Description (last modified by astrid_emde)

GeoServer 1.6.x is less tolerant concerning the xsi:schemaLocation values that has to be defined in the Transcation-Request. This follows the WFS 1.0.0 Specification.

The definition of the following values is also needed as schemaLocation-values:

  • namespaceLocation of the FeatureType
  • describeFeatureType-Request

Change History (9)

comment:1 by astrid_emde, 16 years ago

Description: modified (diff)

comment:2 by astrid_emde, 16 years ago

Status: newassigned

to solve the problem I added two values(namespaceLocation,DescribeFeatureType-request) to the SchemaLocation in the Transaction_Request.

This happened in two files:

Have a look at the revision: http://trac.osgeo.org/mapbender/browser/branches/2.5/http/php/mod_wfs.php?rev=2455 http://trac.osgeo.org/mapbender/browser/branches/2.5/http/javascripts/wfs.js?rev=2456

comment:3 by astrid_emde, 16 years ago

There is one thing you have to change, when you use GeoServer (seems to be a bug in GeoServer 1.6)

The Capabilities-document defines the Onlineresouce like this for Post and Get: http://localhost:8080/geoserver/wfs?request=DescribeFeatureType

But in the Transaction-request GeoServer only accepts the following SchemaLocation-value for DescribeFeaturetype. http://localhost:8080/geoserver/wfs/DescribeFeatureType?typename=topp:poi

How should Mapbender know this?

My workaround was to go to the Mapbender Database and change the colum wfs.wfs_describefeaturetype to --> http://localhost:8080/geoserver/wfs/DescribeFeatureType?

There will be a ticket in the GeoServer-trac to find a solution.

comment:4 by astrid_emde, 16 years ago

Cc: mapbender_dev@… added; christoph removed
Resolution: fixed
Status: assignedclosed

news about Mapbender 2.5 and GeoServer 1.6.x

-> bugfixes for version 2.5

comment:5 by astrid_emde, 16 years ago

I made a ticket in the GeoServer issue tracker:

http://jira.codehaus.org/browse/GEOS-1938

comment:6 by astrid_emde, 16 years ago

Cc: christoph added; mapbender_dev@… removed
Resolution: fixed
Status: closedreopened

digitizing failed, when & appears in the schema-location of the transaction-request.

--> a solution would be to use the POST-Request definition from the Capabilities-document instead of the GET-definition. At the moment Mapbender always uses the GET values. This does not make sense as the scripts always use POST.

Change Request for WFS

When loading the WFS Mapbender imports the only the GET DCPType for each Request. But the Scripts use POST for the requests. It would make more sense to use the POST information from the Capabilities document from the beginning. If we need the GET Onlineresource too we should add new database columns to handle the different informations

comment:7 by astrid_emde, 16 years ago

Version: 2.5 rc22.5 rc6

comment:8 by astrid_emde, 16 years ago

I tried it already: changed GET to POST in the file /classes/class_wfs.php

first testing shows that all the functionality is still working

--> wfs geoserver-transaction is now successfull

comment:9 by astrid_emde, 16 years ago

Resolution: fixed
Status: reopenedclosed

I changed the code in class_wfs.php.

Note: See TracTickets for help on using tickets.