There seems to be no stacktrace as it probably gets caught somewhere and not 
rethrown.
There is only this warning which is why this problem initially was so 
perplexing. I just overlooked it because it was hidden between other debug logs.


2025-07-29 20:13:53,341 WARN 
[org.springframework.jms.JmsListenerEndpointContainer#0-2] 
o.s.j.l.DefaultMessageListenerContainer: Setup of JMS message listener invoker 
failed for destination 'my.jms.topic' - trying to recover. Cause: Cannot invoke 
"java.lang.Boolean.booleanValue()" because the return value of 
"org.apache.activemq.artemis.api.core.client.ClientSession$QueueQuery.isConfigurationManaged()"
 is null



Philip



On Tuesday, July 29th, 2025 at 19:43, Justin Bertram <jbert...@apache.org> 
wrote:

> Do you happen to have the stack-trace from the NPE? I'd like to add it to
> the Jira for posterity's sake.
> 
> 
> Justin
> 
> On Tue, Jul 29, 2025 at 11:02 AM Philip philip.pi...@protonmail.com.invalid
> 
> wrote:
> 
> > You are indeed correct that I am using an old broker (Wildfly 10).
> > 
> > I am unable to provide a complete demo project as this would be more
> > complex than it is worth.
> > I have created a GitHub repository in which the general JMS setup is
> > duplicated with a description of the rest of the setup and the issue at
> > hand.
> > https://github.com/PinkMoustacheMan/spring-artemis-issue-test
> > 
> > I hope this explains the issue better than my previous mails.
> > 
> > Philip
> > 
> > On Monday, July 28th, 2025 at 06:14, Justin Bertram jbert...@apache.org
> > wrote:
> > 
> > > Do you have a sample project or anything that we can use to reproduce
> > > what
> > > you're seeing? At this point, the only way I can see how you might be
> > > getting null there is if you were using a newer client with an older
> > > broker, but it's certainly possible I'm not seeing all the possibilities.
> > > Regardless, it looks like you're hitting a bug and I need a way to
> > > reproduce it in order to fix it. Even a clear, concise description of the
> > > steps necessary to reproduce the issue (i.e. no code) would go a long way
> > > here.
> > > 
> > > Justin
> > > 
> > > On Sat, Jul 26, 2025 at 11:33 PM Philip philip.pi...@protonmail.com
> > > .invalid
> > > 
> > > wrote:
> > > 
> > > > I should have been more clear about my exact setup.
> > > > 
> > > > I am trying to create multiple consumers that either listen to a JMS
> > > > queue
> > > > or a JMS topic.
> > > > Each consumer listening to a queue has no client ID as it is not
> > > > needed.
> > > > Each consumer listening to a topic has both a client ID (the same one
> > > > for
> > > > all consumers)
> > > > and a subscription name (unique per consumer) configured.
> > > > 
> > > > The queues and topics are all hosted within an external application
> > > > server
> > > > that I am connecting to.
> > > > All of this works perfectly until I try to change the subscription
> > > > name of
> > > > one of the topic consumers.
> > > > 
> > > > I believe this issue stems from the fact that they are durable
> > > > subscribers, which leads my
> > > > application server to store them persistently.
> > > > After changing the subscription name, the ActiveMQSession is aware of
> > > > the
> > > > fact that it has changed
> > > > and I run into the second part of this if-statement because no
> > > > short-circuiting occurs.
> > 
> > https://github.com/apache/activemq-artemis/blob/98d792d135dacb8fc567bc514f42a40d91c0657b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQSession.java#L1002
> > 
> > > > I am trying to understand why the choice was made to have this
> > > > `configurationManaged` property be
> > > > nullable as it leads to an issue where the null value is attempted to
> > > > be
> > > > inverted which leads to an exception.
> > > > 
> > > > I am using ActiveMQ Artemis 2.40.0
> > > > 
> > > > Philip
> > > > 
> > > > On Saturday, July 26th, 2025 at 20:18, Justin Bertram
> > > > jbert...@apache.org
> > > > wrote:
> > > > 
> > > > > The simplest way to investigate is with code that reproduces the
> > > > > problem.
> > > > > Do you have a sample project or anything that we can use to reproduce
> > > > > what
> > > > > you're seeing?
> > > > > 
> > > > > Also, what version of ActiveMQ Artemis are you using on the broker
> > > > > and
> > > > > the
> > > > > client?
> > > > > 
> > > > > Lastly, can you clarify your use-case? It seems you're trying to
> > > > > create
> > > > > multiple different durable subscriptions using the same client ID and
> > > > > subscription name on the same topic. Is that correct?
> > > > > 
> > > > > Justin
> > > > > 
> > > > > On Fri, Jul 25, 2025 at 12:59 PM Philip philip.pi...@protonmail.com
> > > > > .invalid
> > > > > 
> > > > > wrote:
> > > > > 
> > > > > > Hello ActiveMQ users,
> > > > > > 
> > > > > > I am writing this with square eyes and a tired mind.
> > > > > > 
> > > > > > I am trying to do an (assumedly) simple thing within my Spring Boot
> > > > > > application, but I keep failing.
> > > > > > 
> > > > > > I want to be able to define JmsListener endpoints that may either
> > > > > > be
> > > > > > listening to queues or topics.
> > > > > > In order to achieve that I want to provide different configurations
> > > > > > that
> > > > > > e.g. make it so that the underlying connection is durable.
> > > > > > 
> > > > > > All seems to go well until - in the deepest depths of ActiveMQ - a
> > > > > > consumer is attempted to be constructed.
> > > > > > A request is sent to (presumably) check if the Topic can be reached
> > > > > > using
> > > > > > the provided configuration (url, username, password).
> > > > > > The initial response seems fine, until this dreaded line is reached
> > > > > > and my
> > > > > > world starts to crumble.
> > 
> > https://github.com/apache/activemq-artemis/blob/98d792d135dacb8fc567bc514f42a40d91c0657b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQSession.java#L1002
> > 
> > > > > > Because as it turns out, this `result.isConfigurationManaged()`
> > > > > > statement
> > > > > > returns `null` and an Exception is thrown when trying to invert it.
> > > > > > 
> > > > > > I am trying to understand what I need to do for this value to be
> > > > > > set
> > > > > > (or
> > > > > > if this value is not supposed to be set and this is indeed a bug).
> > > > > > 
> > > > > > On another (connected) note, this check seems to only happen
> > > > > > because
> > > > > > the
> > > > > > `selectorChanged` flag is true.
> > > > > > I don't quite understand what it has changed from (or at least how
> > > > > > the
> > > > > > `oldFilterString` is even able to be set to a value in the first
> > > > > > place
> > > > > > when
> > > > > > the consumer that is constructed is the first an only one).
> > > > > > 
> > > > > > I am assuming this is in some way connected to this javadoc
> > > > > > comment,
> > > > > > but I
> > > > > > cannot figure out how to combat this issue.
> > 
> > https://github.com/apache/activemq-artemis/blob/98d792d135dacb8fc567bc514f42a40d91c0657b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQSession.java#L983-L988
> > 
> > > > > > I hope I was able to somewhat explain my disarrayed thoughts.
> > > > > > 
> > > > > > Best Regards,Philip
> > > > 
> > > > ---------------------------------------------------------------------
> > > > To unsubscribe, e-mail: users-unsubscr...@activemq.apache.org
> > > > For additional commands, e-mail: users-h...@activemq.apache.org
> > > > For further information, visit: https://activemq.apache.org/contact
> > 
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscr...@activemq.apache.org
> > For additional commands, e-mail: users-h...@activemq.apache.org
> > For further information, visit: https://activemq.apache.org/contact

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@activemq.apache.org
For additional commands, e-mail: users-h...@activemq.apache.org
For further information, visit: https://activemq.apache.org/contact


Reply via email to