google-code-export / activeweb

Automatically exported from code.google.com/p/activeweb
0 stars 0 forks source link

Filter's members are not injected when filter applied to specific action #54

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
When adding filter for specific action, e.g. 
add(new MyFilter()).to(MyController.class).forActions("index");
members of filter are not Guice-injected.

ControllerRegistry, lines 86-91: 

  for (String key : metaDataMap.keySet()) {
    ControllerMetaData controllerMetaData = metaDataMap.get(key);
    for (ControllerFilter filter : controllerMetaData.getFilters()) {
      injector.injectMembers(filter);
    }
  }

Here ControllerMetaData returns only filters that are applied to the whole 
controller. Specific action filters are not returned, hence members for them 
are not injected.

Original issue reported on code.google.com by vasyal...@gmail.com on 12 Aug 2011 at 1:56