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