Bonjour ce post fait suite au post https://www.developpez.net/forums/d2...d-client-java/"> (problème de fuite de mémoire d'une application Java sous tomcat interrogee à partir d'un client Java)



J'avais trouvé un hack pour résoudre une problème de fuite de mémoire en utilisant un wrapper

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public class CustomLDAPConnectionPool {
 
    public LDAPConnection lDAPConnection;
    public int numConnection;
 
    public LDAPConnectionPool connection;
 
    public CustomLDAPConnectionPool(LDAPConnection connection, int numConnection) throws LDAPException {
        this.lDAPConnection = connection;
        this.numConnection = numConnection;
        this.connection = new LDAPConnectionPool(connection, numConnection);
    }
 
    public SearchResult search(SearchRequest request) throws LDAPException {
        SearchResult result = this.connection.search(request);
        this.connection.close();
        this.connection = new LDAPConnectionPool(this.lDAPConnection, this.numConnection);  // l'erreur apparait à cette ligne 
        return result;
    }
 
    public SearchResultEntry searchForEntry(@NotNull SearchRequest searchRequest) throws LDAPException {
        SearchResultEntry result = this.searchForEntry(searchRequest);
        this.connection.close();
        this.connection = new LDAPConnectionPool(this.lDAPConnection, this.numConnection);
        return result;
    }
}
Ca a marché 2 jours et puis je ne sais pas ce qui s'est passé, ça ne marche plus

J'ai l'erreur suivante

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
com.unboundid.ldap.sdk.LDAPException: The provided connection is not established.
	at com.unboundid.ldap.sdk.LDAPConnectionPool.<init>(LDAPConnectionPool.java:661) ~[unboundid-ldapsdk-5.1.1.jar:5.1.1]
	at com.unboundid.ldap.sdk.LDAPConnectionPool.<init>(LDAPConnectionPool.java:567) ~[unboundid-ldapsdk-5.1.1.jar:5.1.1]
	at com.unboundid.ldap.sdk.LDAPConnectionPool.<init>(LDAPConnectionPool.java:502) ~[unboundid-ldapsdk-5.1.1.jar:5.1.1]
	at com.unboundid.ldap.sdk.LDAPConnectionPool.<init>(LDAPConnectionPool.java:443) ~[unboundid-ldapsdk-5.1.1.jar:5.1.1]
	at com.unboundid.ldap.sdk.LDAPConnectionPool.<init>(LDAPConnectionPool.java:354) ~[unboundid-ldapsdk-5.1.1.jar:5.1.1]
	at eu.europa.europarl.staffaccess.ldap.CustomLDAPConnectionPool.search(CustomLDAPConnectionPool.java:23) ~[classes/:na]
Pouvez vous m'aider . Pour la suggestion de PhilippeGibault d'utiliser un LDAP Template, merci encore, mais j'aimerais trouver la solution avec ma méthode