]
Paul Ferraro updated WFLY-8880:
-------------------------------
Summary: Auth token properties are not applied to legacy AUTH configuration (was:
Auth token properties are not applied using legacy AUTH configuration)
Auth token properties are not applied to legacy AUTH configuration
------------------------------------------------------------------
Key: WFLY-8880
URL:
https://issues.jboss.org/browse/WFLY-8880
Project: WildFly
Issue Type: Bug
Components: Clustering
Affects Versions: No Release
Reporter: Paul Ferraro
Assignee: Paul Ferraro
This is related to the discussion that [~lakagwu] started on JBEAP-10285. I reproduced
the NPE he was getting, went through the stacktrace, and I think it's a bug.
{noformat}
08:53:37,361 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 67)
MSC000001: Failed to start service org.wildfly.clustering.jgroups.channel.ee:
org.jboss.msc.service.StartException in service org.wildfly.clustering.jgroups.channel.ee:
java.lang.NullPointerException
at
org.jboss.as.clustering.jgroups.subsystem.ChannelBuilder.start(ChannelBuilder.java:104)
at
org.wildfly.clustering.service.AsynchronousServiceBuilder.lambda$start$0(AsynchronousServiceBuilder.java:99)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:748)
at org.jboss.threads.JBossThread.run(JBossThread.java:320)
Caused by: java.lang.NullPointerException
at
org.jboss.modules.ConcurrentClassLoader.getResourceAsStream(ConcurrentClassLoader.java:366)
at org.jgroups.auth.X509Token.setCertificate(X509Token.java:180)
at org.jgroups.protocols.AUTH.init(AUTH.java:101)
at org.jgroups.stack.ProtocolStack.initProtocolStack(ProtocolStack.java:861)
at org.jgroups.stack.ProtocolStack.init(ProtocolStack.java:831)
at
org.jboss.as.clustering.jgroups.JChannelFactory.createChannel(JChannelFactory.java:108)
at
org.jboss.as.clustering.jgroups.subsystem.ChannelBuilder.start(ChannelBuilder.java:102)
... 5 more
{noformat}
It looks like the only reason {{ConcurrentClassLoader}} would throw an NPE instead of
returning null in {{getResourceAsStream}} is that the name (in this case
{{keystore_path}}) is null. That means the {{keystore_path}} is not propagated from EAP
configuration to JGroups when the protocol stack is being created.
The {{getResourceAsStream}} is still expected to fail, as the keystore is not on the
classpath, but it should be found after that via the {{FileInputStream}} check that
JGroups does.