Spring MVC整合beetl之後新增國際化
阿新 • • 發佈:2019-01-02
實現beetl的function,然後使用spring配置注入該bean即可
public class I18nUtil implements Function{
@Override
public Object call(Object[] obj, Context context) {
if(obj.length < 1) {
try {
throw new BeetlException("呼叫Beetl方法獲取國際化資訊時 引數列表傳遞錯誤");
} catch (BeetlException e) {
e.printStackTrace();
return "呼叫Beetl方法獲取國際化資訊時 引數列表傳遞錯誤";
}
}
HttpServletRequest request = (HttpServletRequest) context.getGlobal("request");
RequestContext requestContext = new RequestContext(request);
String message = "";
try {
message = requestContext.getMessage((String)obj[0 ]);
if("".equals(message) && obj.length > 1){
message = (String)obj[(int)(1+Math.random()*(obj.length-1))];
}
} catch (Exception e) {
e.printStackTrace();
if(obj.length > 1)
message = (String)obj[(int )(1+Math.random()*(obj.length-1))];
}
return message;
}
}