1

朝、ストライプ フレームワークを使用して、ブラウザーの言語に基づいてさまざまなファイルを読み込む方法を探しています。例えば

if (getLocal() == Local.US) load(testsheet_us);

jsp ファイルに関する同じ質問:

<c:if test="${local == Local.US")> include('about_us')</c:if>

または似たようなもの。

エリン

4

1 に答える 1

2

リクエストのローカルは actionBeanコンテキストにあります。actionBean では、次のようにコーディングできます。

if (getContext().getLocale() == Local.US) load(testsheet_us) {
    // do something
}

JSP では、次のように実行できます。

<%-- this will go into a general include file: --%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:set var="context" value="${actionBean.context}"/>
<% pageContext.setAttribute("US", java.util.Locale.US); %>

<c:if test="${context.locale.country == US}">
  <jsp:include page="about_us.jsp"/>
</c:if>

ただし、ロケールごとにレイアウトが異なる場合を除き、通常はResouceBundlesを使用してアプリケーションをローカライズします。ローカライズされたフィールドは次のようになります。

<fmt:message key="aboutus.name"/><br>
<fmt:message key="aboutus.companyVision"/><br>

Stripes は、リソースバンドルを使用して Stripes タグもローカライズします。Stripes ローカリゼーションStripes Multiple Resource Bundlesを参照してください。

于 2011-06-13T18:16:18.950 に答える