Create a spring boot application with multiple child contexts

11,163

The child(...) method creates and returns another SpringApplicationBuilder, so when you call that second child(...) method, you are not instantiating a brother for the child, you are making a child on the first child, which makes the parent become a grandpa.

Jokes aside, have a look at the sibling(...) method which allows to create another context with the same parent.

You can also check out the source to see exactly what is going on.

Share:
11,163

Related videos on Youtube

Alessandro Di Bella
Author by

Alessandro Di Bella

Updated on May 20, 2022

Comments

  • Alessandro Di Bella
    Alessandro Di Bella about 2 years

    I'm trying to create an application using spring boot with an hierarchical application context. My current main method looks like:

    public static void main(String[] args) {
        new SpringApplicationBuilder(TestApplication.class)
                .child(AuditServiceConfiguration.class).web(true)
                .child(TaskServiceConfiguration.class).web(true)
                .run(args);
    }
    

    and the two children configurations are annotated with:

    @EnableAutoConfiguration
    @Configuration
    

    The idea is to have a parent context containing all common beans and each child context to run its own MVC while being isolated from its siblings.

    Unfortunately when I run the above, only the last child context is initialised and started.

    Any pointers in the right direction would be greatly appreciated.

    Regards,

    Alessandro