Jakarta ee ApacheGeronimo的jndi默认上下文中的java.lang.String-如何?

Jakarta ee ApacheGeronimo的jndi默认上下文中的java.lang.String-如何?,jakarta-ee,jndi,geronimo,websphere-ce,Jakarta Ee,Jndi,Geronimo,Websphere Ce,在servlet中,我执行以下操作: Context context = new InitialContext(); value = (String) context.lookup("java:comp/env/propertyName"); <env-entry> <description>My string property</descriptor> <env-entry-name>propertyName</env

在servlet中,我执行以下操作:

  Context context = new InitialContext();
  value = (String) context.lookup("java:comp/env/propertyName");
<env-entry>
   <description>My string property</descriptor>
   <env-entry-name>propertyName</env-entry-name>
   <env-entry-type>java.lang.String</env-entry-type>
   <env-entry-value>Your string goes here</env-entry-value>
</env-entry>
在ApacheGeronimo实例(WASCE2.1)上,如何将值与键propertyName关联


在Websphere AS 6中,我可以在管理控制台的“名称空间绑定”页面下为JNDI查找配置这些属性,但在我的一生中,我无法在web上的community edition中实现这一点。

一种可能是将属性添加到web.xml文件(在web-INF目录中),使用一个或多个
标记。例如,如下所示:

  Context context = new InitialContext();
  value = (String) context.lookup("java:comp/env/propertyName");
<env-entry>
   <description>My string property</descriptor>
   <env-entry-name>propertyName</env-entry-name>
   <env-entry-type>java.lang.String</env-entry-type>
   <env-entry-value>Your string goes here</env-entry-value>
</env-entry>

我的字符串属性
属性名称
java.lang.String
你的绳子在这里
每个env entry标记声明一个新的环境变量,然后可以从
java:comp/env
上下文访问该变量


一旦添加了必要的
env条目
,您就可以使用类似于已发布的代码来访问这些值。请注意,我没有安装Geronimo,因此我不知道是否需要进行任何其他配置才能使其正常工作。

可以将属性放入文件中,并将文件的名称和位置设置为web.xml中URL类型的资源引用。资源的值在geronimo-web.xml中设置

您的web.xml将包含以下条目:

<resource-ref>
    <res-ref-name>configFileName</res-ref-name>
    <res-type>java.net.URL</res-type>
</resource-ref>
然后你必须打开文件并读取其中的任何值

所有这一切的结果是,您在文件系统的一个文件中拥有这些属性。如果重新部署应用程序,它将不会被覆盖