第1段. 起式:準備Struts 開發
引子
在去年, Struts 框架的流行簡單到了可怕的增長程度。自從Struts 1.1 于2003年6月發布以來,Struts 已經成為開發復雜JSP Web應用最流行的框架了。Struts的用戶郵件列表非常繁忙,通常每天有70條消息。
雖然很流行,解決如何進行Struts 開發入門的問題仍然是一個公共的話題。這一段中的招式應該能夠幫助你的Struts開發能夠起步。
很多優秀的商業工具也構建在Struts之上,這里我們主要關注的還是開源和免費的工具和框架 (如同 "免費啤酒(free beer)")。通過對免費工具的關注,給予開發者更多鼓勵,如果他們想要使用它們的時候盡管進行試驗。
第1.1式. 下載Struts
問題
你想要開始使用Struts進行應用開發。
動作分解
從http://struts.apache.org/acquiring.html下載Struts的二進制代碼或者源代碼,并且部署示例應用到你的Web容器。
招式變化
對于Struts新手開發者的一個通用問題是要使用哪一個發布版本。如果沒問題,任何新建的Struts項目都應該使用最新的有效版本。在本書寫作時,Struts 1.2.4 (本書稱為Struts 1.2) 剛剛完成GA (General Availability)階段。

|
對于尋求最新和最強Struts特征以獲取經驗的開發者來說, Struts 的Nightly Build 將提供Struts 1.3的一窺。 |
你將發現擁有二進制代碼和源代碼分發包是有用的。binary distribution 包括Struts JAR 和相關依賴的JAR。換言之,源代碼distribution將包含Struts 框架本身的源代碼,以及Struts 標簽庫的Java代碼。同樣重要的是, source distribution 包括所有提供的示例應用的Java 代碼,部署描述符, HTML 頁面,和JSP 頁面。

|
這些distributions 的實際內容將依賴于你是否獲取最新的Release Build 或者Struts Nightly Build。 |
Struts 1.2 的Release Build 的binary distribution 包含一個基本的README文件,一個安裝文檔,以及發布說明。lib文件夾包含Struts JAR 文件,以及來自于Jakarta Commons 項目的依賴JAR 文件。contrib文件夾包含沒有視為Struts核心部分的對Struts分發包的貢獻。特別地,這個文件夾還包含Struts-EL的JAR 文件和示例web 應用。Struts-EL 使你可以在Struts標簽中使用JSTL (JSP 標準標簽庫) 風格的表達式語言。它包括必要的JSTL 標簽庫。
Struts 1.2 Release Build 的source distribution 包括Struts 框架的源代碼,以及示例應用的源代碼和web 資源。另外,contrib文件夾還包括Struts社區貢獻對contribution的名單,當前沒有成為Struts核心而將來可能成為的源代碼。一些特定的貢獻包括:
Struts-EL
Struts標簽的JSTL 表達示語言支持。
Struts-Faces
支持Struts應用和JavaServer Faces技術進行集成的框架層。
Scaffold
一套幫助將你的數據層(模型)和Struts集成的基類和工具類。
一旦你下載了源代碼和二進制distribution,你就可以部署Struts中包含的示例應用,這個問題參見第1.2式。
參見
第1.2式將描述如何部署Struts distribution中包含的Struts 示例應用。
如果你完全是一個Struts的新手,你可能需要首先看看Chuck Cavaness 的Programming Jakarta Struts一書(O'Reilly)。其他信息可以直接訪問Struts 主頁http://struts.apache.org.