我正在尝试使用CDI,但注入不起作用,对象实例未创建,我得到一个空指针: greetObj.greet( “冠军”);
我正在尝试在EJB中注入一个bean: 我的EJB:
public @Stateless class CDIEjbBean implements CDIEjb {
@Inject Greeting greetObj;
public String getGreeting() {
return greetObj.greet("Champion");
}
}
以及问候对象和限定符
@Default
public class Greeting {
public String greet(String name) {
return "Hello, " + name + ".";
}
}
@Qualifier
@Retention(RUNTIME)
@Target({TYPE, METHOD, FIELD, PARAMETER})
public @interface Informal {}
@Informal
public class InformalGreeting extends Greeting{
public String greet(String name) {
return "Hi, " + name + ".";
}
}
任何想法?我在JDK6_21 glassfish 3.1
谢谢
亚历
答案 0 :(得分:2)
我错过了JEE6教程的第一行:>配置CDI应用程序使用CDI的应用程序必须具有名为beans.xml的文件。