> Markdown version of [VaadinServiceInitListener](https://vaadin.com/docs/v10/flow/advanced/tutorial-service-init-listener). Section index: [llms.txt](https://vaadin.com/docs/v10/flow/llms.txt)

# VaadinServiceInitListener

A VaadinServiceInitListener can be used to configure RequestHandlers, [BootstrapListeners](https://vaadin.com/docs/v10/flow/advanced/tutorial-bootstrap.md) and [DependencyFilters](https://vaadin.com/docs/v10/flow/advanced/tutorial-dependency-filter.md).

The listener should be added to a `ServiceInitEvent` which is sent when a Vaadin service is initialized.

```java
public class ApplicationServiceInitListener
        implements VaadinServiceInitListener {

    @Override
    public void serviceInit(ServiceInitEvent event) {
        event.addBootstrapListener(response -> {
            // BoostrapListener to change the bootstrap page
        });

        event.addDependencyFilter((dependencies, filterContext) -> {
            // DependencyFilter to add/remove/change dependencies sent to
            // the client
            return dependencies;
        });

        event.addRequestHandler((session, request, response) -> {
            // RequestHandler to change how responses are handled
            return false;
        });
    }

}
```

This listener should be registered as a provider via Java SPI loading facility. To do this you should create `META-INF/services` resource directory and a provider configuration file with the name `com.vaadin.flow.server.VaadinServiceInitListener`. This is a text file and it should contain the fully qualified name of the `ApplicationServiceInitListener` class on its own line. It allows to discover the `ApplicationServiceInitListener` class, instantiate it and register as a service init listener for the application.

[Image: The location of the configuration file]

The content of the file should be like this:

```text
com.mycompany.ApplicationServiceInitListener
```

> **Tip:** See <https://docs.oracle.com/javase/tutorial/ext/basics/spi.html#register-service-providers> and <https://docs.oracle.com/javase/7/docs/api/java/util/ServiceLoader.html> for details about Java SPI loading.
