1 Reply Latest reply on Apr 16, 2012 1:42 PM by gswanton

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

    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>