<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 170  文章 - 536  trackbacks - 0
    <2006年9月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    1234567

    常用鏈接

    我參與的團(tuán)隊(duì)

    隨筆分類(103)

    搜索

    •  

    積分與排名

    • 積分 - 414037
    • 排名 - 135

    最新評論

    閱讀排行榜

    看到 Shale 的 Spring Integration 文檔的介紹原理,其中順序如下:

    When asked to resolve a variable name, the following algorithm is performed:

    1.Does a bean with the specified name already exist in some scope (request, session, application)? If so, return it.

    2.Is there a standard JavaServer Faces managed bean definition for this variable name? If so, invoke it in the usual way, and return the bean that was created.

    3.Is there configuration information for this variable name in the Spring WebApplicationContext for this application? If so, use it to create and configure an instance, and return that instance to the caller.

    4.If there is no managed bean or Spring definition for this variable name, return null instead.

    這樣的話,只要 Spring 可以控制 Bean 的 Scope 的話,就可以把 Managed-Bean 的配置放到 Spring Bean 里來配置,一方面,我們可以省去了 JSF 的 Managed Bean 的配置,另外的話,我們可以對 JSF 的 Backing Bean 使用 AOP 以及 Spring 提供的很多功能。過去在 JSF-Spring 中嘗試著去控制 Spring Bean 的 Scope,但是做的并不好,現(xiàn)在 Spring 2.0 給我們提供了這樣的能力,經(jīng)過實(shí)驗(yàn),證明了這樣是可行的。

    不過如果使用 Spring Bean 以后,會(huì)造成使用 Managed Bean 的 JSTL 無法使用,其實(shí) JSTL 本身用起來就時(shí)好時(shí)壞的,所以影響并不太大了。

    整合起來步驟非常的簡單:

    1. 把 Spring 2.0 的 jar 文件放到 lib 下面,當(dāng)前使用的是 Spring 2.0 RC3

    2. 因?yàn)槭褂玫氖?Servlet 2.4,所以要在 web.xml 中加入
    ??? <listener>
    ??????? <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class>
    ??? </listener>

    3. 修改 applicationContext.xml

    注釋或刪掉以下內(nèi)容:

    ? <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
    ? "
    http://www.springframework.org/dtd/spring-beans.dtd ">

    修改 <beans> 為:

    ? <beans xmlns=" http://www.springframework.org/schema/beans "
    ?????? xmlns:xsi="
    http://www.w3.org/2001/XMLSchema-instance "
    ?????? xmlns:aop="
    http://www.springframework.org/schema/aop "
    ?????? xsi:schemaLocation="
    ?
    http://www.springframework.org/schema/beans ? http://www.springframework.org/schema/beans/spring-beans.xsd
    ? http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd ">

    4. 然后就可以按照配置 Spring Bean 的方式來配置 Managed Bean:

    ??? 這個(gè)是 Request Scope 中的 Bean:
    ??? <bean id="loginBean" class="org.agilejava.icustomer.backingbean.LoginBean"
    ????????? scope="request" autowire="byName">
    ??????? <aop:scoped-proxy/>
    ??? </bean>

    ??? 這個(gè)是 Session Scope 中的 Bean:
    ??? <bean id="menuBean" class="org.agilejava.framework.commons.menu.MenuBackingBean"
    ????????? scope="session" autowire="byName">
    ??????? <aop:scoped-proxy/>
    ??? </bean>

    雖然短期來看,配置上會(huì)少寫了一些,因?yàn)?autowire="byName",但是從長遠(yuǎn)來看,我們可以利用 Spring 的更多功能,比如 AOP 來增強(qiáng) Backing Bean 的能力,我的第一個(gè)設(shè)想就是用 AOP 來處理 Backing Bean 中的異常,今后幾天我會(huì)繼續(xù)做這方面的實(shí)踐了。

    posted on 2006-09-05 10:16 steady 閱讀(3582) 評論(2)  編輯  收藏 所屬分類: JSF & Myfaces

    FeedBack:
    # re: JSF without ManagedBean 2006-09-12 16:19 dzzhu
    最近我也在考慮jsf的exception統(tǒng)一處理的問題,jsf沒有提供像struts和webwork提供的那些exception定向功能。

    http://forum.java.sun.com/thread.jspa?threadID=765655
    這篇帖子部分的討論了解決辦法,用servlet filter,定制lifecycle,navigationhandler,ActionListener等,AOP應(yīng)該也是一種解決方法,MBean的getter我想就不用對應(yīng)了,考慮對應(yīng)shale的prerender等幾個(gè)action就OK了。  回復(fù)  更多評論
      
    # re: JSF without ManagedBean 2008-02-02 11:47 ghost
    實(shí)際上我自己是這樣實(shí)現(xiàn)的,將帶有狀態(tài)數(shù)據(jù)的類似prototype類型的對象被JSF配置,而類似于singleton的帶有操作方法的對象(不依賴于數(shù)據(jù))被Spring配置,這樣Spring就不會(huì)牽涉到WEB層的request,response,session等對象,這樣可以保證松耦合  回復(fù)  更多評論
      
    主站蜘蛛池模板: 免费观看91视频| a级片免费观看视频| 成年丰满熟妇午夜免费视频| 亚洲综合色丁香麻豆| 99re在线精品视频免费| 亚洲色图在线播放| 足恋玩丝袜脚视频免费网站| 亚洲毛片免费视频| 毛片a级毛片免费观看免下载 | 一个人看的www免费视频在线观看| 亚洲色偷拍区另类无码专区| 一级做α爱过程免费视频| 中文字幕日韩亚洲| 久久国产乱子精品免费女| 亚洲人成在线影院| 性盈盈影院免费视频观看在线一区| 亚洲欧洲日产国码久在线| gogo全球高清大胆亚洲| 黄床大片免费30分钟国产精品| 亚洲精品乱码久久久久久蜜桃不卡 | 亚洲综合色7777情网站777| 67194成是人免费无码| 亚洲s码欧洲m码吹潮| 亚洲国产高清精品线久久| 99精品视频在线观看免费| 亚洲成在人线电影天堂色| 破了亲妺妺的处免费视频国产| 全部一级一级毛片免费看| 亚洲国产天堂久久综合网站| 好男人www免费高清视频在线| 疯狂做受xxxx高潮视频免费| 亚洲中文字幕无码一久久区| 久久久精品2019免费观看| 日韩国产欧美亚洲v片| 无码乱人伦一区二区亚洲| 国内自产拍自a免费毛片| 你是我的城池营垒免费看| 亚洲成年人免费网站| 亚洲日韩中文在线精品第一| 最近中文字幕国语免费完整| 亚洲人成人网毛片在线播放|