API / Apache Wicket Interview questions
How does Wicket support internationalization (i18n)?
Wicket resolves user-facing text through a chain of .properties resource bundle files rather than hardcoding strings in Java or HTML, and picks the right file automatically based on the current Locale.
For a given component, Wicket looks for a matching key first in a properties file scoped to that specific component class (e.g. MyPanel_fr.properties), then falls back up through the component's containing Page, then the Application, then a shared global bundle — letting an application override just the strings that differ for a specific component while sharing common ones everywhere else. Components pull these strings via getString("key") or a StringResourceModel, and the active Locale is typically taken from the browser's Accept-Language header or set explicitly per session.
Beyond static text, Wicket's IConverter mechanism handles locale-aware formatting and parsing for things like dates and numbers, so a form field can correctly interpret "12/03/2026" differently depending on whether the active locale expects day-first or month-first ordering.
More Related questions...