XStream 从1.3.X升级到1.4.X版本遇到问题

一、com.thoughtworks.xstream.security.ForbiddenClassException

原来为第三方提供jar包使用XStream1.3.X版本,后来升级到1.4.X版本,第三方系统使用时遇到com.thoughtworks.xstream.security.ForbiddenClassException 问题

com.thoughtworks.xstream.security.ForbiddenClassException: com.jt.bean.xml.ComconfigParse
	at com.thoughtworks.xstream.security.NoTypePermission.allows(NoTypePermission.java:26)

解决方案:

XStream xStream = new XStream();

//由于对象默认开启安全防护,添加这条语句解决问题。尽量限制最低权限。

xStream.addPermission(AnyTypePermission.ANY);

降低权限后,解决com.thoughtworks.xstream.security.ForbiddenClassException问题

二、XML中带“_”解析不出来问题

在xml转成bean类时,发现xml中user_name 中有值,但是转换的bean类中 user_name 为空,

需要修改XStream初始化

XStream xStream = new XStream(new XppDriver(new XmlFriendlyNameCoder("_-", "_")));

因为_是关键字,默认的会变为__  
$也是关键字,默认为_-,这2个参数一个改变$的显示,一个改变_的显示

修改后,user_name 可以转换正常

  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值