免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項超值服

開通VIP
Frails 介紹. - SoA愛好者 - BlogJava
使用JSF的人都知道,JSF本身是一個很優(yōu)秀的Web Model 2框架, 具有很多優(yōu)秀的思想.

但是有些時候JSF的使用還是不是十分方便. 尤其是對于初學(xué)者而言, 常常被一些莫明其妙的問題搞得暈頭轉(zhuǎn)向.
相信很多初學(xué)者都見到過這個Exception吧:

嚴(yán)重: Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: Cannot find FacesContext

當(dāng)我在學(xué)習(xí)JSF的時候,看到這個Exception我找了半天都沒有發(fā)現(xiàn)我的代碼哪里錯了(代碼不可能出錯,因為是直接copy的書中的源代碼 呵呵), 后來不經(jīng)意間才發(fā)現(xiàn)原來訪問頁面的URL錯了, 在JSF配置文件中配置的servlet映射為.jsf,所以訪問的URL應(yīng)該是 .... index.jsf, 而不是.... index.jsp., 就這么一點(diǎn)疏忽就讓人白忙活了半天. 郁悶哦.

隨著學(xué)習(xí)的深入,這種基本錯誤是很少再出現(xiàn)了(就算出現(xiàn)也可以馬上知道問題的根本), 但是JSF其他的一些限制又是讓人感到很郁悶的. 比如 Form數(shù)據(jù)的提交, JSF規(guī)范中為了維護(hù)服務(wù)端的組件樹 只能使用Post提交, 而不可以使用Get. 而Get方法在很多地方還是非常有用的.

另外還有Faces API使用起來不是十分直接的問題, 要把一個數(shù)據(jù)放入到session中就要一大串的操作( FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put(name, val); ),讓人感覺很不爽.

....

如果你經(jīng)常遇到這些問題, 那么現(xiàn)在我將告訴你一個好消息, 有了Frails 這些問題都可以輕而易舉的解決了.

我們先來看看Frails是什么?

在Frails主頁上定義 http://frails.hexiao.cn/what-is-frails.html

what is frails?

Frails 是基于JSF上的一個開發(fā)效率和RoR可以向媲美的JavaEE框架 !

Ruby On Rails(RoR)因為在開發(fā)web程序的高效性而風(fēng)行一時(可能現(xiàn)在仍然很熱), 那些RoR的支持者說, RoR可以比java的開發(fā)效率高出10倍以上,我們對此觀點(diǎn)持懷疑的態(tài)度. 我們相信,如果有正確的開發(fā)方法來支持現(xiàn)在的Java web framework,則 Java web開發(fā)的效率 不會如此的低下.所以 我們研究了一下RoR的實現(xiàn)機(jī)制,來實現(xiàn)我們Java框架中的RoR. 因此, 我們提供一個在開發(fā)效率上和RoR可以媲美的JavaEE開發(fā)框架 -- Frails !

知道了Frails是什么后, 我們再來看看Frails有什么特性, 能給JSF帶來什么功能上的增強(qiáng).


在Frails主頁上列舉了Frails的如下主要特性: http://frails.hexiao.cn/frails-features.html

Frails(Java Server Faces On Rails)基于Java Server Faces (JSF),并將提供對 Hibernate和Spring的支持. 主要特征如下:

Frails 讓開發(fā)者使用約定(習(xí)慣)和注解(annotations)來省略在 faces-config.xml 文件中 managed-bean 和 navigation-rule的配置.
Frails 提供一個更簡單的方法來使用 Faces API.
Frails 重定向非 faces 請求為一個 faces 請求,這樣可以避免因為URL輸入的疏忽導(dǎo)致的異常.
Frails 提供一些預(yù)定義的 Managed Bean 基類讓開發(fā)者擴(kuò)展 .
Frails 可以讓開發(fā)者在 Managed Bean 中使用注解(Annotation)來支持AOP功能 ,如 函數(shù)攔截(method interception).
Frails 提供 Managed Bean 屬性的injection 和 outjection
Frails 中的Hibernate GenericDao 對象提供了基本的 CRUD 函數(shù) 和 其他一些有用(常用)的數(shù)據(jù)訪問函數(shù).
Frails 還提供了一些有用的注解(annotations)來簡化JSF的開發(fā).
Frails 完全支持 jsf 1.1 和 jsf 1.2 規(guī)范,并且可以自動的探測你使用的版本.
Frails 提供了對action Method 和 Listener 函數(shù)的增強(qiáng),在這些函數(shù)中現(xiàn)在你可以傳遞參數(shù)了.


知道這這么多Frails的東東, 那么你不禁要問,如何使用Frails呢.

這個是很簡單的.   你只需要在web.xml文件中添加下面的配置:

<filter>
<filter-name>FacesFilter</filter-name>
<filter-class>net.sf.frails.filters.FacesFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>FacesFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


然后把你下載的frails4jsf1.X.jar 放到類路徑中就可以使用了.

現(xiàn)在可以使用了, 你不禁要問, 如果在使用過程中我遇到了問題, 要到哪里得到幫助呢,如果我有好的Frails改進(jìn)建議要到哪里提議呢.
關(guān)于frails的服務(wù)問題, 你可以到JavaCafe http://www.hexiao.cn/jsf/ 論壇的Frails專區(qū)中取得幫助.

ok, 這次Frails 簡介就先到這里, 希望Frails能在你開發(fā)Java web app時給你帶來一絲清爽.
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Frails誕生,JSF一統(tǒng)WEB天下不再是夢想?
用JSF和MyFaces上傳文件
Servlet和JSP規(guī)范版本對應(yīng)關(guān)系
servlet與filter
Apache myfaces介紹和配置
java之Lambda函數(shù)式編程最佳應(yīng)用舉例, 鏈?zhǔn)秸Z法「真干貨來拿走」
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服