You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Johan Compagner (JIRA)" <ji...@apache.org> on 2007/11/03 14:01:51 UTC
[jira] Closed: (WICKET-1117) FormComponent.setType is called in
AbstractTextComponent.onBeforeRender
[ https://issues.apache.org/jira/browse/WICKET-1117?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Johan Compagner closed WICKET-1117.
-----------------------------------
Resolution: Fixed
instead of getType() == null we have now !getFlag(TYPE_RESOLVED)
> FormComponent.setType is called in AbstractTextComponent.onBeforeRender
> -----------------------------------------------------------------------
>
> Key: WICKET-1117
> URL: https://issues.apache.org/jira/browse/WICKET-1117
> Project: Wicket
> Issue Type: Improvement
> Components: wicket
> Affects Versions: 1.3.0-beta4
> Environment: Linux
> Reporter: Bruno Borges
> Assignee: Johan Compagner
> Fix For: 1.3.0-beta5
>
>
> The method FormComponent.setType() is called in onBeforeRender() and this will happen everytime, without having changes in the Model.
> The only way I see to change the Model's Component, is calling setModel().
> So, my suggestion is to override Component.setModel in AsbtractTextComponent calling super.setModel, and after that update the type.
> public Component setModel(final IModel model)
> {
> Component component = super.setModel(model);
> updateType();
> return component;
> }
> protected void updateType()
> {
> if (getType() == null)
> {
> // Set the type, but only if it's not a String (see WICKET-606).
> // Otherwise, getConvertEmptyInputStringToNull() won't work.
> Class type = getModelType(getModel());
> if (!String.class.equals(type))
> {
> setType(type);
> }
> }
> }
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.