Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在具有运行时保留的对象上找不到批注_Java_Reflection_Annotations - Fatal编程技术网

Java 在具有运行时保留的对象上找不到批注

Java 在具有运行时保留的对象上找不到批注,java,reflection,annotations,Java,Reflection,Annotations,好吧,我有点困惑。我试图通过在模型上使用注释来选择一个“DAO”类: @Entity @Table(name="dispatcher") // use the Kamailio Base DAO for code that supports this annotation @DAOSelector(dao = DAOBaseKamailio.class) public class DispatcherSet extends Model { [...] } 以下是注释说明: @Targ

好吧,我有点困惑。我试图通过在模型上使用注释来选择一个“DAO”类:

@Entity
@Table(name="dispatcher")
// use the Kamailio Base DAO for code that supports this annotation
@DAOSelector(dao = DAOBaseKamailio.class) 
public class DispatcherSet extends Model {
    [...]
}
以下是注释说明:

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface DAOSelector {
       Class<?> dao();
}
但是,当我馈送
DispatcherSet
对象注释时,该注释始终为空:

10:33:38498[INFO][STDOUT]注释对于类model.DispatcherSet不存在

我是不是遗漏了什么

编辑:

好的,发现了一些有趣的东西,我正在JBoss容器中运行这段代码,当我打印出所有注释时:

{{{
$Proxy76
$Proxy708
$Proxy77
}}}
其中一个应该是
DAOSelector
注释的代理实例,我猜这可能就是
getAnnotation(DAOSelector.class)
不起作用的原因,请检查它

编辑2:


不,它们不是DAOSelector的实例,我已经解决了这个问题。这是一个类路径问题。我的耳朵里有一个罐子和一场战争。模型在jar中,注释在两者中都存在

{{{
$Proxy76
$Proxy708
$Proxy77
}}}