好吧,假设您要存储的是“配置”元素,我实际上会花时间使用资源环境提供程序来实现它,因为它是一种更灵活且显然更便携的方法。
要使用 JNDI 绑定字符串,请使用“字符串命名空间绑定”: http: //pic.dhe.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.nd.doc/info/ae/ ae/unam_rstring_namespace.html
已编辑(添加有关 ResEnv 的详细信息):
工厂类是您编写的类,而不是 IBM。这是一个例子:
public class MyFactory implements javax.naming.ObjectFactory {
@Override
public Object getObjectInstance(Object object, Name name, Context context, Hashtable env) throws NamingException {
MyConfig cfg = new MyConfig();
for (Enumeration e = ((Reference) object).getAll(); e.hasMoreElements();) {
RefAddr addr = (RefAddr) e.nextElement();
String key = addr.getType();
Object value = addr.getContent();
cfg.put(key, value);
}
}
}
(我们假设这MyConfig
是一个带有get(String)
和put(String, String)
方法的简单类)
接下来,在 WebSphere 中创建一个新的资源环境提供者。对于 Referenceable,将 MyFactory 的完全限定类名作为“工厂类”,将 MyConfig 的完全限定类名作为“类”。
接下来,添加一个资源环境条目。给它一个 JNDI 名称,比如myresources/test
. 从下拉框中选择可引用。
单击“自定义属性”,然后在此处添加键值对。
保存 WebSphere 配置,重新启动服务器并重试。向 发出 JNDI 查找myresources/test
,您将获得一个MyConfig
包含您放置在那里的所有自定义属性的实例。
让我们知道进展如何。祝你好运!