Apache Slide 是一個功能強大的 WebDAV 實現,支援版本控制、鎖定機制及存儲抽象等特性。將其部署到 BEA WebLogic 伺服器環境中,關鍵在於正確配置 JAAS(Java Authentication and Authorization Service)認證機制。本文詳細記錄從建立 Domain 到驗證部署的完整流程,並針對常見問題提供解決方案。
首先使用 WebLogic 配置精靈建立一個新 Domain,假設名稱為 mydomain,監聽端口設為 8001。Domain 目錄預設位於 D:\bea\user_projects\domains\mydomain。
jakarta-slide-2.1-tomcat-5.0.28.zip 並解壓縮。conf 資料夾中找到 jaas.config 文件。D:\bea\weblogic81,即 %WL_HOME%)。進入 Domain 目錄 D:\bea\user_projects\domains\mydomain,編輯 startWebLogic.cmd:
%JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% ...%JAVA_OPTIONS% 後插入參數(注意前後需加空格): -Djava.security.auth.login.config=%WL_HOME%\jaas.config 修改後該行大致如下:
%JAVA_HOME%\bin\java %JAVA_VM% %MEM_ARGS% %JAVA_OPTIONS% -Djava.security.auth.login.config=%WL_HOME%\jaas.config ...
Slide.war 內 WEB-INF/lib 目錄已包含所需 JAR,正常情況下無需額外配置 Classpath。但在某些機器上部署後仍報 ClassNotFoundException,此時需手動配置:
slide.war 中的所有 JAR 解壓至獨立目錄,例如 D:\slide。startWebLogic.cmd 中修改 CLASSPATH 變數,將上述 JAR 完整路徑加入,並保留原有路徑。示例:set CLASSPATH=D:\slide\slide-webdavservlet-2.1.jar;D:\slide\slide-jaas-2.1.jar;D:\slide\commons-codec-1.3.jar;D:\slide\slide-jdk14logger-2.1.jar;D:\slide\servlets-webdav.jar;D:\slide\servlets-default.jar;D:\slide\catalina.jar;D:\slide\slide-kernel-2.1.jar;D:\slide\slide-log4jlogger-2.1.jar;D:\slide\slide-roles-2.1.jar;D:\slide\saxpath.jar;D:\slide\slide-stores-2.1.jar;D:\slide\commons-transaction-1.0.jar;D:\slide\jdom-1.0.jar;D:\slide\commons-collections-2.1.jar;D:\slide\jaxen-core.jar;D:\slide\jaxen-jdom.jar;%WEBLOGIC_CLASSPATH%;%POINTBASE_CLASSPATH%;%JAVA_HOME%\jre\lib\rt.jar;%WL_HOME%\server\lib\webservices.jar;%CLASSPATH%
提示: 路徑間以分號 ; 分隔,確保無拼寫錯誤。
https://localhost:8001/console。slide.war(目標選擇 myserver 或叢集)。root,密碼自訂(如 Root12345)。root。slide-group(可選),將 root 用戶加入該群組。root 用戶加入 root 角色。注意: Slide 內部 Domain.xml 預置了 root 用戶與角色,未在該文件定義的用戶無法訪問。配置 Realm 後,認證以控制台為準,不再讀取 Domain.xml 中的密碼。
若控制台部署無異常,瀏覽器訪問 https://localhost:8001/slide/files/,彈出認證對話框,輸入 root 及設定密碼即可進入。
/slide 根路徑;WebLogic 下僅能訪問子路徑如 /slide/files/。原因在於 WebLogic 對 Web 應用上下文路徑的處理機制不同,Slide 的 welcome-file-list 或 servlet-mapping 在 WebLogic 環境下未正確觸發根路徑重導向。可通過在 web.xml 額外配置 / 對應到 files/ 的 servlet 來繞過。完成上述步驟即可在 WebLogic 上穩定運行 Apache Slide。若遇到類加載衝突,建議優先嘗試「父優先」或「子優先」類加載策略調整。如有疑問,歡迎透過以下方式交流:
baozhengw999@hotmail.combaozhengw@163.com29803446