Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
1.5.0
-
None
-
None
-
Ubuntu Linux, Sun JDK 1.5.0_12, ApacheDS from trunk
Description
Summary: I added a subentry to the server. After this I stopped the server and tried to start it again, but the start failed with an exception in the apacheds-stdout.log:
I built the installer from trunk, installed apacheds-1.5.1-SNAPSHOT-linux-i386-setup.jar and started the server with /etc/init.d/apacheds start.
Then I added administrativeRole: accessControlSpecificArea dc=example,dc=com:
- ldapmodify -x -h localhost -p 10389 -D "uid=admin,ou=system" -w "secret" -c -f 0_prepare.ldif
---------------------------------------
dn: dc=example,dc=com
changetype: modify
add: administrativeRole
administrativeRole: accessControlSpecificArea
-
---------------------------------------
Then I added a subentry:
- ldapmodify -a -x -h localhost -p 10389 -D "uid=admin,ou=system" -w "secret" -c -f 1_create.ldif
---------------------------------------
dn: cn=subentry,dc=example,dc=com
objectClass: accessControlSubentry
objectClass: subentry
objectClass: top
cn: subentry
prescriptiveaci: { identificationTag "dummy", precedence 1, authenticationLe
vel none, itemOrUserFirst userFirst: { userClasses { }, userPermissions {
} } }
subtreespecification: { specificationFilter (cn=test) }---------------------------------------
With Studio I could see the modified and the new entry.
Then I stopped the server...
- /etc/init.d/apacheds stop
...and tried to start it again...
- /etc/init.d/apacheds start
...but the startup fails. In apacheds-stdout.log I get the following error:
---------------------------------------
[18:43:47] ERROR [org.apache.directory.daemon.Bootstrapper] - Failed on org.apache.directory.server.Service.init(Installation
Layout, String[])
org.apache.directory.server.core.interceptor.InterceptorException: Failed to initialize interceptor chain. [Root exception is java.lang.NullPointerException]
at org.apache.directory.server.core.interceptor.InterceptorChain.init(InterceptorChain.java:257)
at org.apache.directory.server.core.DefaultDirectoryService.initialize(DefaultDirectoryService.java:1006)
at org.apache.directory.server.core.DefaultDirectoryService.startup(DefaultDirectoryService.java:254)
at org.apache.directory.server.core.jndi.AbstractContextFactory.getInitialContext(AbstractContextFactory.java:123)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at javax.naming.directory.InitialDirContext.<init>(InitialDirContext.java:82)
at org.apache.directory.server.Service.init(Service.java:96)
at org.apache.directory.daemon.Bootstrapper.callInit(Bootstrapper.java:151)
at org.apache.directory.daemon.JsvcBootstrapper.init(JsvcBootstrapper.java:56)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.commons.daemon.support.DaemonLoader.load(DaemonLoader.java:160)
Caused by: java.lang.NullPointerException
at org.apache.directory.shared.ldap.util.AttributeUtils.getAttribute(AttributeUtils.java:223)
at org.apache.directory.server.core.authz.TupleCache.initialize(TupleCache.java:149)
at org.apache.directory.server.core.authz.TupleCache.<init>(TupleCache.java:115)
at org.apache.directory.server.core.authz.AuthorizationService.init(AuthorizationService.java:199)
at org.apache.directory.server.core.interceptor.InterceptorChain.register0(InterceptorChain.java:419)
at org.apache.directory.server.core.interceptor.InterceptorChain.register(InterceptorChain.java:378)
at org.apache.directory.server.core.interceptor.InterceptorChain.init(InterceptorChain.java:243)
... 16 more
---------------------------------------
When deleting the var/partitions/example directory the server starts up again. It is no problem to add a "normal" entry. But when adding the subentry a restart of the server fails.