Pre-requisistes

首先,你需要一個 Java JDK。我們將會用到一些 Tapestry Annotation,它需要 JDK 1.5。

教程中的範例由 Ant 構建,需要 1.6.2 或是更高的版本。

所有教程中的源代碼都以一個 tar 文件發佈:tapestry-tutorials.tar.gz,見:http://howardlewisship.com/downloads/quick-start/

每個教程都是一個獨立的項目(事實上,它包括了 .project 和 .classpath 文件,因此可以在 Eclipse 中使用)。此外,tapestry-tutorials 項目中還包含了應用程序所需的庫文件集:Tapestry 庫以及它所依賴的庫文件。

tutorials-structure

每個教程項目都有著相同的目錄結構:

single-tutorial

src/conf 目錄只有一個 log4j.properties 文件,用於設置應用程序運行時的日誌記錄。

src/context 目錄包含了用於 Web 應用程序歸檔的文件;它包括 HTML、CSS 文件以及圖像。在 WEB-INF 目錄裡則是標準的 web.xml 部署描述文件,加上 Tapestry 相關的文件。

Ant 的 war 標記會編譯 Java 源文件(存儲在 src/java 內),然後創建一個包含編譯後的 classes(在 WEB-INF/classes 內)、src/context 中的內容以及打包在 WEB-INF/lib 裡的所有依賴庫(來自於 tapestry-libraries)的 WAR 文件。這個文件會存儲在目標目錄(在必要時創建)下,然後以項目名稱命名。

Building and Deploying

創建一個教程(譯注:即教程中的項目),只需切換到它的目錄下然後執行 ant:

bash-2.05b$ ant
Buildfile: build.xml

compile:
[mkdir] Created dir: C:\workspace\directlink\target\classes
[javac] Compiling 1 source file to C:\workspace\directlink\target\classes
[javac] Note: C:\workspace\directlink\src\java\tutorials\directlink\pages\Home.java uses or overrides a deprecated API.
[javac] Note: Recompile with -Xlint:deprecation for details.

war:
[war] Building war: C:\workspace\directlink\target\helloworld.war

BUILD SUCCESSFUL
Total time: 8 seconds
bash-2.05b$

最終生成的 WAR 文件就可以部署到任何的 Servlet 容器上了,像 Jetty  或是 Tomcat