当前位置:首页 > 开发 > 开源软件 > 正文

Spring Security(05)——异常信息本地化

发表于: 2014-11-16   作者:234390216   来源:转载   浏览:
摘要: 异常信息本地化          Spring Security支持将展现给终端用户看的异常信息本地化,这些信息包括认证失败、访问被拒绝等。而对于展现给开发者看的异常信息和日志信息(如配置错误)则是不能够进行本地化的,它们是以英文硬编码在Spring Security的代码中的。在Spring-Security-core-x

异常信息本地化

 

       Spring Security支持将展现给终端用户看的异常信息本地化,这些信息包括认证失败、访问被拒绝等。而对于展现给开发者看的异常信息和日志信息(如配置错误)则是不能够进行本地化的,它们是以英文硬编码在Spring Security的代码中的。在Spring-Security-core-xxx.jar包的org.springframework.security包下拥有一个以英文异常信息为基础的messages.properties文件,以及其它一些常用语言的异常信息对应的文件,如messages_zh_CN.properties文件。那么对于用户而言所需要做的就是在自己的ApplicationContext中定义如下这样一个bean

   <bean id="messageSource"

   class="org.springframework.context.support.ReloadableResourceBundleMessageSource">

      <property name="basename"

         value="classpath:org/springframework/security/messages" />

   </bean>

 

       如果要自己定制messages.properties文件,或者需要新增本地化支持文件,则可以copy Spring Security提供的默认messages.properties文件,将其中的内容进行修改后再注入到上述bean中。比如我要定制一些中文的提示信息,那么我可以在copy一个messages.properties文件到类路径的“com/xxx”下,然后将其重命名为messages_zh_CN.properties,并修改其中的提示信息。然后通过basenames属性注入到上述bean中,如:

   <bean id="messageSource"

   class="org.springframework.context.support.ReloadableResourceBundleMessageSource">

      <property name="basenames">

         <array>

            <!-- 将自定义的放在Spring Security内置的之前 -->

            <value>classpath:com/xxx/messages</value>

            <value>classpath:org/springframework/security/messages</value>

         </array>

      </property>

   </bean>

 

       有一点需要注意的是将自定义的messages.properties文件路径定义在Spring Security内置的message.properties路径定义之前。

 

(注:本文是基于Spring Security3.1.6所写)

(注:原创文章,转载请注明出处。原文地址:http://haohaoxuexi.iteye.com/blog/2156769

 

 

 

Spring Security(05)——异常信息本地化

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
先来谈一谈Acegi的基础知识,Acegi的架构比较复杂,但是我希望我下面的只言片语能够把它说清楚。大
在认识Spring Security之前,所有的权限验证逻辑都混杂在业务逻辑中,用户的每个操作以前可能都需要
在使用Spring Security配置Web应用之前,首先要准备一个基于Maven的Spring框架创建的Web应用(Sprin
我的SpringSecurity实践 数据库与实体类设计(mysql) Sql代码 -- 权限 DROP TABLE IF EXISTS `me`.`t
本文不讲述具体使用配置过程。。请先google了解需要配置的三个地方。。 一、概述: 各个框架对于国
本文不讲述具体使用配置过程。。请先google了解需要配置的三个地方。。 一、概述: 各个框架对于国
文本信息本地化在本地化工作中占有很大的比例。包括了:应用名称本地化、系统按钮和信息本地化,以
文本信息本地化在本地化工作中占有很大的比例。包括了:应用名称本地化、系统按钮和信息本地化,以
现在很多企业和开发团队都使用了SSH2(Struts 2 +Spring 2.5 +Hibernate)框架来进行开发, 我们或
开篇说明 最近工作有权限控制的需求,所以看了一下spring的security,它提供了很好的安全服务; 参
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号