开发者社区 问答 正文

shiro报错UsernamePasswordToken ClassCastE?400报错

protected AuthenticationInfo   doGetAuthenticationInfo(AuthenticationTokenauthcToken)  throws AuthenticationException {  

UsernamePasswordToken token =  (UsernamePasswordToken) authcToken;  

上面这行报ClassCastException,下面是我的UsernamePasswordToken定义

public class UsernamePasswordToken extends org.apache.shiro.authc.UsernamePasswordToken

展开
收起
爱吃鱼的程序员 2020-06-08 09:48:04 764 分享 版权
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    解决了,可以强制转换,这个token其实是在org.apache.shiro.web.filter.authc.FormAuthenticationFilter的createToken创建返回的,所以,可以写个类继承FormAuthenticationFilter,重写createToken方法,在该方法里面返回自己的创建UsernamePasswordToken

    不能直接强转成UsernamePasswordToken

    谢谢,解决了,可以强制转换,token其实可以写一个类继承org.apache.shiro.web.filter.authc.FormAuthenticationFilter,然后重写createToken方法,在该方法里面返回自己的创建UsernamePasswordToken
    2020-06-08 09:48:14
    赞同 展开评论
问答地址: