开发者社区> 问答> 正文

cas错误:org.jasig.cas.client.validation.Ti?报错

      我在本机测试cas的部署,客户端和服务端同时安装在我本机(win7),使用了两个tomcat(6.0.7)分别对应cas客户端(3.2.1)和cas服务端(3.4),

     同时安装了两个jdk,一个是jdk1.6(设置成了环境变量),一个是jdk1.5;

    cas服务端tomcat对应的是jdk1.6版本(默认的),cas客户端tomcat使用jdk1.5。

     我也把使用jdk1.6的keytool生成的证书导入到了cas客户端要使用的jdk1.5的cacerts里面。

     cas服务端和cas客户端按网上大家说的配置,在服务端生成ticket成功,跳转到客户端,客户端再向服务端验证ticket时报错,具体如下:

展开
收起
爱吃鱼的程序员 2020-06-22 11:06:01 2065 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    根据网上所说,是在第5步:Step5:CAS客户端取出ticket,生成“ticket验证URL”,然后向"ticket验证URL"发起httpGET请求"ticket验证URL":   http://${cas-server-host}:${cas-server-port}/cas-server/serviceValidate?ticket=${service-ticket}&service=${client-service-url}出的错,然后我把ticket取出,单独放到这个url里面去,页面提示:

    大虾们知道的教教小弟。

    猜测是证书引起的。可以试试不用证书的时候是否正常。我记得以前本机测试的时候没用证书都正常,用了证书就有类似的错误。

    记不清了


    有这样可能

    终于解决了,这个错误怎么就没人发现呢,哎。最后还是看: http://jasig.275507.n4.nabble.com/No-principal-was-found-in-the-response-from-the-CAS-server-td1011262.html找到的方法,现把原因贴出来:

    cas客户的的web.xml文件:

     

     

    回复 @山水龙:是的~~正解!!真的是很多列子害死人~~不懂为何他们都没碰上~~应该加端口号,这样就正确了

    您好,我也碰到了相同的问题,但是按照你的解决方法,我还是会出错。错误信息如下:

    java.lang.RuntimeException:java.io.IOException:ServerreturnedHTTPresponsecode:500forURL:http://service.thldl.org.cn/serviceValidate?ticket=ST-6-E5Z7zvVeRd0tvwwewRWw-cas01.example.org&service=http%3A%2F%2Fapp.thldl.org.cn%2F%2F%2Fsigns%2Forg.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:328)org.jasig.cas.client.util.CommonUtils.getResponseFromServer(CommonUtils.java:291)org.jasig.cas.client.validation.AbstractCasProtocolUrlBasedTicketValidator.retrieveResponseFromServer(AbstractCasProtocolUrlBasedTicketValidator.java:32)org.jasig.cas.client.validation.AbstractUrlBasedTicketValidator.validate(AbstractUrlBasedTicketValidator.java:187)org.jasig.cas.client.validation.AbstractTicketValidationFilter.doFilter(AbstractTicketValidationFilter.java:164)org.jasig.cas.client.authentication.AuthenticationFilter.doFilter(AuthenticationFilter.java:102)org.jasig.cas.client.session.SingleSignOutFilter.doFilter(SingleSignOutFilter.java:65)
    从错误信息来看,是
    http://service.thldl.org.cn/serviceValidate?ticket
    这个地址有问题了,所以我觉的web.xml中的casServerUrlPrefix还是需要加上cas的

    我出现这种情况是因为当时配的是本机的IP,写的是127.0.0.1:8080,但我访问的时候使用localhost:8080,
    2020-06-22 11:06:18
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载