ISIS-941: don't try to flush property changes from form for disabled properties.
Project: http://git-wip-us.apache.org/repos/asf/isis/repo Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/6f2296ce Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/6f2296ce Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/6f2296ce Branch: refs/heads/master Commit: 6f2296ce0d399435acb792df72c759825bfd245e Parents: 0ecd015 Author: Dan Haywood <[email protected]> Authored: Tue Nov 4 23:53:53 2014 +0000 Committer: Dan Haywood <[email protected]> Committed: Thu Nov 6 16:19:04 2014 +0000 ---------------------------------------------------------------------- .../isis/viewer/wicket/model/models/EntityModel.java | 15 +++++++++++++++ 1 file changed, 15 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/isis/blob/6f2296ce/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityModel.java ---------------------------------------------------------------------- diff --git a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityModel.java b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityModel.java index a2ec3df..3955c31 100644 --- a/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityModel.java +++ b/component/viewer/wicket/model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityModel.java @@ -36,6 +36,7 @@ import org.apache.isis.core.metamodel.adapter.oid.OidMarshaller; import org.apache.isis.core.metamodel.adapter.oid.RootOid; import org.apache.isis.core.metamodel.adapter.version.ConcurrencyException; import org.apache.isis.core.metamodel.consent.Consent; +import org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet; import org.apache.isis.core.metamodel.facets.object.bookmarkpolicy.BookmarkPolicyFacet; import org.apache.isis.core.metamodel.facets.object.viewmodel.ViewModelFacet; import org.apache.isis.core.metamodel.spec.ObjectSpecId; @@ -580,6 +581,20 @@ public class EntityModel extends BookmarkableModel<ObjectAdapter> implements UiH // for example, see ExampleTaggableEntity (in isisaddons-module-tags). // + // + // on the other hand, we mustn't attempt to apply changes for disabled properties... + // even if the property is persisted (it might be written to by an action), it is never updated by + // an edit. + // + // Fundamentally, then, any non-disabled property (whether persisted or not) should be updated in the + // Isis runtime. + // + + if(property.containsDoOpFacet(DisabledFacet.class)) { + // skip, as per comments above + continue; + } + final ObjectAdapter associate = scalarModel.getObject(); property.set(adapter, associate); }
