To recreate the issue:
1) Configure the Camel context to have autostart=false
2) Create a route that processes the loggin message
3) Refresh the Spring application context
4) Start the Spring application context
The QuickFixj engine will be created and started at step 3 but the route that processes the login message only gets started at step 4. If there are other components in the Spring application context that are slow to initialize then the QuickFixj engines will login before the Camel context (and hence the routes) have been started.
This is an issue for us as we add a username and password to the login message using a Camel route.
Have the Dispatcher in the QuickFixjEngine extend ApplicationExtended and disable login until the CamelContext is started.
Patch and test to follow.