2014-01-05 29 views
1

我有關於Eclipse警告和CDI @Inject的問題。Eclipse和注入點的不滿意或不明確的依賴關係:

我有電子郵件驗證碼(CDI豆):

@Named(value = "emailValidator") 
@ApplicationScoped 
@FacesValidator("emailValidator") 
public class EmailValidator extends AbstractCDIBean<EmailValidator> implements Validator { 
    /** 
    * 
    */ 
    private static final long serialVersionUID = 1L; 

    @Inject 
    private UserLocal     userLocal; 
    ... 

它的工作原理,但是Eclipse說:

無豆可享有注射到注射點[JSR- 299§5.2.1](注入點的不滿意或模棱兩可的依賴關係)。

我在做什麼錯? Eclipse是最新版本。

private UserLocal userLocal; 

類是調用EJB一豆(public interface UserLocal{ methods...})

回答

2

您想@EJB更換@Inject或你想要把@Dependent範圍EJB實現本地接口。

原因是@Inject只需要範圍感知的bean。

以供參考請使用these troubleshooting tips

+1

這是一個很好的答案。在jboss的kitchensink例子中,通常有一個package.util.Resources bean,它沒有用範圍註釋。我添加了@Dependent來修復警告並部署問題。 –

相關問題