diggbag

          BlogJava 聯(lián)系 聚合 管理
            0 Posts :: 13 Stories :: 6 Comments :: 0 Trackbacks

          項(xiàng)目框架是struts2+spring,在未使用AOP機(jī)制前,在action層注入的service是沒有問題的,但是當(dāng)嘗試在action層使用AOP機(jī)制攔截相關(guān)異常時,會出現(xiàn)注入失敗的問題,出現(xiàn)空指針異常。

          問題分析:原因是一般struts2+spring應(yīng)用中,spring的插件只負(fù)責(zé)為action的ioc部分,但并沒有進(jìn)行功能加強(qiáng),即采用代理的機(jī)制,所有的action還是使用struts2進(jìn)行管理,
          在使用AOP后,這些action需要由spring進(jìn)行管理,如果沒有由spring進(jìn)行代理,將出現(xiàn)注入失敗。

          解決辦法:在每個action前加上@Component("loginAction") @Scope("prototype"),在struts的配置中使用loginAction的名字進(jìn)行配置,@Scope用于聲明action使用多實(shí)例,這樣AOP可以進(jìn)行正常注入

          posted on 2012-02-02 12:14 哲同 閱讀(2681) 評論(2)  編輯  收藏 所屬分類: java相關(guān)

          Feedback

          # re: 使用spring AOP后注入失敗的解決方法[未登錄] 2012-06-08 17:06 卡卡
          你好,我也遇到你說的這個問題,但是使用你的方法,還是沒有成功。請問是否可以把你的demo發(fā)給我看下。多謝  回復(fù)  更多評論
            

          # re: 使用spring AOP后注入失敗的解決方法 2012-08-01 17:19 哲同
          @卡卡
          加上這些注釋以后,還需要自動掃描的  回復(fù)  更多評論
            

          主站蜘蛛池模板: 山丹县| 合水县| 静安区| 佛教| 通州区| 赫章县| 台中市| 呼和浩特市| 龙门县| 周口市| 高淳县| 郧西县| 吴堡县| 图们市| 越西县| 湾仔区| 宁武县| 黄冈市| 安宁市| 沙田区| 盐津县| 台山市| 永城市| 漳浦县| 乌审旗| 宁强县| 资中县| 内江市| 鹤岗市| 兰坪| 织金县| 淮南市| 江川县| 扎赉特旗| 伊吾县| 盱眙县| 蓬莱市| 策勒县| 定襄县| 锡林郭勒盟| 博白县|