title: Spring ApplicationListener gets fired twice on webapp
body: <p>I have an application listener that's supposed to execute only once per webapp startup, since it loads basic user info data.</p>
  
  <pre><code>public class DefaultUsersDataLoader implements ApplicationListener&lt;ContextRefreshedEvent&gt; {
    @Override
    @Transactional
    public void onApplicationEvent(ContextRefreshedEvent e) {...}
  }
  </code></pre>
  
  <p>Somehow, it gets executed twice: on app startup and when the first request arrives to the server. Why is this happening and how can I prevent it?</p>