【发布时间】:2013-05-01 00:36:16
【问题描述】:
我在尝试连接 Active Directory 时偶尔会遇到此异常。
javax.naming.CommunicationException: <ServerIP>:<PORT>
[Root exception is java.net.ConnectException: Connection timed out: connect]
这是我的代码:
DirContext ctx = null;
Properties env = new Properties();
env.put(Context.SECURITY_PRINCIPAL, <Bind_USER>);
env.put(Context.SECURITY_CREDENTIALS, <Bind_USER_PWD>);
env.put(Context.PROVIDER_URL, "ldap://<ServerIP>:<PORT>");
env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
ctx = new InitialDirContext(env);
在此行ctx = new InitialDirContext(env); 中获取连接超时异常。
它不会每次都发生,但经常发生。
请告诉我,如何摆脱这个问题?
【问题讨论】:
-
这是我为克服上述随机问题所做的一种解决方法:捕获 CommunicationException,然后至少再试 3 次。希望它对像@futurebaby 这样的人有用
标签: java ldap runtime-error communicationexception connectexception