3

私はJSLTを使用しようとしています。私はいくつかの指示に従いました。

  1. xampppにTomcatをインストールし、コントロールパネルでアクティブにしましたが、ポート8080で正常に動作しています。
  2. WEB-INF\lib ディレクトリに「jstl-1.2.jar」ファイルと Messages_en_US.properties を追加しました

これは私のtest.jspです:

<fmt:setLocale value="en_US" scope="application"/>
<fmt:setBundle basename="Messages"/>
<fmt:message key="welcome" />

<h1>test</h1>

<p>Counting to three:</p>
<% for (int i=1; i<4; i++) { %>
<p>This number is <%= i %>.</p>
<% } %>
<p>Done counting.</p>

カウントが機能したので、私のjspは有効です。しかし、ようこそは???welcome???と表示されます。

私は何を間違っていますか?バンドルを正しいディレクトリに配置していますか? メッセージバンドルをクラスとWEB-INFに入れてみました-助けにはなりません。サーバーの再起動も試みましたが、役に立ちませんでした。

文字列バンドルを使用するにはどうすればよいですか? 複数のバンドルを使用するにはどうすればよいですか?

乾杯、

4

1 に答える 1

8

多くのことが起こる可能性があります。

あなたが言う時

<fmt:setLocale value="en_US" ... />

それはあなたが持っているべきであることを意味しますMessages_en.propertiesまたはMessages_en-US.properties。使用する

<fmt:setBundle basename="Messages" var="msg" />

ロードされたメッセージを現在のスコープ内の変数に割り当てる必要があります。メッセージを印刷する必要がある場合は、次を使用する必要があります

<fmt:message key="welcome" bundle="${msg}" />

メッセージを表示します。

于 2012-07-12T19:22:56.970 に答える