[ 
https://issues.apache.org/jira/browse/ISIS-852?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14096150#comment-14096150
 ] 

Jeroen van der Wal commented on ISIS-852:
-----------------------------------------

You're right! According to the documentation it should be possible. In Estatio 
we have never gone this route. Probably Dan can elaborate on this.

> Derived property cannot be written properly
> -------------------------------------------
>
>                 Key: ISIS-852
>                 URL: https://issues.apache.org/jira/browse/ISIS-852
>             Project: Isis
>          Issue Type: Bug
>          Components: Viewer: Wicket
>    Affects Versions: viewer-wicket-1.6.0
>            Reporter: Thomas Koren
>            Assignee: Dan Haywood
>
> when using the proposed modifyXxx syntax to make a derived property writable, 
> it is rendered as "disabled" in wicket viewer.
> {code:title=demo|borderStyle=solid}
>     public LocalDate getDerivedDate() { ... }
>     public void modifyDerivedDate(final LocalDate date) { ... }
> {code}
> when using the alternative setXxx syntax, the UI component is writable. but 
> in this case, the value of the derived property is not written to the 
> persisted property.
> {code:title=demo|borderStyle=solid}
>     // {{ BeginAt (property)
>     @javax.jdo.annotations.Persistent
>     private DateTime beginAt;
>     @Disabled
>     @javax.jdo.annotations.Column(allowsNull = "false")
>     public DateTime getBeginAt() {
>         return beginAt;
>     }
>     public void setBeginAt(final DateTime beginAt) {
>         this.beginAt = beginAt;
>     }
>     // }}
>     // {{ DerivedDate (property)
>     @NotPersisted
>     @NotPersistent
>     public LocalDate getDerivedDate() {
>         return getBeginAt().toLocalDate();
>     }
>     public void setDerivedDate(final LocalDate beginDate) {
>         setBeginAt(getBeginAt().withDate(beginDate.getYear(), 
> beginDate.getMonthOfYear(), beginDate.getDayOfMonth()));
>     }
>     // }}
> {code}
> it seems like the value set by the derived property gets overwritten by the 
> original/old value of the persisted property that is displayed in the wicket 
> component.
> therefore it might only be an issue, if original and derived properties are 
> members of the same entity and displayed via wicket viewer.
> some background:
> i try to use 3 ui components  (= derived properties: date, hour, minute) to 
> set a single persisted DateTime property.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to