Web 開発再入門 #14 ― マルチロケール処理
fmockup
はじめに
サーバーサイドにおけるマルチロケールの処理を実現します。
英日中(en、ja、zh_CN)に対応します。
フォルダー・ファイル構成
D:\
└ Developments\
└ Workspace\
└ fmockup\
├ build\
├ sql\
├ src\
│ └ main\
│ ├ java\
│ │ └ cn\
│ │ └ com\
│ │ └ xxxx\
│ │ └ fmockup\
│ │ ├ action\
│ │ ├ controller\
│ │ ├ customizer\
│ │ ├ entity\
│ │ ├ mapper\
│ │ ├ response\
│ │ ├ service\
│ │ ├ util\
│ │ │ └ MessageUtil.java ← コレ
│ │ ├ validator\
│ │ └ validator_order\
│ └ resources\
│ ├ messages_en.properties ← コレ
│ ├ messages_ja.properties ← コレ
│ ├ messages_zh_CN.properties ← コレ
│ └ messages.properties ← コレ
├ vue-vite\
└ WinSW.NET-nnn\
ファイルの作成
- Eclipse で、ファイル “messages_en.properties”、“messages_ja.properties”、“messages_zh_CN.properties”、“messages.properties”、“MessageUtil.java” を作成する。
messages_en.properties
COMMON_ERROR_TITLE_SESSION_TIMEOUT_HAS_OCCURRED=Session timeout has occurred. COMMON_ERROR_TITLE_PLEASE_MODIFY_VALUE=Please modify value. MENU_ERROR_TITLE_MENU_LIST_DOES_NOT_EXIST=Menu List does not exist. LOGIN_ERROR_FORM_NO_USER_ID_IS_SPECIFIED=No User ID is specified. LOGIN_ERROR_FORM_NO_PASSWORD_IS_SPECIFIED=No Password is specified. LOGIN_ERROR_TITLE_USER_ID_OR_PASSWORD_IS_NOT_CORRECT=User ID or Password is not correct. LOGIN_ERROR_TITLE_THIS_ACCOUND_DOES_NOT_EXIST=This Actount does not exist. PASSWORD_ERROR_TITLE_INVALID_CURRENT_PASSWORD=Invalid Current Password. PASSWORD_ERROR_TITLE_ERROR_IN_PASSWORD_CHARACTER=Error in Password character. PASSWORD_ERROR_TITLE_ERROR_INVALID_NEW_PASSWORD=Invalid New Password. PASSWORD_ERROR_TITLE_ERROR_NEW_PASSWORD_AND_CONFIRM_PASSWORD_ARE_UNMATCHED=New Password and Confirm Password are unmatched. ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_DOES_NOT_EXIST=Your Account does not exist. ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_WAS_LOCKED_PLEASE_LOGOUT_AND_TRY_TO_LOGIN_AGAIN=Your Account was locked. Please logout, and try to login again. ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_WAS_LOCKED=Your Account was locked. Please logout. ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_IS_RESTRICTED=Your Account access is restricted. USER_ERROR_FORM_NO_USER_NAME_IS_SPECIFIED=No User Name is specified. USER_ERROR_FORM_ERROR_IN_USER_NAME_LENGTH=Error in User Name length. USER_ERROR_FORM_ERROR_IN_USER_NAME_CHARACTER=Error in User Name character. USER_ERROR_FORM_NO_CURRENT_PASSWORD_IS_SPECIFIED=No Current Password is specified. USER_ERROR_FORM_ERROR_IN_CURRENT_PASSWORD_LENGTH=Error in Current Password length. USER_ERROR_FORM_ERROR_IN_CURRENT_PASSWORD_CHARACTER=Error in Current Password character. USER_ERROR_FORM_NO_NEW_PASSWORD_IS_SPECIFIED=No New Password is specified. USER_ERROR_FORM_ERROR_IN_NEW_PASSWORD_LENGTH=Error in New Password length. USER_ERROR_FORM_ERROR_IN_NEW_PASSWORD_CHARACTER=Error in New Password character. USER_ERROR_FORM_NO_CONFIRM_PASSWORD_IS_SPECIFIED=No Confirm Password is specified. USER_ERROR_FORM_ERROR_IN_CONFIRM_PASSWORD_LENGTH=Error in Confirm Password length. USER_ERROR_FORM_ERROR_IN_CONFIRM_PASSWORD_CHARACTER=Error in Confirm Password character. USER_ERROR_FORM_ERROR_IN_USER_REMARK_LENGTH=Error in User Remark length. USER_ERROR_FORM_ERROR_IN_USER_REMARK_CHARACTER=Error in User Remark character. USER_ERROR_TITLE_USER_LIST_DOES_NOT_EXIST=User List does not exist. USER_ERROR_TITLE_THIS_USER_DOES_NOT_EXIST=This User does not exist. USER_ERROR_TITLE_THIS_USER_ALREADY_EXISTS=This User already exists. USER_ERROR_TITLE_USER_ROLE_LIST_DOES_NOT_EXIST=User Role List does not exist. USER_ERROR_TITLE_THIS_USER_ROLE_ALREADY_EXISTS=This User Role already exists. USER_ERROR_TITLE_THIS_USER_OR_ROLE_DOES_NOT_EXIST=This User or Role does not exist. ROLE_ERROR_FORM_NO_ROLE_NAME_IS_SPECIFIED=No Role Name is specified. ROLE_ERROR_FORM_ERROR_IN_ROLE_NAME_LENGTH=Error in Role Name length. ROLE_ERROR_FORM_ERROR_IN_ROLE_NAME_CHARACTER=Error in Role Name character. ROLE_ERROR_FORM_ERROR_IN_ROLE_REMARK_LENGTH=Error in Role Remark length. ROLE_ERROR_FORM_ERROR_IN_ROLE_REMARK_CHARACTER=Error in Role Remark character. ROLE_ERROR_TITLE_NOT_SELECT_ROLE_NAME=Not select Role Name. ROLE_ERROR_TITLE_ROLE_LIST_DOES_NOT_EXIST=Role List does not exist. ROLE_ERROR_TITLE_THIS_ROLE_DOES_NOT_EXIST=This Role does not exist. ROLE_ERROR_TITLE_THIS_ROLE_ALREADY_EXISTS=This Role already exists. ROLE_ERROR_TITLE_THIS_ROLE_TRANSACTION_DOES_NOT_EXIST=This Role Transaction does not exist. ROLE_ERROR_TITLE_THIS_ROLE_TRANSACTION_ALREADY_EXISTS=This Role Transaction already exists. ROLE_ERROR_TITLE_THIS_ROLE_OR_TRANSACTION_DOES_NOT_EXISTS=This Role or Transaction does not exist. ROLE_ERROR_TITLE_THIS_ROLE_IS_ASSIGNED_BY_USER=This Role is assigned by User. XXXX_ERROR_FORM_NO_XXXX_NAME_IS_SPECIFIED=No Xxxx Name is specified. XXXX_ERROR_FORM_ERROR_IN_XXXX_VALUE_LENGTH=Error in Xxxx Name length. XXXX_ERROR_FORM_ERROR_IN_XXXX_NAME_CHARACTER=Error in Xxxx Name character. XXXX_ERROR_FORM_NO_XXXX_VALUE_IS_SPECIFIED=No Xxxx Value is specified. XXXX_ERROR_FORM_ERROR_IN_XXXX_VALUE_LENGTH=Error in Xxxx Value length. XXXX_ERROR_FORM_ERROR_IN_XXXX_VALUE_CHARACTER=Error in Xxxx Value character. XXXX_ERROR_FORM_NO_XXXX_FLAG_IS_SPECIFIED=No Xxxx Flag is specified. XXXX_ERROR_FORM_ERROR_IN_XXXX_FLAG_LENGTH=Error in Xxxx Flag length. XXXX_ERROR_FORM_ERROR_IN_XXXX_FLAG_CHARACTER=Error in Xxxx Flag character. XXXX_ERROR_FORM_ERROR_IN_XXXX_REMARK_LENGTH=Error in Xxxx Remark length. XXXX_ERROR_FORM_ERROR_IN_XXXX_REMARK_CHARACTER=Error in Xxxx Remark character. XXXX_ERROR_TITLE_XXXX_LIST_DOES_NOT_EXIST=Xxxx List does not exist XXXX_ERROR_TITLE_THIS_XXXX_DOES_NOT_EXIST=This Xxxx does not exist. XXXX_ERROR_TITLE_THIS_XXXX_ALREADY_EXISTS=This Xxxx already exists. YYYY_ERROR_FORM_NO_YYYY_NAME_IS_SPECIFIED=No Yyyy Name is specified. YYYY_ERROR_FORM_ERROR_IN_YYYY_VALUE_LENGTH=Error in Yyyy Name length. YYYY_ERROR_FORM_ERROR_IN_YYYY_NAME_CHARACTER=Error in Yyyy Name character. YYYY_ERROR_FORM_NO_YYYY_VALUE_IS_SPECIFIED=No Yyyy Value is specified. YYYY_ERROR_FORM_ERROR_IN_YYYY_VALUE_LENGTH=Error in Yyyy Value length. YYYY_ERROR_FORM_ERROR_IN_YYYY_VALUE_CHARACTER=Error in Yyyy Value character. YYYY_ERROR_FORM_NO_YYYY_FLAG_IS_SPECIFIED=No Yyyy Flag is specified. YYYY_ERROR_FORM_ERROR_IN_YYYY_FLAG_LENGTH=Error in Yyyy Flag length. YYYY_ERROR_FORM_ERROR_IN_YYYY_FLAG_CHARACTER=Error in Yyyy Flag character. YYYY_ERROR_FORM_ERROR_IN_YYYY_REMARK_LENGTH=Error in Yyyy Remark length. YYYY_ERROR_FORM_ERROR_IN_YYYY_REMARK_CHARACTER=Error in Yyyy Remark character. YYYY_ERROR_TITLE_YYYY_LIST_DOES_NOT_EXIST=Yyyy List does not exist. YYYY_ERROR_TITLE_THIS_YYYY_DOES_NOT_EXIST=This Yyyy does not exist. YYYY_ERROR_TITLE_THIS_YYYY_ALREADY_EXISTS=This Yyyy already exists. ZZZZ_ERROR_FORM_NO_ZZZZ_NAME_IS_SPECIFIED=No Zzzz Name is specified. ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_VALUE_LENGTH=Error in Zzzz Name length. ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_NAME_CHARACTER=Error in Zzzz Name character. ZZZZ_ERROR_FORM_NO_ZZZZ_VALUE_IS_SPECIFIED=No Zzzz Value is specified. ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_VALUE_LENGTH=Error in Zzzz Value length. ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_VALUE_CHARACTER=Error in Zzzz Value character. ZZZZ_ERROR_FORM_NO_ZZZZ_FLAG_IS_SPECIFIED=No Zzzz Flag is specified. ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_FLAG_LENGTH=Error in Zzzz Flag length. ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_FLAG_CHARACTER=Error in Zzzz Flag character. ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_REMARK_LENGTH=Error in Zzzz Remark length. ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_REMARK_CHARACTER=Error in Zzzz Remark character. ZZZZ_ERROR_TITLE_ZZZZ_LIST_DOES_NOT_EXIST=Zzzz List does not exist. ZZZZ_ERROR_TITLE_THIS_ZZZZ_DOES_NOT_EXIST=This Zzzz does not exist. ZZZZ_ERROR_TITLE_THIS_ZZZZ_ALREADY_EXISTS=This Zzzz already exists.
messages_ja.propertiesCOMMON_ERROR_TITLE_SESSION_TIMEOUT_HAS_OCCURRED=セッションタイムアウトが発生しました。 COMMON_ERROR_TITLE_PLEASE_MODIFY_VALUE=値を修正してください。 MENU_ERROR_TITLE_MENU_LIST_DOES_NOT_EXIST=メニューリストが存在しません。 LOGIN_ERROR_FORM_NO_USER_ID_IS_SPECIFIED=ユーザー ID が指定されていません。 LOGIN_ERROR_FORM_NO_PASSWORD_IS_SPECIFIED=パスワードが指定されていません。 LOGIN_ERROR_TITLE_USER_ID_OR_PASSWORD_IS_NOT_CORRECT=ユーザー ID またはパスワードに誤りがあります。 LOGIN_ERROR_TITLE_THIS_ACCOUNT_DOES_NOT_EXIST=このアカウントは存在しません。 PASSWORD_ERROR_TITLE_INVALID_CURRENT_PASSWORD=現パスワードが正しくありません。 PASSWORD_ERROR_TITLE_ERROR_IN_PASSWORD_CHARACTER=パスワードの文字に誤りがあります。 PASSWORD_ERROR_TITLE_ERROR_INVALID_NEW_PASSWORD=新パスワードが正しくありません。 PASSWORD_ERROR_TITLE_ERROR_NEW_PASSWORD_AND_CONFIRM_PASSWORD_ARE_UNMATCHED=新パスワードとパスワード確認が一致しません。 ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_DOES_NOT_EXIST=あなたのアカウントは存在しません。 ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_WAS_LOCKED_PLEASE_LOGOUT_AND_TRY_TO_LOGIN_AGAIN=あなたのアカウントはロックされました。ログアウトし、再ログインしてください。 ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_WAS_LOCKED=あなたのアカウントはロックされました。ログアウトしてください。 ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_IS_RESTRICTED=あなたのアカウントのアクセスは制限されています。 USER_ERROR_FORM_NO_USER_NAME_IS_SPECIFIED=ユーザー名が指定されていません。 USER_ERROR_FORM_ERROR_IN_USER_NAME_LENGTH=ユーザー名の長さに誤りがあります。 USER_ERROR_FORM_ERROR_IN_USER_NAME_CHARACTER=ユーザー名の文字に誤りがあります。 USER_ERROR_FORM_NO_CURRENT_PASSWORD_IS_SPECIFIED=現パスワードが指定されていません。 USER_ERROR_FORM_ERROR_IN_CURRENT_PASSWORD_LENGTH=現パスワードの長さに誤りがあります。 USER_ERROR_FORM_ERROR_IN_CURRENT_PASSWORD_CHARACTER=現パスワードの文字に誤りがあります。 USER_ERROR_FORM_NO_NEW_PASSWORD_IS_SPECIFIED=新パスワードが指定されていません。 USER_ERROR_FORM_ERROR_IN_NEW_PASSWORD_LENGTH=新パスワードの長さに誤りがあります。 USER_ERROR_FORM_ERROR_IN_NEW_PASSWORD_CHARACTER=新パスワードの文字に誤りがあります。 USER_ERROR_FORM_NO_CONFIRM_PASSWORD_IS_SPECIFIED=パスワード確認が指定されていません。 USER_ERROR_FORM_ERROR_IN_CONFIRM_PASSWORD_LENGTH=パスワード確認の長さに誤りがあります。 USER_ERROR_FORM_ERROR_IN_CONFIRM_PASSWORD_CHARACTER=パスワード確認の文字に誤りがあります。 USER_ERROR_FORM_ERROR_IN_USER_REMARK_LENGTH=ユーザーコメントの長さに誤りがあります。 USER_ERROR_FORM_ERROR_IN_USER_REMARK_CHARACTER=ユーザーコメントの文字に誤りがあります。 USER_ERROR_TITLE_USER_LIST_DOES_NOT_EXIST=ユーザーリストが存在しません。 USER_ERROR_TITLE_THIS_USER_DOES_NOT_EXIST=このユーザーは存在しません。 USER_ERROR_TITLE_THIS_USER_ALREADY_EXISTS=このユーザーは既に存在します。 USER_ERROR_TITLE_USER_ROLE_LIST_DOES_NOT_EXIST=ユーザー・ロールリストが存在しません。 USER_ERROR_TITLE_THIS_USER_ROLE_ALREADY_EXISTS=このユーザー・ロールは既に存在します。 USER_ERROR_TITLE_THIS_USER_OR_ROLE_DOES_NOT_EXIST=このユーザーまたはロールは存在しません。 ROLE_ERROR_FORM_NO_ROLE_NAME_IS_SPECIFIED=ロール名が指定されていません。 ROLE_ERROR_FORM_ERROR_IN_ROLE_NAME_LENGTH=ロール名の長さに誤りがあります。 ROLE_ERROR_FORM_ERROR_IN_ROLE_NAME_CHARACTER=ロール名の文字に誤りがあります。 ROLE_ERROR_FORM_ERROR_IN_ROLE_REMARK_LENGTH=ロールコメントの長さに誤りがあります。 ROLE_ERROR_FORM_ERROR_IN_ROLE_REMARK_CHARACTER=ロールコメントの文字に誤りがあります。 ROLE_ERROR_TITLE_NOT_SELECT_ROLE_NAME=ロール名が選択されていません。 ROLE_ERROR_TITLE_ROLE_LIST_DOES_NOT_EXIST=ロールリストが存在しません。 ROLE_ERROR_TITLE_THIS_ROLE_DOES_NOT_EXIST=このロールは存在しません。 ROLE_ERROR_TITLE_THIS_ROLE_ALREADY_EXISTS=このロールは既に存在します。 ROLE_ERROR_TITLE_THIS_ROLE_TRANSACTION_DOES_NOT_EXIST=このロール・トランザクションは存在しません。 ROLE_ERROR_TITLE_THIS_ROLE_TRANSACTION_ALREADY_EXISTS=このロール・トランザクションは既に存在します。 ROLE_ERROR_TITLE_THIS_ROLE_OR_TRANSACTION_DOES_NOT_EXISTS=このロールまたはトランザクションは存在しません。 ROLE_ERROR_TITLE_THIS_ROLE_IS_ASSIGNED_BY_USER=このロールはユーザーに割り当てられています。 XXXX_ERROR_FORM_NO_XXXX_NAME_IS_SPECIFIED=XXXX名が指定されていません。 XXXX_ERROR_FORM_ERROR_IN_XXXX_VALUE_LENGTH=XXXX名の長さに誤りがあります。 XXXX_ERROR_FORM_ERROR_IN_XXXX_NAME_CHARACTER=XXXX名の文字に誤りがあります。 XXXX_ERROR_FORM_NO_XXXX_VALUE_IS_SPECIFIED=XXXX値が指定されていません。 XXXX_ERROR_FORM_ERROR_IN_XXXX_VALUE_LENGTH=XXXX値の長さに誤りがあります。 XXXX_ERROR_FORM_ERROR_IN_XXXX_VALUE_CHARACTER=XXXX値の文字に誤りがあります。 XXXX_ERROR_FORM_NO_XXXX_FLAG_IS_SPECIFIED=XXXXフラグが指定されていません。 XXXX_ERROR_FORM_ERROR_IN_XXXX_FLAG_LENGTH=XXXXフラグの長さに誤りがあります。 XXXX_ERROR_FORM_ERROR_IN_XXXX_FLAG_CHARACTER=XXXXフラグの文字に誤りがあります。 XXXX_ERROR_FORM_ERROR_IN_XXXX_REMARK_LENGTH=XXXXコメントの長さに誤りがあります。 XXXX_ERROR_FORM_ERROR_IN_XXXX_REMARK_CHARACTER=XXXXコメントの文字に誤りがあります。 XXXX_ERROR_TITLE_XXXX_LIST_DOES_NOT_EXIST=XXXXリストは存在しません。 XXXX_ERROR_TITLE_THIS_XXXX_DOES_NOT_EXIST=このXXXXは存在しません。 XXXX_ERROR_TITLE_THIS_XXXX_ALREADY_EXISTS=このXXXXは既に存在します。 YYYY_ERROR_FORM_NO_YYYY_NAME_IS_SPECIFIED=YYYY名が指定されていません。 YYYY_ERROR_FORM_ERROR_IN_YYYY_VALUE_LENGTH=YYYY名の長さに誤りがあります。 YYYY_ERROR_FORM_ERROR_IN_YYYY_NAME_CHARACTER=YYYY名の文字に誤りがあります。 YYYY_ERROR_FORM_NO_YYYY_VALUE_IS_SPECIFIED=YYYY値が指定されていません。 YYYY_ERROR_FORM_ERROR_IN_YYYY_VALUE_LENGTH=YYYY値の長さに誤りがあります。 YYYY_ERROR_FORM_ERROR_IN_YYYY_VALUE_CHARACTER=YYYY値の文字に誤りがあります。 YYYY_ERROR_FORM_NO_YYYY_FLAG_IS_SPECIFIED=YYYYフラグが指定されていません。 YYYY_ERROR_FORM_ERROR_IN_YYYY_FLAG_LENGTH=YYYYフラグの長さに誤りがあります。 YYYY_ERROR_FORM_ERROR_IN_YYYY_FLAG_CHARACTER=YYYYフラグの文字に誤りがあります。 YYYY_ERROR_FORM_ERROR_IN_YYYY_REMARK_LENGTH=YYYYコメントの長さに誤りがあります。 YYYY_ERROR_FORM_ERROR_IN_YYYY_REMARK_CHARACTER=YYYYコメントの文字に誤りがあります。 YYYY_ERROR_TITLE_YYYY_LIST_DOES_NOT_EXIST=YYYYリストは存在しません。 YYYY_ERROR_TITLE_THIS_YYYY_DOES_NOT_EXIST=このYYYYは存在しません。 YYYY_ERROR_TITLE_THIS_YYYY_ALREADY_EXISTS=このYYYYは既に存在します。 ZZZZ_ERROR_FORM_NO_ZZZZ_NAME_IS_SPECIFIED=ZZZZ名が指定されていません。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_VALUE_LENGTH=ZZZZ名の長さに誤りがあります。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_NAME_CHARACTER=ZZZZ名の文字に誤りがあります。 ZZZZ_ERROR_FORM_NO_ZZZZ_VALUE_IS_SPECIFIED=ZZZZ値が指定されていません。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_VALUE_LENGTH=ZZZZ値の長さに誤りがあります。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_VALUE_CHARACTER=ZZZZ値の文字に誤りがあります。 ZZZZ_ERROR_FORM_NO_ZZZZ_FLAG_IS_SPECIFIED=ZZZZフラグが指定されていません。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_FLAG_LENGTH=ZZZZフラグの長さに誤りがあります。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_FLAG_CHARACTER=ZZZZフラグの文字に誤りがあります。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_REMARK_LENGTH=ZZZZコメントの長さに誤りがあります。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_REMARK_CHARACTER=ZZZZコメントの文字列に誤りがあります。 ZZZZ_ERROR_TITLE_ZZZZ_LIST_DOES_NOT_EXIST=ZZZZリストは存在しません。 ZZZZ_ERROR_TITLE_THIS_ZZZZ_DOES_NOT_EXIST=このZZZZは存在しません。 ZZZZ_ERROR_TITLE_THIS_ZZZZ_ALREADY_EXISTS=このZZZZは既に存在します。
messages_zh_CN.propertiesCOMMON_ERROR_TITLE_SESSION_TIMEOUT_HAS_OCCURRED=会话超时。 COMMON_ERROR_TITLE_PLEASE_MODIFY_VALUE=请修改输入值。 MENU_ERROR_TITLE_MENU_LIST_DOES_NOT_EXIST=菜单清单无存在。 LOGIN_ERROR_FORM_NO_USER_ID_IS_SPECIFIED=无指定用户 ID。 LOGIN_ERROR_FORM_NO_PASSWORD_IS_SPECIFIED=无指定密码。 LOGIN_ERROR_TITLE_USER_ID_OR_PASSWORD_IS_NOT_CORRECT=用户 ID 或密码错误。 LOGIN_ERROR_TITLE_THIS_ACCOUNT_DOES_NOT_EXIST=无存在这账号。 PASSWORD_ERROR_TITLE_INVALID_CURRENT_PASSWORD=现密码不正确。 PASSWORD_ERROR_TITLE_ERROR_IN_PASSWORD_CHARACTER=密码的文字错误。 PASSWORD_ERROR_TITLE_ERROR_INVALID_NEW_PASSWORD=新密码不正确。 PASSWORD_ERROR_TITLE_ERROR_NEW_PASSWORD_AND_CONFIRM_PASSWORD_ARE_UNMATCHED=新密码和密码确认不一致。 ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_DOES_NOT_EXIST=你的账号不存在。 ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_WAS_LOCKED_PLEASE_LOGOUT_AND_TRY_TO_LOGIN_AGAIN=你的账号被锁定了。请注销和重新注册。 ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_WAS_LOCKED=你的账号被锁定了。请注销。 ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_IS_RESTRICTED=你的账号的访问被限制。 USER_ERROR_FORM_NO_USER_NAME_IS_SPECIFIED=无指定用户名 USER_ERROR_FORM_ERROR_IN_USER_NAME_LENGTH=用户名的长度错误。 USER_ERROR_FORM_ERROR_IN_USER_NAME_CHARACTER=用户名的文字错误。 USER_ERROR_FORM_NO_CURRENT_PASSWORD_IS_SPECIFIED=无指定现密码。 USER_ERROR_FORM_ERROR_IN_CURRENT_PASSWORD_LENGTH=现密码的长度错误。 USER_ERROR_FORM_ERROR_IN_CURRENT_PASSWORD_CHARACTER=现密码的文字错误。 USER_ERROR_FORM_NO_NEW_PASSWORD_IS_SPECIFIED=无指定新密码。 USER_ERROR_FORM_ERROR_IN_NEW_PASSWORD_LENGTH=新密码的长度错误。 USER_ERROR_FORM_ERROR_IN_NEW_PASSWORD_CHARACTER=新密码的文字错误。 USER_ERROR_FORM_NO_CONFIRM_PASSWORD_IS_SPECIFIED=无指定密码确认。 USER_ERROR_FORM_ERROR_IN_CONFIRM_PASSWORD_LENGTH=密码确认的长度错误。 USER_ERROR_FORM_ERROR_IN_CONFIRM_PASSWORD_CHARACTER=Error in Confirm Password character. USER_ERROR_FORM_ERROR_IN_USER_REMARK_LENGTH=用户注释的长度错误。 USER_ERROR_FORM_ERROR_IN_USER_REMARK_CHARACTER=用户注释的文字错误。 USER_ERROR_TITLE_USER_LIST_DOES_NOT_EXIST=用户清单无存在。 USER_ERROR_TITLE_THIS_USER_DOES_NOT_EXIST=此用户无存在。 USER_ERROR_TITLE_THIS_USER_ALREADY_EXISTS=此用户已经存在。 USER_ERROR_TITLE_USER_ROLE_LIST_DOES_NOT_EXIST=用户・角色清单无存在。 USER_ERROR_TITLE_THIS_USER_ROLE_ALREADY_EXISTS=此用户・角色已经存在。 USER_ERROR_TITLE_THIS_USER_OR_ROLE_DOES_NOT_EXIST=此用户或角色无存在。 ROLE_ERROR_FORM_NO_ROLE_NAME_IS_SPECIFIED=无指定角色名。 ROLE_ERROR_FORM_ERROR_IN_ROLE_NAME_LENGTH=角色名的长度错误。 ROLE_ERROR_FORM_ERROR_IN_ROLE_NAME_CHARACTER=角色名的文字错误。 ROLE_ERROR_FORM_ERROR_IN_ROLE_REMARK_LENGTH=角色注释的长度错误。 ROLE_ERROR_FORM_ERROR_IN_ROLE_REMARK_CHARACTER=角色注释的文字错误。 ROLE_ERROR_TITLE_NOT_SELECT_ROLE_NAME=无挑选角色名。 ROLE_ERROR_TITLE_ROLE_LIST_DOES_NOT_EXIST=角色清单无存在。 ROLE_ERROR_TITLE_THIS_ROLE_DOES_NOT_EXIST=此角色无存在。 ROLE_ERROR_TITLE_THIS_ROLE_ALREADY_EXISTS=此角色已经存在。 ROLE_ERROR_TITLE_THIS_ROLE_TRANSACTION_DOES_NOT_EXIST=此角色・业务无存在。 ROLE_ERROR_TITLE_THIS_ROLE_TRANSACTION_ALREADY_EXISTS=此角色・业务已经存在。 ROLE_ERROR_TITLE_THIS_ROLE_OR_TRANSACTION_DOES_NOT_EXISTS=此角色或业务无存在。 ROLE_ERROR_TITLE_THIS_ROLE_IS_ASSIGNED_BY_USER=此角色被用户绑定。 XXXX_ERROR_FORM_NO_XXXX_NAME_IS_SPECIFIED=无指定XXXX名。 XXXX_ERROR_FORM_ERROR_IN_XXXX_VALUE_LENGTH=XXXX名的长度错误。 XXXX_ERROR_FORM_ERROR_IN_XXXX_NAME_CHARACTER=XXXX名的文字错误。 XXXX_ERROR_FORM_NO_XXXX_VALUE_IS_SPECIFIED=无指定XXXX值。 XXXX_ERROR_FORM_ERROR_IN_XXXX_VALUE_LENGTH=XXXX值的长度错误。 XXXX_ERROR_FORM_ERROR_IN_XXXX_VALUE_CHARACTER=XXXX值的文字错误。 XXXX_ERROR_FORM_NO_XXXX_FLAG_IS_SPECIFIED=无指定XXXX旗标。 XXXX_ERROR_FORM_ERROR_IN_XXXX_FLAG_LENGTH=XXXX旗标的长度错误。 XXXX_ERROR_FORM_ERROR_IN_XXXX_FLAG_CHARACTER=XXXX旗标的文字错误。 XXXX_ERROR_FORM_ERROR_IN_XXXX_REMARK_LENGTH=XXXX注释的长度错误。 XXXX_ERROR_FORM_ERROR_IN_XXXX_REMARK_CHARACTER=XXXX注释的文字错误。 XXXX_ERROR_TITLE_XXXX_LIST_DOES_NOT_EXIST=XXXX清单无存在。 XXXX_ERROR_TITLE_THIS_XXXX_DOES_NOT_EXIST=此XXXX无存在。 XXXX_ERROR_TITLE_THIS_XXXX_ALREADY_EXISTS=此XXXX已经存在。 YYYY_ERROR_FORM_NO_YYYY_NAME_IS_SPECIFIED=无指定YYYY名。 YYYY_ERROR_FORM_ERROR_IN_YYYY_VALUE_LENGTH=YYYY名的长度错误。 YYYY_ERROR_FORM_ERROR_IN_YYYY_NAME_CHARACTER=YYYY名的文字错误。 YYYY_ERROR_FORM_NO_YYYY_VALUE_IS_SPECIFIED=无指定YYYY值。 YYYY_ERROR_FORM_ERROR_IN_YYYY_VALUE_LENGTH=YYYY值的长度错误。 YYYY_ERROR_FORM_ERROR_IN_YYYY_VALUE_CHARACTER=YYYY值的文字错误。 YYYY_ERROR_FORM_NO_YYYY_FLAG_IS_SPECIFIED=无指定YYYY旗标。 YYYY_ERROR_FORM_ERROR_IN_YYYY_FLAG_LENGTH=YYYY旗标的长度错误。 YYYY_ERROR_FORM_ERROR_IN_YYYY_FLAG_CHARACTER=YYYY旗标的文字错误。 YYYY_ERROR_FORM_ERROR_IN_YYYY_REMARK_LENGTH=YYYY注释的长度错误。 YYYY_ERROR_FORM_ERROR_IN_YYYY_REMARK_CHARACTER=YYYY注释的文字错误。 YYYY_ERROR_TITLE_YYYY_LIST_DOES_NOT_EXIST=YYYY清单无存在。 YYYY_ERROR_TITLE_THIS_YYYY_DOES_NOT_EXIST=此YYYY无存在。 YYYY_ERROR_TITLE_THIS_YYYY_ALREADY_EXISTS=此YYYY已经存在。 ZZZZ_ERROR_FORM_NO_ZZZZ_NAME_IS_SPECIFIED=无指定ZZZZ名。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_VALUE_LENGTH=ZZZZ名的长度错误。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_NAME_CHARACTER=ZZZZ名的文字错误。 ZZZZ_ERROR_FORM_NO_ZZZZ_VALUE_IS_SPECIFIED=无指定ZZZZ值。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_VALUE_LENGTH=ZZZZ值的长度错误。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_VALUE_CHARACTER=ZZZZ值的文字错误。 ZZZZ_ERROR_FORM_NO_ZZZZ_FLAG_IS_SPECIFIED=无指定ZZZZ旗标。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_FLAG_LENGTH=ZZZZ旗标的长度错误。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_FLAG_CHARACTER=ZZZZ旗标的文字错误。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_REMARK_LENGTH=ZZZZ注释的长度错误。 ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_REMARK_CHARACTER=ZZZZ注释的文字错误。 ZZZZ_ERROR_TITLE_ZZZZ_LIST_DOES_NOT_EXIST=ZZZZ清单无存在。 ZZZZ_ERROR_TITLE_THIS_ZZZZ_DOES_NOT_EXIST=此ZZZZ无存在。 ZZZZ_ERROR_TITLE_THIS_ZZZZ_ALREADY_EXISTS=此ZZZZ已经存在。
messages.properties(空ファイル)
MessageUtil.java・・・ package cn.com.xxxx.fmockup.util; import java.util.Locale; import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.context.support.ResourceBundleMessageSource; /** * Message Utitility */ public class MessageUtil { public static String COMMON_ERROR_STRING_UNKNOWN_TROUBLE_HAS_OCCURRED = "Unknown trouble has occurred."; public static String COMMON_ERROR_TITLE_SESSION_TIMEOUT_HAS_OCCURRED = "COMMON_ERROR_TITLE_SESSION_TIMEOUT_HAS_OCCURRED"; public static String COMMON_ERROR_TITLE_PLEASE_MODIFY_VALUE = "COMMON_ERROR_TITLE_PLEASE_MODIFY_VALUE"; public static String MENU_ERROR_TITLE_MENU_LIST_DOES_NOT_EXIST = "MENU_ERROR_TITLE_MENU_LIST_DOES_NOT_EXIST"; public static String LOGIN_ERROR_TITLE_USER_ID_OR_PASSWORD_IS_NOT_CORRECT = "LOGIN_ERROR_TITLE_USER_ID_OR_PASSWORD_IS_NOT_CORRECT"; public static String LOGIN_ERROR_TITLE_THIS_ACCOUNT_DOES_NOT_EXIST = "LOGIN_ERROR_TITLE_THIS_ACCOUNT_DOES_NOT_EXIST"; public static String PASSWORD_ERROR_TITLE_INVALID_CURRENT_PASSWORD = "PASSWORD_ERROR_TITLE_INVALID_CURRENT_PASSWORD"; public static String PASSWORD_ERROR_TITLE_ERROR_IN_PASSWORD_CHARACTER = "PASSWORD_ERROR_TITLE_ERROR_IN_PASSWORD_CHARACTER"; public static String PASSWORD_ERROR_TITLE_ERROR_INVALID_NEW_PASSWORD = "PASSWORD_ERROR_TITLE_ERROR_INVALID_NEW_PASSWORD"; public static String PASSWORD_ERROR_TITLE_ERROR_NEW_PASSWORD_AND_CONFIRM_PASSWORD_ARE_UNMATCHED = "PASSWORD_ERROR_TITLE_ERROR_NEW_PASSWORD_AND_CONFIRM_PASSWORD_ARE_UNMATCHED"; public static String ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_DOES_NOT_EXIST = "ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_DOES_NOT_EXIST"; public static String ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_WAS_LOCKED_PLEASE_LOGOUT_AND_TRY_TO_LOGIN_AGAIN = "ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_WAS_LOCKED_PLEASE_LOGOUT_AND_TRY_TO_LOGIN_AGAIN"; public static String ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_WAS_LOCKED = "ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_WAS_LOCKED"; public static String ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_IS_RESTRICTED = "ACCOUNT_ERROR_TITLE_YOUR_ACCOUNT_IS_RESTRICTED"; public static String USER_ERROR_FORM_ERROR_IN_USER_REMARK_CHARACTER = "USER_ERROR_FORM_ERROR_IN_USER_REMARK_CHARACTER"; public static String USER_ERROR_FORM_ERROR_IN_NEW_PASSWORD_LENGTH = "USER_ERROR_FORM_ERROR_IN_NEW_PASSWORD_LENGTH"; public static String USER_ERROR_FORM_ERROR_IN_CONFIRM_PASSWORD_LENGTH = "USER_ERROR_FORM_ERROR_IN_CONFIRM_PASSWORD_LENGTH"; public static String USER_ERROR_TITLE_USER_LIST_DOES_NOT_EXIST = "USER_ERROR_TITLE_USER_LIST_DOES_NOT_EXIST"; public static String USER_ERROR_TITLE_THIS_USER_DOES_NOT_EXIST = "USER_ERROR_TITLE_THIS_USER_DOES_NOT_EXIST"; public static String USER_ERROR_TITLE_THIS_USER_ALREADY_EXISTS = "USER_ERROR_TITLE_THIS_USER_ALREADY_EXISTS"; public static String USER_ERROR_TITLE_USER_ROLE_LIST_DOES_NOT_EXIST = "USER_ERROR_TITLE_USER_ROLE_LIST_DOES_NOT_EXIST"; public static String USER_ERROR_TITLE_THIS_USER_ROLE_ALREADY_EXISTS = "USER_ERROR_TITLE_THIS_USER_ROLE_ALREADY_EXISTS"; public static String USER_ERROR_TITLE_THIS_USER_OR_ROLE_DOES_NOT_EXIST = "USER_ERROR_TITLE_THIS_USER_OR_ROLE_DOES_NOT_EXIST"; public static String ROLE_ERROR_FORM_ERROR_IN_ROLE_REMARK_CHARACTER = "ROLE_ERROR_FORM_ERROR_IN_ROLE_REMARK_CHARACTER"; public static String ROLE_ERROR_TITLE_NOT_SELECT_ROLE_NAME = "ROLE_ERROR_TITLE_NOT_SELECT_ROLE_NAME"; public static String ROLE_ERROR_TITLE_ROLE_LIST_DOES_NOT_EXIST = "ROLE_ERROR_TITLE_ROLE_LIST_DOES_NOT_EXIST"; public static String ROLE_ERROR_TITLE_THIS_ROLE_DOES_NOT_EXIST = "ROLE_ERROR_TITLE_THIS_ROLE_DOES_NOT_EXIST"; public static String ROLE_ERROR_TITLE_THIS_ROLE_ALREADY_EXISTS = "ROLE_ERROR_TITLE_THIS_ROLE_ALREADY_EXISTS"; public static String ROLE_ERROR_TITLE_THIS_ROLE_TRANSACTION_DOES_NOT_EXIST = "ROLE_ERROR_TITLE_THIS_ROLE_TRANSACTION_DOES_NOT_EXIST"; public static String ROLE_ERROR_TITLE_THIS_ROLE_TRANSACTION_ALREADY_EXISTS = "ROLE_ERROR_TITLE_THIS_ROLE_TRANSACTION_ALREADY_EXISTS"; public static String ROLE_ERROR_TITLE_THIS_ROLE_OR_TRANSACTION_DOES_NOT_EXISTS = "ROLE_ERROR_TITLE_THIS_ROLE_OR_TRANSACTION_DOES_NOT_EXISTS"; public static String ROLE_ERROR_TITLE_THIS_ROLE_IS_ASSIGNED_BY_USER = "ROLE_ERROR_TITLE_THIS_ROLE_IS_ASSIGNED_BY_USER"; public static String XXXX_ERROR_FORM_ERROR_IN_XXXX_REMARK_CHARACTER = "XXXX_ERROR_FORM_ERROR_IN_XXXX_REMARK_CHARACTER"; public static String XXXX_ERROR_TITLE_XXXX_LIST_DOES_NOT_EXIST = "XXXX_ERROR_TITLE_XXXX_LIST_DOES_NOT_EXIST"; public static String XXXX_ERROR_TITLE_THIS_XXXX_DOES_NOT_EXIST = "XXXX_ERROR_TITLE_THIS_XXXX_DOES_NOT_EXIST"; public static String XXXX_ERROR_TITLE_THIS_XXXX_ALREADY_EXISTS = "XXXX_ERROR_TITLE_THIS_XXXX_ALREADY_EXISTS;"; public static String YYYY_ERROR_FORM_ERROR_IN_YYYY_REMARK_CHARACTER = "YYYY_ERROR_FORM_ERROR_IN_YYYY_REMARK_CHARACTER"; public static String YYYY_ERROR_TITLE_YYYY_LIST_DOES_NOT_EXIST = "YYYY_ERROR_TITLE_YYYY_LIST_DOES_NOT_EXIST"; public static String YYYY_ERROR_TITLE_THIS_YYYY_DOES_NOT_EXIST = "YYYY_ERROR_TITLE_THIS_YYYY_DOES_NOT_EXIST"; public static String YYYY_ERROR_TITLE_THIS_YYYY_ALREADY_EXISTS = "YYYY_ERROR_TITLE_THIS_YYYY_ALREADY_EXISTS"; public static String ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_REMARK_CHARACTER = "ZZZZ_ERROR_FORM_ERROR_IN_ZZZZ_REMARK_CHARACTER"; public static String ZZZZ_ERROR_TITLE_ZZZZ_LIST_DOES_NOT_EXIST = "ZZZZ_ERROR_TITLE_ZZZZ_LIST_DOES_NOT_EXIST"; public static String ZZZZ_ERROR_TITLE_THIS_ZZZZ_DOES_NOT_EXIST = "ZZZZ_ERROR_TITLE_THIS_ZZZZ_DOES_NOT_EXIST"; public static String ZZZZ_ERROR_TITLE_THIS_ZZZZ_ALREADY_EXISTS = "ZZZZ_ERROR_TITLE_THIS_ZZZZ_ALREADY_EXISTS"; private static ResourceBundleMessageSource messageSource; /* * Set message file Locale. */ public static void setLocale() { Locale locale = LocaleContextHolder.getLocale(); String lang = locale.getLanguage(); String country = locale.getCountry(); if (lang.equals("ja")) { locale = new Locale("ja"); } else if (lang.equals("zh") && country.equals("CN")) { locale = new Locale("zh", "CN"); } else if ( (lang.equals("en") && country.equals("US")) || (lang.equals("en") && country.equals("UK")) || (lang.equals("zh") && country.equals("TW"))) { locale = new Locale("en"); } else { locale = new Locale("en"); } LocaleContextHolder.setLocale(locale); messageSource = new ResourceBundleMessageSource(); messageSource.setBasename("messages"); messageSource.setDefaultEncoding("UTF-8"); return; } /* * Get message from message file. */ public static String getMessage(String id) { String message = ""; try { message = messageSource.getMessage(id, null, LocaleContextHolder.getLocale()); } catch (Exception ex) { message = ex.getMessage(); } return message; } }
参考