[
https://issues.apache.org/jira/browse/ISIS-538?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16840275#comment-16840275
]
ASF subversion and git services commented on ISIS-538:
------------------------------------------------------
Commit 41b9488fe0df563b88a37f7def92f8c66d1e23a0 in isis's branch
refs/heads/ISIS-538 from danhaywood
[ https://gitbox.apache.org/repos/asf?p=isis.git;h=41b9488 ]
ISIS-538: create placeholders dependent on RenderingHint
if 'COMPACT' mode (ie in a table) then don't bother to create the full regular
widgets, because they will never be rendered. And vice versa
> Improve performance of rendering lists (in Wicket viewer)
> ---------------------------------------------------------
>
> Key: ISIS-538
> URL: https://issues.apache.org/jira/browse/ISIS-538
> Project: Isis
> Issue Type: Improvement
> Components: Core: Viewer: Wicket
> Affects Versions: viewer-wicket-1.2.0
> Reporter: Dan Haywood
> Assignee: Dan Haywood
> Priority: Minor
> Fix For: 1.18.0
>
>
> rendering a Lease, showing LeaseUnit in table (they would be in view mode).
> Even so, we compute the choices etc, even though never used (see stack trace).
> In ScalarPanelAbstract#buildGui(), we have:
> private void buildGui() {
>
> // REVIEW: this is nasty, both write to the same entityLink field
> // even though only one is used
> componentIfCompact = addComponentForCompact();
> componentIfRegular = addComponentForRegular();
> Brands.findUniqueNames() line: 46
> LeaseUnit.choicesBrandName() line: 278
> NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not
> available [native method]
> NativeMethodAccessorImpl.invoke(Object, Object[]) line: not available
> DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: not available
> Method.invoke(Object, Object...) line: not available
> MethodExtensions.invoke(Method, Object, Object[]) line: 50
> MethodExtensions.invoke(Method, Object) line: 45
> AdapterInvokeUtils.invoke(Method, ObjectAdapter) line: 44
> PropertyChoicesFacetViaMethod.getChoices(ObjectAdapter, SpecificationLoader)
> line: 72
> OneToOneAssociationImpl.getChoices(ObjectAdapter) line: 248
> ScalarModel$Kind$1.getChoices(ScalarModel, ObjectAdapter[]) line: 163
> ScalarModel.getChoices(ObjectAdapter[]) line: 584
> ValueChoicesSelect2Panel.getChoiceMementos(ObjectAdapter[]) line: 93
> ValueChoicesSelect2Panel.setChoices(ObjectAdapter[]) line: 194
> ValueChoicesSelect2Panel.addComponentForRegular() line: 76
> ValueChoicesSelect2Panel(ScalarPanelAbstract).buildGui() line: 178
> ValueChoicesSelect2Panel(ScalarPanelAbstract).onBeforeRender() line: 147
> ValueChoicesSelect2Panel(Component).internalBeforeRender() line: 923
> ValueChoicesSelect2Panel(Component).beforeRender() line: 991
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)