問題起因:
升級(jí)spring2.x的dtd聲明為xsd聲明以后,spring2.x+struts2.x的應(yīng)用在weblogic81下報(bào)錯(cuò),日志提示建議使用jdk1.5或升級(jí)xerces。
解決過程:
自己寫了一個(gè)spring2.x+struts2.x應(yīng)用在weblogic81下正常運(yùn)行。說明問題出在應(yīng)用上。
拷貝出問題的應(yīng)用的jar包到成功應(yīng)用的lib目錄,問題仍然存在。說明還有其他隱情。
比對(duì)兩個(gè)應(yīng)用,發(fā)現(xiàn)出問題的應(yīng)用使用了weblogic.xml, 其中配置了優(yōu)先加載web-inf\lib的jar包。
此時(shí)建立jrokit/jar/lib/endrosed目錄,放入最新的xerces包,也不生效。
換一個(gè)思路,查詢DocumentBuilderFactoryImpl,發(fā)現(xiàn)有應(yīng)用中有4處引用,刪除xerces.jar的時(shí)候,發(fā)布成功。至此問題解決!!!!!!!
問題總結(jié):
1 要注意保留成功的案例,以便比對(duì)。
最近碰到兩個(gè)類似的問題了:一個(gè)是websphere下的web-inf\template問題,一個(gè)就是由于weblogic.xml干預(yù),造成xerces.jar
的問題。
2 要注意觀察實(shí)際使用的類的版本
3 升級(jí)以后,一定要驗(yàn)證單個(gè)平臺(tái)下是否都能正常使用,并增加評(píng)審環(huán)節(jié),避免影響他人。