如何从EJB中访问部署参数

时间:2012-09-16 20:05:39

标签: java-ee deployment ejb

在Java EE 6 Web应用程序中,我想从EJB中访问部署参数(字符串值)。

我知道我可以在web.xml描述符中定义一个Context参数,当我在JSF bean中时,我将能够通过javax.faces.context.ExternalContext#getInitParameterMap()访问它来自Servlet的{​​{3}},但事实并非如此,因为我在EJB

所以,问题是:是否有任何标准(可能是干净的)方法来实现这一目标?

1 个答案:

答案 0 :(得分:4)

经过进一步研究,我发现在env-entry中使用了web.xml注释。

<env-entry>
    <env-entry-name>myEnvEntry</env-entry-name>
    <env-entry-type>java.lang.String</env-entry-type>
    <env-entry-value>MyEnvEntryValue</env-entry-value>
</env-entry>        

可以env-entry以各种方式访问​​EJB。最简单的是使用@Resource注释(需要CDI):

@Resource(name="myEnvEntry")
private String myEnvEntry;

链接:Configure your EJB 3 with envirnoment entries using ENC