简体   繁体   English

EJB的初始化参数

[英]Initialization parameters for EJB

I have Singleton enterprise bean, which starts immediately after deploy. 我有Singleton企业bean,它在部署后立即启动。 I packed EJB into jar and want to distribute it. 我将EJB打包到jar并希望分发它。 I set several fields of Singleton like private final String initParam = "value"; 我设置了Singleton的几个字段,例如private final String initParam = "value"; . How can I expose those init parameters to administrator who will be deploy my jar onto his own GlassFish server? 我如何向管理员公开这些初始化参数,管理员会将我的jar部署到自己的GlassFish服务器上?

You can use Environment Entries, these should fit your needs. 您可以使用环境条目,这些应符合您的需求。

Such parameters must be described in ejb-jar.xml: 这些参数必须在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>

The value of the env-entry could be injected into your bean like below: 可以将env-entry的值注入到您的bean中,如下所示:

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

Env-entries could be modifed from the console of your container, normally it is a more convenient way for admins, comparing to property file modification or creating JVM parameters. 可以从容器的控制台修改环境条目,通常,与属性文件修改或创建JVM参数相比,这是管理员更方便的方法。

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM