I’m trying to set up Axon in an existing application. The existing application has a Spring context, but is not a Spring boot application, so I’ve had to do a lot of the configuration myself.
I have a Bean for the following:
-
AxonServerConfiguration
-
AxonServerConnectionManager
-
EventStore
-
beans for serializers
-
CommandBus
-
CommandGateway
-
Configuration
The configuration then sets up the event processing configuration, the event store, the command bus, the serialization settings, and the aggregate.
Finally, as the application is booted up, the configuration Bean is fetched and start() is called.
There’s some oddities to how the system is running, but what’s the most baffling to me is that the logging is complaining that the application is failing to connect to a localhost instance of the event store. I have an event store configured and running separately from the host of the application (whether testing locally or deployed), and if I take down that server, I start getting error messages for a failure to connect to the deployed server as well as a localhost server. What I can’t figure out is why the system is trying to connect to a local instance of axon server. Digging into the configuration & axon system reveals there’s only one channel and only one event store related to the configuration. The spring context only has the one configuration (and only one of each other bean). Every place I check has the proper URL for the axon server (not localhost), but the connector keeps complaining with an IOException.
Any ideas on why two connections are being booted up?
Here’s an example failure message:
Dec 16 17:21:52.223 [AxonServerConne] WA [AxonServerConnection.getChannel: 217] - Connecting to AxonServer node [localhost]:[8124] failed: UNAVAILABLE: io exception