gswanton

WFS Shape update fails with"Transaction request include features that are not locked"

Discussion created by gswanton on Apr 14, 2012
Latest reply on Apr 16, 2012 by gswanton
Row lock matches and is not expired.

The same program updating only attributes succeeds. The insert commands using the same code to generate the shape element succeed.

Any input is appreciated.

Thanks in advance



Shape update command:

<wfs:Transaction service="WFS" version="1.1.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:sns="http://arcsync-db2/ArcGIS/services/arcsync-
db2_verWFS/GeoDataServer/WFSServer" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml">
  <wfs:LockId>{F76A80CC-DD6E-4323-9876-47A90123E7A8}</wfs:LockId>
  <wfs:Update typeName="ParcelsDeg">
    <wfs:Property>
      <wfs:Name>Shape</wfs:Name>
      <sns:Shape>
        <gml:MultiSurface srsName="urn:ogc:def:crs:EPSG:6.9:4326">
          <gml:surfaceMember>
            <gml:Polygon srsName="urn:ogc:def:crs:EPSG:6.9:4326">
              <gml:exterior>
                <gml:LinearRing>
                  <gml:posList>43.8331961631775 -70.1550843715668 43.8469076156616 -70.164457321167 43.8805103302002 -70.1047378778458 43.8331961631775 -
70.1550843715668 </gml:posList>
                </gml:LinearRing>
              </gml:exterior>
            </gml:Polygon>
          </gml:surfaceMember>
        </gml:MultiSurface>
      </sns:Shape>
    </wfs:Property>
    <ogc:Filter>
      <ogc:PropertyIsEqualTo>
        <ogc:PropertyName>ParcelsDeg:OBJECTID</ogc:PropertyName>
        <ogc:Literal>32</ogc:Literal>
      </ogc:PropertyIsEqualTo>
    </ogc:Filter>
  </wfs:Update>
</wfs:Transaction>


Response:

<ows:ExceptionReport version="1.1.0" language="en" xmlns:ows="http://www.opengis.net/ows">
  <ows:Exception exceptionCode="InvalidParameterValue">
    <ows:ExceptionText>Transaction request include features that are not locked.</ows:ExceptionText>
  </ows:Exception>
</ows:ExceptionReport>


Row lock which is asserted to not exist:

LOCK_ID                              OC_ID       ROW_ID      ISSUE_DATE              EXP_DATE
------------------------------------ ----------- ----------- ----------------------- -----------------------
F76A80CC-DD6E-4323-9876-47A90123E7A8 4           32          2012-04-14 17:25:53.000 2012-04-14 17:30:53.000

F76A80CC-DD6E-4323-9876-47A90123E7A8 LockId copied from xml above

The current time is: 17:26:26.71   (lock has not expired)




Update to 3 attributes generated by same code path modulo Propery is simple attribute vs Shape:

<wfs:Transaction service="WFS" version="1.1.0" xmlns:wfs="http://www.opengis.net
/wfs" xmlns:sns="http://arcsync-db2/ArcGIS/services/arcsync-db2_verWFS/GeoDataSe
rver/WFSServer" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.ope
ngis.net/gml">
  <wfs:LockId>{805EA613-6A16-43B1-8EFD-BD248AF6081A}</wfs:LockId>
  <wfs:Update typeName="ParcelsDeg">
    <wfs:Property>
      <wfs:Name>TYPE</wfs:Name>
      <wfs:Value>h</wfs:Value>
    </wfs:Property>
    <wfs:Property>
      <wfs:Name>MAPLOT</wfs:Name>
      <wfs:Value>16</wfs:Value>
    </wfs:Property>
    <wfs:Property>
      <wfs:Name>GRIDNO</wfs:Name>
      <wfs:Value>10</wfs:Value>
    </wfs:Property>
    <ogc:Filter>
      <ogc:PropertyIsEqualTo>
        <ogc:PropertyName>ParcelsDeg:OBJECTID</ogc:PropertyName>
        <ogc:Literal>32</ogc:Literal>
      </ogc:PropertyIsEqualTo>
    </ogc:Filter>
  </wfs:Update>
</wfs:Transaction>

Response:

<wfs:TransactionResponse version="1.1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml"

xmlns:ogc="http://www.opengis.net/ogc" xmlns:wfs="http://www.opengis.net/wfs">
  <wfs:TransactionSummary>
    <wfs:totalUpdated>1</wfs:totalUpdated>
  </wfs:TransactionSummary>
</wfs:TransactionResponse>

Outcomes