gpt4 book ai didi

java - 将用户搜索到ldap时出现问题

转载 作者:行者123 更新时间:2023-12-02 00:28:46 25 4
gpt4 key购买 nike

我正在使用在一台服务器上运行的开放LDAP,并且它在10.0.26.X IP上运行,我的客户端在IP 10.0.25.X上运行,并且防火墙在两者之间,但端口389已打开并处于侦听状态。因此,我面临的客户端问题是它关闭了客户端服务器,之后我必须每6个小时重新启动一次客户端,然后它可以正常工作一段时间,然后再次发出相同的问题。

我试图打开客户端和LDAP之间的连接,但问题相同。
同样从防火墙端我们已经尝试了一切。

Hashtable<String, String> envMap = new Hashtable<>();
envMap.put(Context.INITIAL_CONTEXT_FACTORY, initContextFactory);
envMap.put(Context.PROVIDER_URL, providerUrl);
envMap.put(Context.SECURITY_AUTHENTICATION, securityAuthentication);
envMap.put(Context.SECURITY_PRINCIPAL, userDN);
envMap.put(Context.SECURITY_CREDENTIALS, password);
DirContext userCtx = new InitialDirContext(envMap);

SearchControls controls = new SearchControls();
controls.setSearchScope(SearchControls.SUBTREE_SCOPE);
String filter = MessageFormat.format(Constants.LDAP_PERSON_FILTER, attrKey, attrValue);
NamingEnumeration<SearchResult> userResults = dirReaderctx.search(Constants.LDAP_DOMAIN_NAME,
filter, controls);
if (userResults.hasMore()) {
searchResult = userResults.next();
return searchResult;
}


我得到的异常是:

[com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:2002),com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1844),com.sun.jndi.ldap.LdapCtx.c_search (LdapCtx.java:1769)、com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.java:392)、com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:358), com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeDirContext.java:341),javax.naming.directory.InitialDirContext.search(InitialDirContext.java:267),sun.reflect.GeneratedMethodAccessor100.invoke(未知源), sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43),java.lang.reflect.Method.invoke(Method.java:498),org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java: 209),org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:136),org.springframework.web.servlet.mvc.method.annotation.Servl etInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:102),org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:877),org.springframework.web.servlet.mvc.method.annotation。 RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:783),org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdater.handle(AbstractHandlerMethodAdapter.java:87),org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java: 991),org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:925),org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:974),org.springframework.web.servlet.FrameworkServlet .doPost(FrameworkServlet.java:877),javax.servlet.http.HttpServlet.service(HttpServlet.java:661),org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:851),javax.servlet。 http .HttpServlet.service(HttpServlet.java:742),org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231),org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166), org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52),org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193),org.apache.catalina.core.ApplicationFilterChain。 doFilter(ApplicationFilterChain.java:166),org.springframework.boot.actuate.web.trace.servlet.HttpTraceFilter.doFilterInternal(HttpTraceFilter.java:90),org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java: 107),org.apache.catalina.core.ApplicationFilterChain.inernalDoFilter(ApplicationFilterChain.java:193),org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166),org.springframework.web.filter.OncePerRequestFilter .doFilter(OncePerRequestFilter.java:107),org.apache.catalin a.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193),org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166),org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java: 99),org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107),org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193),org.apache.catalina.core.StandardContextValve .invoke(StandardContextValve.java:96),org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493),org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140),org。 apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81),org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87),org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter。 java:342),org.apache.coyote.http11.Http11Processor.service( Http11Processor.java:800)、org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)、org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:800)、org.apache.tomcat.utit .util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1471),org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49),java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor .java:1149),java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:624),org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61),java。 lang.Thread.run(Thread.java:748)]

最佳答案

不知道该异常是错误的一件事,就是您没有在close()上调用NamingEnumeration方法,所以您正在泄漏资源。

如果它能工作一段时间,然后停止工作,那很可能就是您正在耗尽资源的异常。

NamingEnumeration<SearchResult> userResults = dirReaderctx.search(Constants.LDAP_DOMAIN_NAME,
filter, controls);
if (userResults.hasMore()) {
searchResult = userResults.next();
userResults.close(); // <-- add this line
return searchResult;
}

关于java - 将用户搜索到ldap时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58033152/

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