[ 
https://issues.apache.org/jira/browse/FC-238?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17369014#comment-17369014
 ] 

Shawn McKinney commented on FC-238:
-----------------------------------

2. Relax Control (LdapDataProvider)

Two part solution:

a. add / register the control in the API.  

https://github.com/apache/directory-ldap-api/commit/100002353c1487412b0c7e0d36a68297ab713dd0

b. until next release of API, need to leave control in fortress and register it 
like this:

```
        if ( Config.getInstance().getBoolean( 
"enable.relax.control.registration", false ) )
        {
            ControlFactory<RelaxControl> relaxControlFactory = new 
RelaxControlFactory( new DefaultLdapCodecService() );
            (new 
LdapNetworkConnection()).getCodecService().registerRequestControl(relaxControlFactory);
            LOG.info( "Register RelaxControl" );
        }
```

so that it will be found by the runtime.

Once 2.0.3 is released, the corresponding fortress code can be removed.

> Migrate to LDAP API 2.0
> -----------------------
>
>                 Key: FC-238
>                 URL: https://issues.apache.org/jira/browse/FC-238
>             Project: FORTRESS
>          Issue Type: Improvement
>    Affects Versions: 2.0.1
>            Reporter: Shawn McKinney
>            Assignee: Shawn McKinney
>            Priority: Major
>             Fix For: 2.0.6
>
>
> The code compiles, but gets NPE when fortress tries to open a pool to the 
> server
> ******
> Steps to recreate.
>  # Get fortress env, checkout latest, follow the steps in DOCKER README to 
> get either openldap or apacheds server up. 
>  # You may skip the junit tests, do the data loads, i.e. mvn test -Pload.file=
>  ## in order to verify the env is running correctly run this test:
>  ### mvn test -Pconsole  <-– should be no errors
>  # Now checkout the code that is using ldap api 2.0.0 
>  ## git checkout 7fdd12f6aef06c43817c6f6a71baeb67f9e19000
>  # connect with fortress console:
>  ## mvn test -Pconsole
> Get the error:
>  
> 2018-07-30 11:25:054 INFO  CodecFactoryUtil:404 - 
> MSG_06002_REGISTERED_INTERMEDIATE_FACTORY (1.3.6.1.4.1.4203.1.9.1.4)
> [WARNING] 
> org.apache.directory.fortress.core.CfgRuntimeException: Exception caught 
> initializing Admin Pool: java.lang.NullPointerException, errCode=135
>     at 
> org.apache.directory.fortress.core.ldap.LdapConnectionProvider.init(LdapConnectionProvider.java:191)
>     at 
> org.apache.directory.fortress.core.ldap.LdapConnectionProvider.<init>(LdapConnectionProvider.java:116)
>     at 
> org.apache.directory.fortress.core.ldap.LdapConnectionProvider.getInstance(LdapConnectionProvider.java:103)
>     at 
> org.apache.directory.fortress.core.ldap.LdapDataProvider.closeAdminConnection(LdapDataProvider.java:1215)
>     at 
> org.apache.directory.fortress.core.impl.ConfigDAO.getConfig(ConfigDAO.java:327)
>     at org.apache.directory.fortress.core.impl.ConfigP.read(ConfigP.java:175)
>     at 
> org.apache.directory.fortress.core.impl.ConfigMgrImpl.read(ConfigMgrImpl.java:102)
>     at 
> org.apache.directory.fortress.core.util.Config.getRemoteConfig(Config.java:377)
>     at 
> org.apache.directory.fortress.core.util.Config.loadRemoteConfig(Config.java:655)
>     at 
> org.apache.directory.fortress.core.util.Config.getInstance(Config.java:101)
>     at 
> org.apache.directory.fortress.core.AdminMgrFactory.createInstance(AdminMgrFactory.java:68)
>     at 
> org.apache.directory.fortress.core.AdminMgrConsole.<init>(AdminMgrConsole.java:74)
>     at 
> org.apache.directory.fortress.core.ProcessMenuCommand.<init>(ProcessMenuCommand.java:38)
>     at 
> org.apache.directory.fortress.core.FortressConsole.main(FortressConsole.java:38)
>     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>     at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>     at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>     at java.lang.reflect.Method.invoke(Method.java:498)
>     at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:282)
>     at java.lang.Thread.run(Thread.java:745)
> Caused by: java.lang.NullPointerException
>     at 
> org.apache.directory.api.ldap.codec.standalone.StandaloneLdapApiService.loadControls(StandaloneLdapApiService.java:313)
>     at 
> org.apache.directory.api.ldap.codec.standalone.StandaloneLdapApiService.<init>(StandaloneLdapApiService.java:174)
>     at 
> org.apache.directory.fortress.core.ldap.LdapConnectionProvider.init(LdapConnectionProvider.java:180)
>     ... 19 more
>  
>  
>  
>  
>  
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to