常量文件中的消息驱动Bean注释属性

时间:2013-12-30 16:36:28

标签: java-ee ejb

我正在开发一个利用Message Driven Bean发送电子邮件的应用程序。我想做的一件事是将大多数应用程序常量移动到常量文件,以便更轻松地维护应用程序。

我尝试将属性(例如mappedName,acknowledgeMode,destinationType等)移动到常量文件中,并使用静态导入来引用它们,但这似乎在尝试编译应用程序时导致错误:

JMS resource not created

当我回去并删除常量并使用硬编码字符串时,它有效。所以,我的问题是,在处理EJB(或者通常是注释)时,这些属性是否必须硬编码?

1 个答案:

答案 0 :(得分:0)

propertyValues必须是compile-time constant expresion, 因此,在您假装时无法在运行时定义它。此限制适用于所有类型的Java注释 它不是对EJB的限制。

请记住EJB规范提供的替代方法 是使用deployment descriptor文件而不是注释您的代码。

  

5.4.1需要MessageDrivenBean元数据

     

必须使用MessageDriven批注对消息驱动的bean进行批注   或在部署描述符中表示为消息驱动的bean。