SAXParseException: Content is not allowed in prolog

项目的服务器是jboss,启动的时候因为日志兼容问题,所以每次启动都会报错的,所以以至于出现其他错误都不一定能及时发现。今天生产发布时就遇见了这样的问题,花费的时间还是有点长,结果还好,定位到了问题,并解决了问题。

问题:

项目内容定义的开源连接池配在了一个xml里面,服务启动后,其他页面正常,只要一使用该连接池,就提示类似于这样的信息:Attempt to refer to a unregistered pool by its alias

一看错误信息,就知道是因为连接池没有初始化,也就是没有注册。

于是查看连接池注册的位置,最终是web.xml配置了连接池的配置文件,调用者是一个servlet。难道是因为servlet的启动顺序?于是配置了load-on-start的标签,配置了0,设置最大的优先级,结果问题依旧。

无奈啊,但是根据问题的描述,知道连接池没有初始化。莫非启动报错?于是查看了其他servlet的打印信息,因为觉得这些servlet会一块初始化。

在后台view log文件,然后/start init... ,my god,找到了以前没有见过的错误的信息,意识转换连接池的xml文件报错,
SAXParseException: Content is not allowed in prolog。。。。。

但是测试环境是ok的,莫非因为字符问题?

于是 diff 有问题的xml文件 正常的xml文件

果然,有问题的xml文件出现了乱码,奶奶的,想骂人,坑人的环境问题

替换文件后,一切ok。


总结: 遇到问题并不可怕,关键是要学会分析,根据问题的描述,准确地判断大概是什么问题,然后随着分析,找出具体的可能的解决方案。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值