weblogic10.3.6部署專案的過程描述
專案實現後,原先是部署在websphere上,後面客戶說要部署在weblogic,因此又開始一番折騰。
weblogic是原先安裝的,過程比較簡單,這邊就不描述了,如果之前裝過,想再添加個域,可以按下windows鍵,在所有程式中找到Oracle Weblogic-->Weblogic server-->Tools-->Configuration Wizard,點選後選擇建立新的Weblogic域。
個人習慣,在部署專案的時候,喜歡先建立資料來源,然後測試是否連的通。建立了兩個oracle的資料來源,很順利,都可以連線上,需要注意的是,資料庫驅動程式,需要選擇*Oracle's Driver (Thin) for Service connections; Versions:9.0.1 and later;定義完資料來源的連線屬性之後,需要檢視下url,有可能url會變成jdbc:oracle:thin:@192.168.0.1:1521/orcl,這樣在測試連線的時候也是可以連上,但是url最好是寫成jdbc:oracle:thin:@192.168.9.52:1521:orcl這種形式,冒號,而不是斜槓。
在建立postgresql的資料來源後,點選測試連線,出現錯誤資訊:could not load driver: org.postgresql.Driver。問題很清晰,Weblogic中沒有postgresql的資料庫驅動包,因此去下了個:postgresql-9.4-1201.jdbc41.jar。
將下載下來的jar包扔到D:\Oracle\Middleware\Oracle_Home\wlserver\server\lib(Weblogic安裝目錄,每個人的情況都不同,這裡只做參考)。一般這個路徑下放的都是全域性的jar包,也就是可以在各個域中使用,jar包放完之後,我們需要設定下Weblogic的pg驅動包,讓它能夠找到。
在Weblogic安裝目錄下,找到你設定的域路徑,例如,我的Weblogic裝在D:\Oracle\Middleware\Oracle_Home\下,在這路徑下找到user_projects\domains\base_domain\bin\startWeblogic.cmd,linux就是.sh,找到set CLASSPATH=%SAVE_CLASSPATH%這一行,大概在檔案的102行左右。在這一行前面新增set PRE_CLASSPATH=D:\Oracle\Middleware\Oracle_Home\wlserver\server\lib\postgresql-9.4-1201.jdbc41.jar。
新增後,修改原先的set CLASSPATH=%SAVE_CLASSPATH% 為 set CLASSPATH=%PRE_CLASSPATH%;%SAVE_CLASSPATH%
設定好之後,啟動Weblogic的域,重新建立pg資料來源,測試連線,又遇到一個問題 unsupported classversion 51.0,這個問題之前也遇到過,原因是jdk版本不夠。
找了下資料,剛剛下載的資料庫驅動包,需要jdk1.7才行,當時的感覺就是日了狗了。。。於是又有兩個解決方案,要麼把Weblogic中自帶的jdk版本升上去,要麼就是把資料庫驅動包的版本降下來。在試著升級jdk版本的時候,遇到的問題,找資料沒解決,於是就考慮把資料庫的驅動包版本降一下。
於是就開始找低版本的jar包了,postgresql-9.0-801.jdbc4.jar,這個jar包,可以在http://download.csdn.net/download/jiasudu0792/4179385免費下載。
下載之後,根據上面說的,放到安裝目錄下的slserver\server\lib下,在自定義域目錄下找到bin\startWeblogic.cmd,修改配置,重新建立下pg資料來源並測試連線,可以連通,於是趕緊把專案部署起來,進行訪問,可以登入,其它功能也執行良好,於是就這麼部署完了。
當然,如果你需要部署的域太多,或者不喜歡這種降版本的解決方案,或者#¥%#¥%#¥。。。。,你也可以試試把Weblogic自帶的jdk版本升上去,我嘗試過但是失敗了,這裡貼上幾個資料,有興趣的可以自己去嘗試下。
一個是修改Weblogic啟動域的jdk:http://blog.csdn.net/walkingmanc/article/details/7685101
在我安裝的Weblogic10.3.6版本,只有方法3可以,而且jdk的路徑,不能有空格,喜歡把東西安裝在Program Files目錄下的朋友,需要注意了!!!
方法3:
修改檔案:weblogic安裝目錄\user_projects\domains\base_domain\bin\startWebLogic.cmd 在下面行%JAVA_HOME%\bin\java %JAVA_VM% -version 前面增加:
set JAVA_HOME=d:\bea\jdk160_05
修改之後,會出現Unrecognized option: -jrockit
為什麼加大呢。。。因為就是嘗試到這裡失敗了。。。what the hell !!!!
另一個資料,也就是有關於這個問題的
根據這個文章說的,找到D:\Oracle\Middleware\Oracle_Home\oracle_common\common\bin下的commEnv.cmd,大概在140行和148行,將set JAVA_VM=-jrockit改為set JAVA_VM=-server,設定完成之後,並沒有什麼卵用,所以才使用降低資料庫驅動包版本的方法。
以上就是整個部署過程的描述了,如果有遇到相同問題,採用升級jdk版本的解決方案,並且成功的朋友,還請不吝賜教!謝謝