[
https://issues.apache.org/jira/browse/WICKET-1477?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Igor Vaynberg resolved WICKET-1477.
-----------------------------------
Resolution: Won't Fix
Assignee: Igor Vaynberg
the way dataview is created and managed inside datatable is datatable's
encapsulated implementation detail which it chooses not to expose. this has
nothing to do with where the dataview is added, how, and when. this is a design
choice that was made.
you can still tweak it by moving it in onbeforerender(), but you are doing so
at your own risk.
> Constructor code obstructs extendibility of components
> ------------------------------------------------------
>
> Key: WICKET-1477
> URL: https://issues.apache.org/jira/browse/WICKET-1477
> Project: Wicket
> Issue Type: Improvement
> Components: wicket, wicket-extensions
> Affects Versions: 1.3.2
> Reporter: Rens Verhage
> Assignee: Igor Vaynberg
> Fix For: 1.4-M1
>
>
> A lot of components contain way too much initializing code in their
> constructors. In my opinion a constructor ideally should only call super and
> set some private properties. In the current situation I'm very limited in
> extending components for custom usage. An example:
> I'd like to change the hierarchy of the DataGridView in a DataTable.
> Therefore I'd like to extend DataTable. However, since the DataTable
> constructs its DataGridView inside its constructor, I'm obliged to implement
> my own DataTable by copy pasting everything from the wicket-extensions
> DataTable class. I can live with that, but now I have lost the ability to add
> toolbars to my DataTable as the AbstractToolbar expects a wicket-extensions
> DataTable as one of its constructor parameters. Is it possible to revise
> Wicket's components and move initializing code to a init() method so I can
> just override 1 simple method instead of reimplementing the whole Wicket
> framework ;) ?
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.