Tomcat的配置文件server.xml中添加中文注释后,启动Tomcat时出现错误
Tomcat的配置文件server.xml中添加中文注释后,启动Tomcat时出现错误
AlanCooper 发表于3年前
Tomcat的配置文件server.xml中添加中文注释后,启动Tomcat时出现错误
  • 发表于 3年前
  • 阅读 582
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 新注册用户 域名抢购1元起>>>   

摘要: Tomcat启动时出现错误

今天启动tomcat时出现失败,控制台一闪而过,打开catalina的log发现错误指向了conf/server.xml,报错信息如下: 
-----------------------------------------------------------------------------------------------------------------------------------
警告: Catalina.start using conf/server.xml: 
com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 2 字节的 UTF-8 序列的字节 2 无效。 
... 
... 
-----------------------------------------------------------------------------------------------------------------------------------
想起刚刚的确是修改了这个文件,遂比较了一下本文件的历史版本,发现可疑之处在于追加的中文注释,删除掉,问题就解决了。 

上述问题是解决了,但是我们想添加中文注释!有没有办法让它支持中文呢?接下来试着把xml头定义中的encoding="utf-8"改成了encoding="gbk",然后再次加入中文注释,启动tomcat成功,应用也可以正常访问。 

又有了一个新的疑问,utf-8不支持中文么?答案当然是支持的,为什么encoding="utf-8"的时候会出错,原因在于xml头指定了使用utf8来解释这个文档内容,但是当我使用编辑器编辑这个文档的时候,输入的中文却不是utf-8编码,而是ANSI编码,这样自然会出错。解决起来也很容易,使用记事本打开xml文件,输入中文注释,然后选择另存为,在弹出的对话框中选择utf-8编码。或者使用EditPlus,Notepad++等编辑器打开xml文件,在相关的菜单中修改文件的编码为utf-8格式,然后保存,这样 
就可以正常使用中文注释了。 

总结,xml头定义中的encoding与xml文件自身的编码不一致会导致文件解释异常。

共有 人打赏支持
粉丝 6
博文 67
码字总数 27450
×
AlanCooper
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: