步驟一 項目準備:
1.項目的WEB-INF下要有weblogic.xml
<?xml version="1.0" encoding="utf-8"?>
<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90">
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
....
</weblogic-web-app>
2.項目打包
- 項目打成war包後解壓,解壓後文件夾名跟上下文根有關;
(聽說用文件夾方式發佈,比較穩定);
步驟二 創建數據源:
- 依次點擊base_domain->服務->數據源出現如下界面
- 點擊 新建 按鈕,出現如下界面,選擇【一般數據源】:
- 填寫jdbc和jndi的名稱,選擇你所用的數據庫,下一步
- 選擇正確的數據庫驅動程序,點擊下一步
- 默認 下一步
- 填寫正確的數據庫用戶名、密碼和數據庫的地址,數據名稱就是SID。
- 點擊測試配置,測試一下配置的jndi是否能正常連上數據庫。
- 點擊 完成即可。
- 點擊【完成】後,如圖
步驟三 :項目中的applicationContext.xml更改
<!-- JNDI Configuration -->
<jee:jndi-lookup id="dataSource" lookup-on-startup="true"
jndi-name="數據源名稱" />
<!-- 第二種方式 JNDI Configuration-->
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName" value="數據源名稱"/>
</bean>
步驟四:去掉多餘的jar包
- 去掉lib中的xml-api.jar和xercesImpl.jar
(weblogic中有解析xml的jar包,如果不去掉會報xml解析錯誤)。
步驟五:部署項目
- 進入部署頁面
- 點擊安裝,選擇文件下的程序。
選擇放置項目文件的上一級,然後選擇你部署的項目。
- 默認 下一步
- 選擇程序所安裝的服務器
如果沒有新建服務器,只有AdminServer。新建服務器看日誌的時候會方便一點。
- 默認選項,下一步
- 點擊【下一步】
- 單擊完成,即完成應用的部署。
- 查看新安裝程序的狀態
weblogic部署兩個常見的錯誤
- 更改發佈的文件後無效
(很可能是緩存的問題,這裏說一下緩存的清除)
清理緩存步驟如下:
前置條件:停止服務
找到下面3個目錄,然後將裏面的文件刪除即可: ……/user_projects/domains/base_domain/servers/AdminServer/tmp/ ……/user_projects/domains/base_domain/servers/AdminServer/cache/
……/user_projects/domains/base_domain/config/deployments/
注意:在cache目錄下如發現有security 文件夾,該文件夾爲安全認證 文件,不可刪除。
通常測試模式的服務自動會生成該文 件,而生產模式則需人爲創建。- 重啓服務器;
java.lang.OutMemoryError:PermGen space
- 修改weblogic安裝目錄下wlserver\common\bin\commEnv.cmd,找到
set MEM_ARGS=-Xms32m -Xmx200m -XX:MaxPermSize=128m,修改成set MEM_ARGS=-Xms256m -Xmx512m -XX:MaxPermSize=256m
,可根據機器配置調整。其中有針對oracle自己jvm和sun jvm的配置,我使用的是sum的jvm所以只修改了“:sun”
下面的MEM_ARGS。解釋一下參數含義:
-Xms:內存初始值
-Xmx:內存最大值(不要超過內存的80%)
-XX:MaxPermSize:PermGen(用於存放Class和Meta的信息)區域內存最大值。
- 修改weblogic安裝目錄下wlserver\common\bin\commEnv.cmd,找到