




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、無縫集成JSFSeam在哪里配置集成JSF?在Jboss-seam.jar包中/META-INF/faces-config.xml中配置集成JSForg.jboss.seam.jsf包中 各個類都做了哪些事情?org.jboss.seam.jsf.SeamApplicationFactory 代理 JSF的ApplicationFactoryorg.jboss.seam.jsf.SeamNavigationHandler 擴展JSF的導(dǎo)航,如果 outcome 是“/”開頭,則Redirect ,如果outcome在PageFlow里定義,使用PageFlow導(dǎo)航,然后使用Pages的導(dǎo)航,如
2、果Pages的導(dǎo)航不成功,則使用JSF默認(rèn)的導(dǎo)航org.jboss.seam.jsf.SeamViewHandler 允許JSF的Locale集成Seam的國際化 the locale coming from Seam .jboss.seam.jsf.SeamStateManager 在保存JSF的View時保存Page Parametersorg.jboss.seam.el.SeamELResolver 增強EL,包括Map和DataModel、Namespace等org.jboss.seam.core.SeamResourceBundle 處
3、理pages.xml和conponents.xml的的resource bundles定義org.jboss.seam.jsf.SeamPhaseListener 擴展JSF的生命周期org.jboss.seam.document.DocumentStorePhaseListener 擴展JSF使之支持靜態(tài)資源訪問Seam對JSF生命周期修改了哪些內(nèi)容,各項內(nèi)容代碼位置在哪里?修改內(nèi)容如下:1. 支持Portlet2. 擴展JSF生命周期:RESTORE_VIEW 前 根據(jù)JSF的session,application和request創(chuàng)建seam相應(yīng)的context處理事務(wù)主要為Convers
4、ationRESTORE_VIEW 后 Restore Conversation Restore Page ParametersPROCESS_VALIDATIONS 后 如果驗證失敗raiseEvent("org.jboss.seam.validationFailed");INVOKE_APPLICATION 后 如果事務(wù)失敗,.raiseEvent(TRANSACTION_FAILED, tx.getStatus()RENDER_RESPONSE 前 應(yīng)用Request Parameters 處理data model的選擇 ,調(diào)用Page 的Action ,保存 Con
5、versation處理facesMagesges和事務(wù)主要為ConversationRENDER_RESPONSE 后 flush和destory Context主要代碼在org.jboss.seam.jsf.SeamPhaseListener中幾個 protected方法中,以及FacesLifecycle中Seam的Page Flow 在哪個類的代碼里實現(xiàn)的?由org.jboss.seam.jsf.SeamNavigationHandler 進入rg.jboss.seam.pageflow.Pageflow 實現(xiàn)PageFlowPageFlow與JSF的導(dǎo)航相比增加了哪些功能?1. Pag
6、e Action2. EL表達式增強3. Redirect 增強4. 復(fù)雜邏輯的跳轉(zhuǎn)組件模型Seam組件如何加載?加載策略有哪些,有何不同?從org.jboss.seam.servlet.SeamListener開始,由 Initialization 加載組件StandardDeploymentStrategy 標(biāo)準(zhǔn)加載WarRootDeploymentStrategy 從war 的Root加載HotDeploymentStrategy 熱部署方式加載,默認(rèn)在/WEB-INF/dev的組件Seam中包含哪些Context 各是什么?與JSF和EJB的關(guān)系?Stateless 對應(yīng)EJB的 sl
7、sbEvent 對應(yīng)JSF的Request或者 EJB中的遠程調(diào)用請求Page 對應(yīng)一個頁面Conversation 一個對話,跨多頁面多RequestSession 對應(yīng)JSF的 sessionBussiness process 其context由工作流引擎管理和提供,seam直接引用 Application 對應(yīng) JSF的applicationSeam中有哪些組件?Seam如何攔截EJB組件?SLSBSFSBEntity Bean (JPA entity class)Java Beans Messge Driven BeanSpring BeansEJB需要是哦那個Interceptor才
8、可以管理EJB 的Beans 可以在Annotation中,也可以在EJB 的application.xml中定義內(nèi)置組件如何查找,常用的有哪些?Reference中專門一章介紹內(nèi)置組件常用的有facesMassage log等組件什么是雙向注入?特性 contextual(上下文相關(guān)的) - 雙向注入用來針對不同的上下文來組裝有狀態(tài)組件(在較大范圍的上下文中的組件,可以引用較小范圍上下文中的組件) bidirectional(雙向的) - 被觸發(fā)后,值從上下文變量中注射到組件屬性中,也可以從組件屬性outjected(反向注入) 回上下文,這樣被調(diào)用的組件可以只通過改寫自己的實例變量就同時操
9、作了上下文變量的值 dynamic(動態(tài)的) - 因為上下文變量的值隨著時間不斷改變,而且因為Seam組件是有狀態(tài)的,雙向注入在每次組件被調(diào)用的時候都發(fā)生。各種組件的生命周期方法有哪些?用在何處,何時被調(diào)用? Session Bean和實體Bean Seam組件支持所有通用的EJB3.0生命周期回調(diào)(PostConstruct, PreDestroy, 等等)。但是Seam也同樣支持JavaBean組件使用任意的這些回調(diào)。然而,一但這些注解在J2EE環(huán)境中失效,Seam定義了兩個附加組件完成生命周期回調(diào),這等同于 PostConstruct 和 PreDestroy. Create 方法在Se
10、am實例化一個組件后被調(diào)用。組件只可以定義一個 Create 方法。 Destroy 方法在Seam組件被綁定的上下文結(jié)束時被調(diào)用。組件只可以定義一個Destroy 方法。 另外,有狀態(tài)Session Bean組件 必須 定義一個無參并注解為 Remove 的方法。這個方法在上下文結(jié)束時被Seam調(diào)用。 最后,相關(guān)的注解還有 Startup,它可以用在任何Application或者Session范圍的組件上。 Startup 注解告訴Seam在上下文開始的時候立刻初始化組件,而不是在被客戶訪問的時候才創(chuàng)建。 控制startup組件的初始化順序通過指定 Startup(depends=.)進行。其他問題JBPMSeam 默認(rèn)支持JBPM,配置簡單,通過官方給出的TODO List以及 BookStore的樣例來了解。JBPM的設(shè)計JBOSS有專門的Designer,目前不需要Eclipse插件來設(shè)計JPA的ManyToMany關(guān)系Seam-gen中的構(gòu)建腳本build.xml中將detectmanytomany改為true,另外ManyToMany的中間關(guān)聯(lián)表必須是聯(lián)合主鍵,并且沒有第三個列,才會生成ManyToMany關(guān)系工
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 分紅股合作合同范本
- 公司建材購銷合同范本
- 車輛運輸肉類合同范本
- 供貨合同范本范文
- 養(yǎng)殖股東協(xié)議合同范本
- 華為購車合同范本
- 區(qū)代理商合同范本
- 儲料倉合同范本
- 制作標(biāo)識標(biāo)牌合同范本
- 合理借款合同范例
- 動畫劇本創(chuàng)作課件
- 40篇英語短文搞定高考3500個單詞
- 【企業(yè)會計信息化存在的問題及解決對策開題報告】
- 痘痘肌膚的各種類型
- (完整版)設(shè)計管理
- 中國嚴(yán)重膿毒癥膿毒性休克治療指南2023年
- 材料性能學(xué)(第2版)付華課件0-緒論-材料性能學(xué)
- GB/T 3403.2-2013塑料粉狀脲-甲醛和脲/三聚氰胺-甲醛模塑料(UF-和UF/MF-PMCs)第2部分:試樣制備和性能測定
- GB/T 21835-2008焊接鋼管尺寸及單位長度重量
- 2023年湖南省普通高中學(xué)業(yè)水平考試數(shù)學(xué)版含答案
- 積極情緒的力量
評論
0/150
提交評論