Alex Rudyy created QPID-6823:
--------------------------------

             Summary: [Java Broker] On failures to open ACL rules file the 
cause exception is not chained to the thrown IllegalConfigurationException 
making it is difficult to understand what exactly caused the failure to open 
ACL file
                 Key: QPID-6823
                 URL: https://issues.apache.org/jira/browse/QPID-6823
             Project: Qpid
          Issue Type: Bug
          Components: Java Broker
            Reporter: Alex Rudyy


On failures to open ACL rules file the cause exception is not chained to the 
thrown IllegalConfigurationException making it is difficult to understand what 
exactly caused the failure to open ACL file.

Here is an example of stack trace:
{noformat}
org.apache.qpid.server.configuration.IllegalConfigurationException: Cannot 
convert /tmp/ExchangeRestACLTest9052195928623123673testDeleteExchangeAllowed to 
a readable resource
        at 
org.apache.qpid.server.security.access.plugins.DefaultAccessControl.getReaderFromURLString(DefaultAccessControl.java:126)
 ~[qpid-broker-plugins-access-control-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.security.access.plugins.DefaultAccessControl.open(DefaultAccessControl.java:80)
 ~[qpid-broker-plugins-access-control-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.security.access.plugins.ACLFileAccessControlProviderImpl.activate(ACLFileAccessControlProviderImpl.java:172)
 ~[qpid-broker-plugins-access-control-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at sun.reflect.GeneratedMethodAccessor81.invoke(Unknown Source) ~[na:na]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[na:1.8.0_45]
        at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_45]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1239)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1218)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:867)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:861)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at com.google.common.util.concurrent.Futures$6.run(Futures.java:1319) 
[guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:457)
 [guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.ExecutionList.executeListener(ExecutionList.java:156)
 [guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.ExecutionList.add(ExecutionList.java:101) 
[guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.AbstractFuture.addListener(AbstractFuture.java:170)
 [guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.Futures.addCallback(Futures.java:1322) 
[guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.Futures.addCallback(Futures.java:1258) 
[guava-18.0.jar:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.doAttainState(AbstractConfiguredObject.java:860)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.access$300(AbstractConfiguredObject.java:78)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$7.performAction(AbstractConfiguredObject.java:851)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$7.performAction(AbstractConfiguredObject.java:843)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.applyToChildren(AbstractConfiguredObject.java:1053)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.doAttainState(AbstractConfiguredObject.java:842)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.access$300(AbstractConfiguredObject.java:78)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$1.execute(AbstractConfiguredObject.java:472)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$1.execute(AbstractConfiguredObject.java:459)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$2.execute(AbstractConfiguredObject.java:520)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$2.execute(AbstractConfiguredObject.java:513)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:270)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submitWrappedTask(TaskExecutorImpl.java:154)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl.submit(TaskExecutorImpl.java:142)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.doOnConfigThread(AbstractConfiguredObject.java:512)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.openAsync(AbstractConfiguredObject.java:458)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractSystemConfig.activate(AbstractSystemConfig.java:211)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at sun.reflect.GeneratedMethodAccessor36.invoke(Unknown Source) ~[na:na]
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 ~[na:1.8.0_45]
        at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_45]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1239)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.attainState(AbstractConfiguredObject.java:1218)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:867)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$8.onSuccess(AbstractConfiguredObject.java:861)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at com.google.common.util.concurrent.Futures$6.run(Futures.java:1319) 
[guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:457)
 [guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.ExecutionList.executeListener(ExecutionList.java:156)
 [guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.ExecutionList.add(ExecutionList.java:101) 
[guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.AbstractFuture.addListener(AbstractFuture.java:170)
 [guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.Futures.addCallback(Futures.java:1322) 
[guava-18.0.jar:na]
        at 
com.google.common.util.concurrent.Futures.addCallback(Futures.java:1258) 
[guava-18.0.jar:na]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.doAttainState(AbstractConfiguredObject.java:860)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject.access$300(AbstractConfiguredObject.java:78)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$1.execute(AbstractConfiguredObject.java:472)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$1.execute(AbstractConfiguredObject.java:459)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$2.execute(AbstractConfiguredObject.java:520)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.model.AbstractConfiguredObject$2.execute(AbstractConfiguredObject.java:513)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl$TaskLoggingWrapper.execute(TaskExecutorImpl.java:270)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl$CallableWrapper$1.run(TaskExecutorImpl.java:342)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at java.security.AccessController.doPrivileged(Native Method) 
[na:1.8.0_45]
        at javax.security.auth.Subject.doAs(Subject.java:360) [na:1.8.0_45]
        at 
org.apache.qpid.server.configuration.updater.TaskExecutorImpl$CallableWrapper.call(TaskExecutorImpl.java:335)
 [qpid-broker-core-6.0.0-SNAPSHOT.jar:6.0.0-SNAPSHOT]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
[na:1.8.0_45]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
[na:1.8.0_45]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[na:1.8.0_45]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45]

{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org
For additional commands, e-mail: dev-h...@qpid.apache.org

Reply via email to