首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> J2EE

JSF 2 打造可重用 Ajax 組件實戰(八):Eclipse 專案配置與目錄結構

     編輯:J2EE

前言:標準化專案結構 — 讓組件代碼「跑起來」

本文演示如何在 Eclipse 中創建 Dynamic Web Project,配置目標運行時、模塊版本、內容目錄、源碼目錄,並展示最終專案結構,為後續部署運行奠基。

1. 創建 Dynamic Web Project

  1. File → New → Dynamic Web Project
  2. Project name: `autoComplete`
  3. Project contents:取消 "Use default",Browse 選擇源碼根目錄 `autoComplete` (包含 `src/java`、`web` 等)
  4. Target Runtime: GlassFish v3 Java EE 6
  5. Dynamic Web Module version: 2.5 (或 3.0)
  6. Configuration: Default Configuration for GlassFish v3 Java EE 6
  7. EAR Membership: 取消勾選
  8. Next

專案配置步驟1

2. Web 模塊設置

  1. Context root: `autoComplete`
  2. Content directory: `web` (存放 Facelet、JS、CSS、resources)
  3. Java source directory: `src/java`
  4. 取消 "Generate web.xml deployment descriptor" (JSF 2.0 / Servlet 3.0 可選)
  5. Finish

專案配置步驟2

3. 最終專案結構 (Project Explorer 視圖)

autoComplete
├─ Deployment Descriptor: autoComplete
├─ Java Resources
│  └─ src/java
│     └─ com.corejsf
│        ├─ AutocompleteListener.java
│        ├─ AutoComplete.java
│        └─ User.java
├─ JavaScript Resources
├─ build
├─ WebContent (或 web)
│  ├─ META-INF
│  ├─ resources
│  │  └─ util
│  │     └─ autoComplete.xhtml   <-- 復合組件定義
│  ├─ WEB-INF
│  │  ├─ faces-config.xml (可選)
│  │  └─ lib (第三方 JAR)
│  ├─ index.xhtml                <-- 演示頁面
│  └─ template.xhtml (可選)
└─ .settings / .project / .classpath

專案結構

4. 關鍵目錄約定說明

目錄/文件用途備註
`web/resources/util/autoComplete.xhtml`復合組件定義 (cc:interface + cc:implementation)命名空間 `xmlns:cc="https://java.sun.com/jsf/composite"`,資源庫 `util` 對應標籤前綴 ``
`src/java/com/corejsf/AutocompleteListener.java`Ajax 監聽器 (SessionScoped CDI Bean)處理 `valueChangeEvent` (輸入框) 和 `completionItemSelected` (列表選擇)
`src/java/com/corejsf/AutoComplete.java`應用級 Bean (ApplicationScoped),提供完成項數據 `getCountries()`模擬數據源,實際可注入 Service/JPA Repository
`src/java/com/corejsf/User.java`會話級 Bean (SessionScoped),綁定輸入框值 `country`模擬表單數據模型
`web/index.xhtml`演示頁面,引用 ``展示組件使用方式
`web/resources/` 下的 JS/CSSJSF 2 標準資源庫機制`` 自動載入

5. 無 web.xml 的 Servlet 3.0 / JSF 2.0 自動配置

  • FacesServlet 自動映射到 `*.xhtml`、`/faces/*`、`/javax.faces.resource/*`。
  • CDI (Weld) 自動啟用 (需 `WEB-INF/beans.xml` 空文件或 `bean-discovery-mode="annotated"`)。
  • 若需自定義配置 (如 Facelet 刷新周期),可添加 `web.xml` 覆蓋默認值。

結語

標準化的 Eclipse Dynamic Web Project 結構配合 Servlet 3.0 / JSF 2.0 / CDI 的零配置特性,讓開發者專注於組件邏輯而非基礎設施 XML。下篇將演示如何關聯 GlassFish Server Runtime 並一鍵運行驗證。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved