[
https://issues.apache.org/jira/browse/ISIS-1848?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16337731#comment-16337731
]
ASF subversion and git services commented on ISIS-1848:
-------------------------------------------------------
Commit a56f19dad5a628d059fd561c076aa3f5b6edca41 in isis's branch
refs/heads/maint-1.16.1 from [~danhaywood]
[ https://gitbox.apache.org/repos/asf?p=isis.git;h=a56f19d ]
ISIS-1848: ensures that FreeStandingList does not incorrectly return
java.lang.Object's specId, and adds new metamodel validator to detect this
situation in future.
> References of type java.lang.Object (sometimes) not rendered correctly in
> Wicket viewer
> ---------------------------------------------------------------------------------------
>
> Key: ISIS-1848
> URL: https://issues.apache.org/jira/browse/ISIS-1848
> Project: Isis
> Issue Type: Bug
> Affects Versions: 1.15.1
> Reporter: Dan Haywood
> Assignee: Dan Haywood
> Priority: Major
> Fix For: 1.16.1
>
>
> This is down to a race condition, I think.
> At any rate, the ObjectSpecificationOnStandaloneList for FreeStandingList
> (the internal pojo that holds the result of an action invocation) is asked
> for its ObjectSpecId. It tries to do this by asking for the value of the
> corresponding ObjectSpecIfFacet.
> However, no such facet (in some circumstances, presumably) is installed for
> this ObjectSpec, and so it searches up the hierarchy. The superclass is
> java.lang.Object, and so we return the ObjectSpecId for java.lang.Object.
> This in turn causes the cache of ObjectSpecId -> ObjectSpecification's to be
> corrupted, with java.lang.Object mapping to the list.
> In the Wicket viewer, when attempting to render a reference property of type
> java.lang.Object (such as the Task_object mixin for Estatio), the
> SpecificationLoader reports that a reference of this type is not isObject()
> (because it's using ObjectSpecificationOnStandaloneList), resulting in an
> UnknownPanel being selected to render the Wicket model for the reference
> property. This simply shows a toString().
> The fix, I think, is to not search up the hierarchy in the case of
> ObjectSpecIdFacet... an ObjectSpecification must be able to answer this
> question itself.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)