JavaEE 7をやってみよう。 Message Resource その2
その1のつづき。
エラーメッセージについて。
実はデフォルトでもエラーメッセージは用意されている。
「なら、作らなくていいじゃん!」と思うけど、
実はこれ、英語はわからんが、日本語はださい。
さすがに項目名もメッセージもこのままは使えないっしょ。
というわけで、
既存メッセージを上書きする定義をfaces-config.xmlに追加する。
<?xml version="1.0" encoding="UTF-8"?> <faces-config xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd" version="2.2"> <application> <locale-config> <default-locale>ja</default-locale> </locale-config> <message-bundle>resources.message</message-bundle> <resource-bundle> <base-name>resources.itemname</base-name> <var>itemName</var> </resource-bundle> </application> </faces-config>
その1でも書いたものと同じだけど
今回着目するのは、message-bundleタグ。
ここに、resource-bundleと同じ要領でファイルを指定すれば良い。
追加したファイルはこんな。
- message_ja.properites
javax.faces.component.UIInput.REQUIRED = {0}は、必須なのです。(´・ω・`)
- message_en.properites
javax.faces.component.UIInput.REQUIRED = {0} is required. Please input {0}.(´・ω・`)
実行するとこうなる。
resouce-bundleと合わせ技でこうなる。
最後に、faces-config.xmlのdefault-localeをenに変えるとちゃんと英語になる。
な!
しかし、やり方調べるのはしんどいけど、
便利な世の中になったものよのう。
メッセージを定数持ちさせてた大昔が懐かしい。