十一 04
如何排除XML解析器出现的异常
SOA53 views
问题描述
使用http://test.com/axis查看已部署的服务时出现Axis内部错,显示有关WSDD配置的异常信息。如果把WEB-INF目录下的server-config.wsdd删除,再查看就正常了,但只能看到AdminService和Version两个系统缺省的服务,后来部署的服务都看不到了。
原因分析
Axis会在WEB应用程序的WEB-INF/目录下自动生成一个名字为server-config.wsdd的xml文件,其中记录了已部署的WEB服务。每部署一个新的WEB服务时,Axis都会将新服务的描述信息加入到server-config.wsdd中。
故障站点使用的XmlParser是resin内置的XmlParser,Axis并未对其对进行过兼容性测试,查看WEB服务信息时需要从server-config.wsdd(这是一个xml文件)取得已部署的WEB服务描述信息,当server-config.wsdd的内容较复杂时,resin内置的XmlParser因某种原因出现异常,导致Axis内部错误。Server-config.wsdd中记录的Web服务描述信息较少时不会出现异常。
解决方法
修改resin.conf,将resin的XmlParser置换为Xerces的XmlParser。
小结
如果Axis报告的错误中有关于xml解析器的错误,建议读者参照本小节描述的方法更换应用服务器的xml解析器,将会有助于问题的解决。
Tags: Axis, resin
Leave a Reply
You must be logged in to post a comment.
近期评论