博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring Security(05)——异常信息本地化
阅读量:5075 次
发布时间:2019-06-12

本文共 1260 字,大约阅读时间需要 4 分钟。

  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所写)

转载于:https://www.cnblogs.com/fenglan/p/5912908.html

你可能感兴趣的文章
digitalocean --- How To Install Apache Tomcat 8 on Ubuntu 16.04
查看>>
【题解】[P4178 Tree]
查看>>
Jquery ui widget开发
查看>>
关于indexOf的使用
查看>>
英语单词
查看>>
Mongo自动备份
查看>>
cer证书签名验证
查看>>
新手Python第一天(接触)
查看>>
【bzoj1029】[JSOI2007]建筑抢修
查看>>
synchronized
查看>>
codevs 1080 线段树练习
查看>>
[No0000195]NoSQL还是SQL?这一篇讲清楚
查看>>
【深度学习】caffe 中的一些参数介绍
查看>>
Python-Web框架的本质
查看>>
QML学习笔记之一
查看>>
Window 的引导过程
查看>>
App右上角数字
查看>>
从.NET中委托写法的演变谈开去(上):委托与匿名方法
查看>>
小算法
查看>>
201521123024 《java程序设计》 第12周学习总结
查看>>