【问题标题】:How to access deployment parameter from within EJB如何从 EJB 中访问部署参数
【发布时间】:2012-09-16 20:05:39
【问题描述】:

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

我知道我可以在web.xml 描述符中定义一个上下文参数,当我在JSF bean 中时,我将能够通过javax.faces.context.ExternalContext#getInitParameterMap() 访问它,并通过getServletContext() 从一个Servlet,但事实并非如此,因为我在 EJB 中。

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

【问题讨论】:

    标签: jakarta-ee deployment ejb


    【解决方案1】:

    经过深入研究,发现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

    【讨论】:

      猜你喜欢
      • 2011-06-07
      • 1970-01-01
      • 2012-10-29
      • 1970-01-01
      • 1970-01-01
      • 2011-04-09
      • 2011-04-29
      • 1970-01-01
      • 2020-09-23
      相关资源
      最近更新 更多