今天配置CAS,在向客户端传递更多属性时候,遇到中文乱码问题,百度一把,找到的都是说使用URLEncoder来相互转码,这也太暴力了吧,我想CAS没有那么撮。
1)在服务端修改casServiceValidationSuccess.jsp文件,增加<%@ page pageEncoding="UTF-8"%>,我增加了居然还是乱码,通过下一步可以解决
2)在研究了一下客户端验证配置的时候,发现一个名叫encoding参数,很熟悉是不是,配置上,设置为UTF-8,和熟悉的中文出现了。
<filter> <filter-name>CAS Validation Filter</filter-name> <filter-class> org.jasig.cas.client.validation.Cas20ProxyReceivingTicketValidationFilter </filter-class> <init-param> <param-name>casServerUrlPrefix</param-name> <param-value> http://localhost:8090/tuzuan.auth.center </param-value> </init-param> <init-param> <param-name>serverName</param-name> <param-value>http://localhost:8090</param-value> </init-param> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>CAS Validation Filter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>