If the datastore
has a non AUTO_COMMIT transaction then all the changes of features being
made through FeatureStore interface are not directly persisted back to the
datastore (that’s true at least for shapefiles). And if you want to
persist changes you have to just commit transaction Transaction.commit() –
that rewrites/adds/removes modified/added/removed features had been collected
in the transaction. By default in UDIG non AUTO_COMMIT transaction is
used… In user interface there is a button “Commit changes”
..
Especially for
shapefiles: there were different bugs in UDIG when shapefile datastore has been
locked in READ mode and transaction never can be committed.
Probably I can help where
is the problem if you give more details.. I have been struggling a lot of with
shapefiles writing..
Vitali.
From:
udig-devel-bounces@xxxxxxxxxxxxxxxxxxxxx
[mailto:udig-devel-bounces@xxxxxxxxxxxxxxxxxxxxx] On Behalf Of Johan C. de Koning
Sent: Friday, February 10, 2006
3:30 PM
To: 'User-friendly Desktop
Internet GIS'
Subject: [udig-devel] Attribute
editing
Hello,
When I change an attribute of a feature, the new
value is not stored inside my own datastore (but also in common datastores like
the shapefile). There is one excepting that when also the geometry of the
feature is edited. As far as I can see is this because of the implementation of
the FeatureWriter which only triggers changes to the geometry and not the
attribute. Is this true? Or should I also have to use another interface to
trigger inside my FeatureWriter that an attribute is changed? Looping to all
the features to see if there are changes is in my opinion too expensive.
Best regards,
Johan de Koning