栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Spring Security + i18n =如何使其协同工作?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring Security + i18n =如何使其协同工作?

  1. 发送请求xxxxx?locale = en后,它将创建不带“国家/地区”属性的语言环境(仅设置语言)。

这是预期的行为。在Java中,存在某种层次结构。语言比国家更通用。

背后的想法是,例如,您可以使用更通用的语言显示文本,但可以在特定于国家/地区的文件中包含某些单位(例如货币)。

@see:http :
//java.sun.com/developer/technicalArticles/Intl/IntlIntro/


  1. 更严重的问题是它不起作用…

它应该无需任何手工实现即可工作!

您需要注册本地更改拦截器,并需要为登录页面设置permitAll。

<mvc:interceptors>   <bean  p:paramName="lang"/></mvc:interceptors><http auto-config="true" use-expressions="true">    <form-login login-processing-url="/resources/j_spring_security_check" login-page="/login" authentication-failure-url="/login?login_error=t"/>    <logout logout-url="/resources/j_spring_security_logout"/>    <!-- Configure these elements to secure URIs in your application -->    <intercept-url pattern="/login" access="permitAll" />    <intercept-url pattern="/resources/**" access="permitAll" />    <intercept-url pattern="/**" access="isAuthenticated()" /></http>

要查看此示例的运行情况,请使用该roo脚本创建一个roo项目:

// Spring Roo 1.1.5.RELEASE [rev d3a68c3] log opened at 2011-12-13 09:32:23project --topLevelPackage de.humanfork.test --projectName localtest --java 6persistence setup --database H2_IN_MEMORY --provider HIBERNATE ent --class ~.domain.Stufffield string --fieldName titlecontroller all --package ~.websecurity setupweb mvc language --pre deweb mvc language --pre es

然后,您只能更改安全过滤器的跨URL模式,如我在上面(

applicationContext-security.xml
)所示!

现在,您有了一个应用程序,用户可以通过应用程序中的本地更改拦截器(当用户登录时)以及未登录时(在登录页面中)更改其本地用户



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/435587.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号