首页 > 其他 > 详细

CAS 自定义用户信息中文乱码的解决

时间:2016-07-16 02:30:17      阅读:766      评论:0      收藏:0      [点我收藏+]

CAS3.4.10版本自定义用户信息中有中文,比如姓名,修改如下:

1、部署web服务目录下的:cas3.4.10\WEB-INF\view\jsp\protocol\2.0\casServiceValidationSuccess.jsp的编码为 GBK:

<%@ page contentType="text/html; charset=GBK"%>

?

2、 在 ?<cas:authenticationSuccess> 节点内,增加自定义字段的输出:

??<cas:user>${fn:escapeXml(assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.id)}</cas:user>
??<c:if test="${fn:length(assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.attributes) > 0}">?
????? <cas:attributes>?
?????? <c:forEach var="attr" items="${assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.attributes}">?
??????<cas:${fn:escapeXml(attr.key)}>${fn:escapeXml(attr.value)}</cas:${fn:escapeXml(attr.key)}>?
?????</c:forEach>?
????</cas:attributes>?
??</c:if>?

?

3、如果启用代理模式,再增加:

??<c:if test="${not empty pgtIou}">
????<cas:proxyGrantingTicket>${pgtIou}</cas:proxyGrantingTicket>
??</c:if>

4、在客户端的web.xml的??? <filter-name>CAS Validation Filter</filter-name>? 节点内,增加:

??? </init-param>
?<param-name>encoding</param-name>
????? <param-value>GBK</param-value>
??? </init-param>

CAS 自定义用户信息中文乱码的解决

原文:http://xuguohua.iteye.com/blog/2310923

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!