У меня есть приложение SEAM 2.2.2, работающее на JBoss AS6.
Приложение настроено на несколько языков
В каталоге развертывания JBoss /jbossweb.sar/server.xml я сопоставил несколько разных доменов, используя следующие записи узла.
<Host name="myApp">
<Alias>www.myapp.com</Alias>
<Alias>myapp.com</Alias>
<Alias>www.myapp.sv</Alias>
<Alias>myapp.sv</Alias>
<Valve className="org.apache.catalina.valves.AccessLogValve"
prefix="processor" suffix=".log" pattern="common"
directory="${jboss.server.home.dir}/log"/>
<Valve className="org.jboss.web.tomcat.service.jca.CachedConnectionValve"
cachedConnectionManagerObjectName="jboss.jca:service=CachedConnectionManager"
transactionManagerObjectName="jboss:service=TransactionManager" ></Valve>
</Host>
Мы должны быть в состоянии гарантировать, что все посетители, которые заходят на www.myapp.sv, используют шведский язык по умолчанию, даже если их браузер по умолчанию использует английский.
Каков наилучший способ добиться этого? Мое первоначальное предположение состояло в том, чтобы проверить, какая локаль установлена при запросе страницы, а затем использовать Seam localeSelector, чтобы переопределить значение по умолчанию, установленное браузером, но это похоже на взлом и потенциально расточительно, поскольку пакеты ресурсов будут загружены, а затем перезагружены?
Есть ли способ «перехватить» первоначальный выбор локали и заменить его на другой, основанный на расширении домена?
Спасибо