gpt4 book ai didi

jboss 7.1 jndi 以编程方式绑定(bind)

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

如何在 jboss 7.1 上以编程方式绑定(bind)到 jndi 自定义对象?Context.bind 抛出异常表明 jndi 上下文是只读的。有可能吗?

最佳答案

是的,完全有可能。以下代码适用于 JBoss AS 7.1.1.Final:

@Stateless
public class JndiEjb {
private static final Logger LOGGER = LoggerFactory.getLogger(JndiEjb.class);

public void registerInJndi() {
try {
Context context = new InitialContext();
context.bind("java:global/JndiEjb", this);
} catch (NamingException e) {
LOGGER.error(String.format("Failed to register bean in jndi: %s", e.getMessage()));
}
}

public void retrieveFromJndi() {
try {
Context context = new InitialContext();
Object lookup = context.lookup("java:global/JndiEjb");
if(lookup != null && lookup instanceof JndiEjb) {
LOGGER.debug("Retrieval successful.");
JndiEjb jndiEjb = (JndiEjb)lookup;
jndiEjb.helloWorld();
}
} catch (NamingException e) {
LOGGER.error(String.format("Failed to register bean in jndi: %s", e.getMessage()));
}
}

public void helloWorld() {
LOGGER.info("Hello world!");
}
}

如果您先调用 registerInJndi(),然后调用 retrieveFromJndi(),将查找对象并调用方法 helloWorld() .

您会找到更多信息here .

关于jboss 7.1 jndi 以编程方式绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19429149/

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