Spring MVC整合beetl之后添加国际化

实现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;
    }

}

猜你喜欢

转载自blog.csdn.net/zhuwei_clark/article/details/73496660