第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

如何使用@EJB,@ PersistenceContext,@ Inject,@ Autowired

如何使用@EJB,@ PersistenceContext,@ Inject,@ Autowired

LEATH 2019-08-13 16:25:37
如何使用@EJB,@ PersistenceContext,@ Inject,@ Autowired注入@FacesValidator我怎么可以注入的依賴(lài)一樣@EJB,@PersistenceContext,@Inject,@AutoWired,等的@FacesValidator?在我的具體情況下,我需要通過(guò)以下方式注入Spring托管bean @AutoWired:@FacesValidator("emailExistValidator")public class EmailExistValidator implements Validator {     @Autowired     private UserDao userDao;     // ...}然而,它沒(méi)有被注射,它仍然存在null,導(dǎo)致java.lang.NullPointerException??磥?lái)@EJB,@PersistenceContext并且@Inject也不起作用。如何在驗(yàn)證器中注入服務(wù)依賴(lài)項(xiàng)以便我可以訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)?
查看完整描述

1 回答

?
達(dá)令說(shuō)

TA貢獻(xiàn)1821條經(jīng)驗(yàn) 獲得超6個(gè)贊

@FacesValidator不被注入容器管理。您需要將其設(shè)置為托管bean。使用Spring @Component,CDI @Named或JSF @ManagedBean而不是@FacesValidator為了使它成為托管bean,因此有資格進(jìn)行依賴(lài)注入。

例如,假設(shè)您要使用JSF @ManagedBean

@ManagedBean@RequestScopedpublic class EmailExistValidator implements Validator {
    // ...}

您還需要#{name}在EL中將其作為托管bean引用,而不是在硬編碼字符串中作為驗(yàn)證器ID 引用。因此,如此

<h:inputText ... validator="#{emailExistValidator.validate}" />

要么

<f:validator binding="#{emailExistValidator}" />

代替

<h:inputText ... validator="emailExistValidator" />

要么

<f:validator validatorId="emailExistValidator" />

這確實(shí)很尷尬。JSF人員證實(shí)了這種令人尷尬的疏忽,他們將在即將到來(lái)的JSF中成為@FacesValidator(和@FacesConverter)合格的注射目標(biāo)2.22.3,另見(jiàn)JSF規(guī)范問(wèn)題763。對(duì)于EJB,可以通過(guò)從JNDI手動(dòng)獲取它來(lái)解決此問(wèn)題,另請(qǐng)參閱在@FacesConverter和@FacesValidator中獲取@EJB。如果您碰巧使用CDI擴(kuò)展MyFaces CODI,那么您也可以通過(guò)@Advanced在類(lèi)上添加注釋來(lái)解決它


更新:如果您碰巧使用JSF實(shí)用程序庫(kù)OmniFaces,因?yàn)榘姹?.6增加了對(duì)使用@Inject@EJB@FacesValidator類(lèi)中的透明支持,而無(wú)需任何其他配置或注釋。另請(qǐng)參閱CDI @FacesValidator展示示例。


查看完整回答
反對(duì) 回復(fù) 2019-08-13
  • 1 回答
  • 0 關(guān)注
  • 866 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)