gpt4 book ai didi

java - jndi.properties 的所有属性名称是什么?

转载 作者:行者123 更新时间:2023-12-01 12:32:41 25 4
gpt4 key购买 nike

jndi.properties 键可能的属性名称是什么?我找不到有关所有可能的键名称的文档。

如何输出 jndi.properties 的主体、凭据和远程键/值对?

-run:
[java] Sep 12, 2014 6:36:43 PM dur.bounceme.net.remotelookup.RemoteLookup run
[java] INFO: java.naming.factory.initial com.sun.enterprise.naming.impl.SerialInitContextFactory
[java] Sep 12, 2014 6:36:43 PM dur.bounceme.net.remotelookup.RemoteLookup run
[java] INFO: java.naming.factory.url.pkgs com.sun.enterprise.naming
[java] Sep 12, 2014 6:36:43 PM dur.bounceme.net.remotelookup.RemoteLookup run
[java] INFO: java.naming.factory.state com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl

run:

BUILD SUCCESSFUL
Total time: 13 seconds
thufir@dur:~/NetBeansProjects/LegacyEJB$
thufir@dur:~/NetBeansProjects/LegacyEJB$ cat src/java/jndi.properties
java.naming.factory.initial=com.sun.jndi.cosnaming.CNCtxFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=server.local\:1199
java.naming.security.principal=user
java.naming.security.credentials=password
remote=net.bounceme.ix.Foo
thufir@dur:~/NetBeansProjects/LegacyEJB$

可以看出,并不是所有的键/值对都被输出。为什么?

对于“远程”名称和值,是否应该放在不同的属性文件中?

主类:

package dur.bounceme.net.remotelookup;

import java.util.Enumeration;
import java.util.Properties;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;

public class RemoteLookup {

private static final Logger log = Logger.getLogger(RemoteLookup.class.getName());
private final MyProps p = new MyProps();

public static void main(String... args) {
try {
new RemoteLookup().run();
} catch (NamingException ex) {
Logger.getLogger(RemoteLookup.class.getName()).log(Level.SEVERE, ex.getExplanation(), ex);
}
}

private void run() throws NamingException {
Properties jndi = p.getJNDI();
Enumeration e = jndi.propertyNames();
while (e.hasMoreElements()) {
String key = (String) e.nextElement();
String val = jndi.getProperty(key);
log.info(key + "\t" + val);
}
Context ic = new InitialContext();
// MyRemote mr = (MyRemote) ic.lookup("java:comp/env/ejb/Foo"); //
}
}

读取属性文件,过去曾有效:

package dur.bounceme.net.remotelookup;

import java.io.IOException;
import java.util.Properties;
import java.util.logging.Level;
import java.util.logging.Logger;

public class MyProps {

private static final Logger log = Logger.getLogger(MyProps.class.getName());
private final Properties jndi = new Properties();

public MyProps() {
try {
loadJNDI();
String name = jndi.getProperty("name");
} catch (IOException ex) {
Logger.getLogger(MyProps.class.getName()).log(Level.SEVERE, null, ex);
}
}

public Properties getJNDI() {
return jndi;
}

private void loadJNDI() throws IOException {
jndi.load(MyProps.class.getResourceAsStream("/jndi.properties"));
}

}

更重要的是,键的值应该命名为什么?

------------------------------------------------------------ -------编辑------------------------------------

java.naming.factory.initial=TO_BE_CHANGED_BY_USERjava.naming.factory.object=TO_BE_CHANGED_BY_USERjava.naming.factory.state=TO_BE_CHANGED_BY_USERjava.naming.factory.control=TO_BE_CHANGED_BY_USERjava.naming.factory.url.pkgs=TO_BE_CHANGED_BY_USERjava.naming.provider.url=TO_BE_CHANGED_BY_USERjava.naming.dns.url=TO_BE_CHANGED_BY_USER

来自:

http://www.pressinganswer.com/433577/how-to-access-datasource-in-geronimo-via-jndi-by-remote-client-application

最佳答案

您需要查看每个提供程序的文档,在您的例子中,COSNaming 提供程序位于 JNDI documentation page 上。 .

关于java - jndi.properties 的所有属性名称是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25819063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com