XMLParser 解析出错:编码问题

本文详细分析了在Linux环境下使用Maven编译后的Java项目,在JBOSS中运行时遇到XML解析错误的问题。原因在于编码不一致导致的中文注释乱码。提供了两种解决方案:修改编译前的编码设置和避免在XML注释中使用中文。通过实施这些建议,可以有效解决此类问题。

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

linux下编译用maven编译完成后,放到JBOSS下运行,启动正常,但是访问是报错:

2011-06-10 10:52:20,739 [] ERROR parser.XMLParser - Parse Fatal Error at line 155 column 17: The string "--" is not permitted within comments.
org.xml.sax.SAXParseException: The string "--" is not permitted within comments.
        at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
        at org.apache.xerces.util.ErrorHandlerWrapper.fatalError(Unknown Source)
        at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
        at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
        at org.apache.xerces.impl.XMLScanner.reportFatalError(Unknown Source)
        at org.apache.xerces.impl.XMLScanner.scanComment(Unknown Source)
 
分析后发现:
工程代码是指定编译是用gbk编码,但是JBOSS运行的时候,linux环境是en_US.UTF-8。对于这种环境下,一些XML配置文件中的中文注释,就会乱码,导致解析出错。解决方法:
1、在编译之前指定编码:export LANG=zh_CN,指定编码后再重新编译:mavn clean package
2、对于XML中的注释,尽量采用英文(估计不是很靠谱哈)

转载于:https://www.cnblogs.com/enjoyceit/archive/2011/06/22/2086771.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值