Если вы создаете файл свойств только с языком, он будет использоваться для всех вариантов: поэтому вместо page_en_GB.properties
вы можете иметь page_en.properties
, который будет использоваться для всех субполос en_ *. *
Вы также можете иметь простой page.peroperties
, который будет использоваться для всех, кто не вписывается в более конкретную категорию.
Обновление: Взять два, как полностью взять под контроль Locale
выбор.
Локаль в Wicket хранится в объекте Session
, им можно манипулировать, используя методы getLocale()
и setLocale()
. Одно это может дать вам решение, но вы также можете перехватывать вызовы этих методов для автоматического переопределения выбора локали.
//this is your application class
public class MyApplication extends WebApplication {
@Override
public Session newSession( Request req, Response res ) {
return new MySession( req )
}
}
//this is your session class
public class MySession extends WebSession {
public MySession( Request req ) {
super( req );
}
@Override
public void setLocale( Locale locale ) {
// your locale substitution code goes here, for example:
if( locale.getLanguage().equals( "en" ) ) {
super.setLocale( new Locale( "en", "GB" ) );
}
}
}
Это то, что вы ищете?