JDT 只能開發普通 Java 應用,WTP 為 Eclipse 注入 JSP、Servlet、EJB、XML 編輯器與部署/除錯支援。本教學用 WTP 1.0 + Derby + JBoss 3.2.3,手把手構建含 JSP/Servlet/Session Bean 的三層書籤應用。
記憶體/磁碟需同時跑 Eclipse + JBoss + Derby。
BookmarkEJB,加入 EAR BookmarkEAR,啟用 ejbdocletBookmarkWeb,同樣加入 BookmarkEAR,啟用 webdocletProject Explorer 見雙專案掛載同一 EAR(圖 4、5)。

圖 4:建立 BookmarkEJB 專案後

圖 5:建立 BookmarkWeb 專案後
BookmarkEJB → Apache Derby → Add Nature / Start Network Serverwtp,用戶 APP/password,指定 derbyclient.jarCREATE TABLE bookmarks (url VARCHAR(255) PK, title VARCHAR(255)) 並插入兩筆測試資料(圖 7-9)
圖 7:展開的 Database Explorer

圖 8:Database Output 視圖

圖 9:書籤表內容
$JBOSS/server/default/deploy/derby-ds.xml 定義 DerbyDS (JNDI)、連線 URL jdbc:derby://localhost:1527/wtp、驅動 org.apache.derby.jdbc.ClientDriver、連線池 5-20derbyclient.jar 到 $JBOSS/server/default/libDerbyDS 部署成功@ejb.resource-ref 綁定 DerbyDSBookmarkValueObject (Serializable) 傳遞資料getBookmarks() (JDBC 查詢) / saveBookmark() (PreparedStatement) / getDerbyDataSource() (JNDI 查找)BookmarkWeb 專案屬性勾選 BookmarkEJB.jar 依賴@web.ejb-local-ref 引用 Session BeangetBookmarkSession() JNDI 查找 LocalHome 建立實例doPost() 驗證 URL/Title 長度 → 錯誤導向 SaveBookmarkError.jsp → 成功儲存並查詢全量書籤導向 ShowAllBookmarks.jspCreateNewBookmark.jsp:表單 POST 到 ServletSaveBookmarkError.jsp:輸出 request.getAttribute("errors")ShowAllBookmarks.jsp:JSTL 迭代 request.getAttribute("bookmarks") 顯示超連結CreateNewBookmark.jsp → Run As → Run on Server → 選 JBossBookmarkEAR.ear Deployed
圖 18:EAR 部署中錯誤

圖 19:SaveBookmarkError 輸出

圖 20:ShowAllBookmarks 輸出
全程體驗 WTP 精靈生成 EJB/Servlet/JSP、XDoclet 標註驅動部署描述符、Derby/JBoss 整合、EAR 熱部署測試。掌握此流程,即具備 WTP 進行 Web/J2EE/資料庫開發的核心能力。