xstream异常com.thoughtworks.xstream.security.ForbiddenClassException

项目中使用WebService调用厂商接口,需解析错误信息,采用XStream手动解析到对象。解析时遇到com.thoughtworks.xstream.security.ForbiddenClassException异常,找到了相应解决方式,还提及非注解方式但未详述,解决来源给出链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近项目使用到webservice调用厂商的接口,遇到的需要解析错误信息的需求,于是对于错误信息的解析使用比较暴力方式:使用XStream直接手动解析错误消息到对象。

在解析的过程中遇到了com.thoughtworks.xstream.security.ForbiddenClassException异常的问题,多方寻找后找到解决方式:

xStream = new XStream();
//		尽量限制所需的最低权限 这条语句解决该问题
xStream.addPermission(AnyTypePermission.ANY);

// 对象设置默认安全防护 
// 会导致com.thoughtworks.xstream.security.ForbiddenClassException
//xStream.setupDefaultSecurity(xStream);
// 对类开启注解
xStream.processAnnotations(FaultInfo.class);

还有一种方式是非注解方式,这里不使用非注解方式开发,不赘述,解决方式来源于:

https://stackoverflow.com/questions/30812293/com-thoughtworks-xstream-security-forbiddenclassexception

 

at jenkins.security.ImpersonatingExecutorService$1.run(ImpersonatingExecutorService.java:68) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.base/java.lang.Thread.run(Unknown Source) 2025-03-24 15:13:11.115+0000 [id=37] INFO jenkins.InitReactorRunner$1#onAttained: Prepared all plugins 2025-03-24 15:13:11.439+0000 [id=32] INFO jenkins.InitReactorRunner$1#onAttained: Started all plugins 2025-03-24 15:13:11.448+0000 [id=34] INFO jenkins.InitReactorRunner$1#onAttained: Augmented all extensions 2025-03-24 15:13:11.566+0000 [id=37] SEVERE jenkins.InitReactorRunner$1#onTaskFailed: Failed Loading global config com.thoughtworks.xstream.mapper.CannotResolveClassException: hudson.security.GlobalMatrixAuthorizationStrategy at com.thoughtworks.xstream.mapper.DefaultMapper.realClass(DefaultMapper.java:81) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:125) at com.thoughtworks.xstream.mapper.DynamicProxyMapper.realClass(DynamicProxyMapper.java:55) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:125) at com.thoughtworks.xstream.mapper.PackageAliasingMapper.realClass(PackageAliasingMapper.java:88) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:125) at com.thoughtworks.xstream.mapper.ClassAliasingMapper.realClass(ClassAliasingMapper.java:79) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:125) at com.thoughtworks.xstream.mapper.ArrayMapper.realClass(ArrayMapper.java:74) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperWrapper.java:125) at com.thoughtworks.xstream.mapper.SecurityMapper.realClass(SecurityMapper.java:71) at com.thoughtworks.xstream.mapper.MapperWrapper.realClass(MapperW
03-25
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值