title: Micronaut @Refreshable not working as expected
body: <p>I'm trying to set up a micronaut service with a Consul configuration. When the service starts it successfully initializes the property of the bean with the value provided from the key-value store. However it doesn't reload when the value changes, even if the refresh is triggered manually.
  Here's the bean:</p>
  <pre><code>@Refreshable
  public class ConfigBean {
  
    @Property(name = &quot;welcome-message&quot;)
    private String message = &quot;doe!&quot;;
  
    @PostConstruct
    public void init() {
      String text = this + &quot;Scattered Clouds &quot; + LocalDateTime.now().format(DateTimeFormatter.ofPattern(&quot;dd/MMM/yy HH:mm.ss.SSS&quot;));
      System.out.println(text + &quot;\r\n&quot; + this.message);
    }
  }
  </code></pre>
  <p>And here is the simple controller endpoint:</p>
  <pre><code>@Controller(&quot;/p&quot;)
  public class Controller {
  
    @Inject
    ApplicationContext applicationContext;
  
    @Inject
    private ConfigBean config;
  
    @Get(&quot;/r&quot;)
    @Produces(MediaType.TEXT_PLAIN)
    public String refresh() {
      applicationContext.publishEvent(new RefreshEvent());
      return &quot;Hello World&quot;;
    }
  
    @Get(&quot;/m&quot;)
    @Produces(MediaType.TEXT_PLAIN)
    public String message() {
      return config.getMessage();
    }
  }
  </code></pre>
  <p>With this code what happens is</p>
  <ul>
  <li>value is successfully resolved from config store and shown when navigating to localhost:8080/p/m</li>
  <li>when getting localhost:8080/p/r for manual refresh interestingly enough the init() method of the config bean is called but the value in the message attribute is not updated</li>
  </ul>
  <p>What is needed to re-trigger the update of the bean? Is there maybe an implicit call that can be used to purge a config-cache so it is fetched again?</p>
  <p>The documentation is a bit sparse about this (Version 2.2.0 was used), thanks in advance!</p>