2011-12-12 94 views
2

我们实际上正在尝试注入不同的控制器类来实现修剪版本和完整版本。@注入控制器

我们采取春季和吉斯和所有文件一看就是刚要注入的变量,比如

@inject 
static MyBean bean; 

但有可能使注入声明像这样

@Inject 
public class MyRealBean implement MyBean 

我认为不是,但也许...;) 所以问题是,在控制器的播放框架中的注入annunci的位置。 我想出了一种黑客,但我并不幸运。 我创建了一个包装控制器,它拥有bean控制器并将所有消息发送给它。

public Wrapper extends Controller { 
@Inject 
static MyBean bean; 

public static void index() { 
    bean.index(); 
} 

也许有人知道更好的方法或我们在错误的道路......

感谢

+0

我不明白你想达到什么目的,试着用更多的描述性例子来解释你的问题。 – 0lukasz0

回答

2

构造函数之前把@Inject注解。

+0

好的,我们试过并在AbstractModule实现中绑定了一个构造函数来绑定正确的类(请参阅http://code.google.com/p/google-guice/wiki/ToConstructorBindings)。并创建构造函数public MyRealBean(MyBean bean){};'。但现在我们得到一个IllegalStateException:无法创建Guice注入器错误 – bopa

+0

您是否创建了一个扩展AbstractModule并执行如下操作的类:Guice.createInjector(new YouModule())? – caarlos0

+0

@ caarlos0我确实是这样写的。 – Wojteq