`
xuguohua
  • 浏览: 8321 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

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

阅读更多

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>

0
1
分享到:
评论
1 楼 masuweng 2016-07-13  
cas的全局作用,及能给给完整的cas的项目吗?正在正研究cas。

相关推荐

Global site tag (gtag.js) - Google Analytics