EJB

时间:2017-11-01 05:47:07

标签: java java-ee glassfish singleton ejb

我有Singleton企业bean,它在部署后立即启动。我将EJB打包到jar并想要分发它。我设置了像private final String initParam = "value";这样的单个字段。 如何将这些init参数公开给管理员,管理员将我的jar部署到他自己的GlassFish服务器上?

1 个答案:

答案 0 :(得分:1)

您可以使用环境条目,这些条目应符合您的需求。

必须在ejb-jar.xml中描述这些参数:

<enterprise-beans>
    <session>
        <ejb-name>YourBean</ejb-name>
        <env-entry>
            <description>Your description</description>
            <env-entry-name>yourParam</env-entry-name>
            <env-entry-type>java.lang.String</env-entry-type>
            <env-entry-value>defaultValue</env-entry-value>
        </env-entry>
    </session>
</enterprise-beans>

env-entry的值可以注入你的bean,如下所示:

@Resource(name = "yourParam")
private String initParam;

可以从容器的控制台修改Env条目,通常,对于管理员来说,与属性文件修改或创建JVM参数相比,这是一种更方便的方式。

以下是Oracle的一些文档:http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/env_entry/env_entry.html