Hi Sven,

I think i18n uses the full name (i.e it uses clazz.getName() ). See line 135 of ComponentStringResourceLoader.
Hi Martin,

it's the same as for other i18n strings, e.g. validators:

They use the simple class name as resource key too.

Regards
Sven


On 08/08/2014 10:40 AM, Martin Grigorov wrote:
Hi,

While adding an entry to the migration guide about the new way to set
custom CSS class names [1] I realized a small problem:

What if the application needs to use the same functionality for its own
class with a simple name matching of of the Wicket's ones ?
For example "Folder"
(org.apache.wicket.extensions.markup.html.repeater.tree.content.Folder)
At the moment Wicket-extenstions' Initializer.properties define these:
Folder.CSS.other=tree-folder-other
Folder.CSS.closed=tree-folder-closed
Folder.CSS.open=tree-folder-open
Folder.CSS.selected=selected

so if the application has class com.example.Folder then these keys cannot
be used. OK, it will use custom keys, but suppose the application uses
Folder.CSS.mine=value for its com.example.Folder and in some later version
Wicket introduce the same key (mine) for its Tree Folder. Boom! The
application will have to change its key to something new to avoid the clash.

Should we use the full name instead ?

1.
https://cwiki.apache.org/confluence/display/WICKET/Migration+to+Wicket+7.0#MigrationtoWicket7.0-Usei18npropertyfilesforCSSclassnamesWICKET-5257


Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov



Reply via email to