我開發時使用的是jxl2.6.12版本的包,在NetBeans6.7上開發時運行良好(tomcat6.0服務器),在部署到weblogic9.2上時,報java.lang.NoClassDefFoundError: jxl/write/WriteException異常。
經分析以為是weblogic內置jxl較低版本的包,后嘗試上傳最新jar包至common/lib下及創建weblogic.xml文件使其優先使用WEB-INF下包等兩種解決方案時仍不能解決問題。
之后在一次部署過程中發現weblogic報出:invalid LOC header (bad signature),經查得知是不識別jar包,隨下載jxl2.6的包上傳部署并通過。
現象:weblogic9.2報出java.lang.NoClassDefFoundError異常。
原因:weblogic9.2不識別jar包所致,具體深層原因不明,可參考http://www.zeali.net/entry/106。
解決:使用稍低版本jar包。或許同一版本其他包也可使用,為曾嘗試。
附:weblogic.xml
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
<weblogic-web-app>
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
</weblogic-web-app>
posted on 2010-01-12 14:29
身在半空 閱讀(969)
評論(0) 編輯 收藏