我在JSF + Spring应用程序中使用org.springframework.web.jsf.el.SpringBeanFacesELResolver
。每个支持bean都需要一个可以解析的接口。我猜这是依赖注入的接口类型。
#{bean.text}
public interface IBean {
String getText();
}
@Named
@Scope("session")
public class Bean implements IBean {
public String getText() {
return "Hello World!";
}
}
我想摆脱界面。这对我来说是官僚主义。有可能吗?
答案 0 :(得分:0)
我终于解决了它。问题出在bean中,其范围取决于HTTP(请求,会话)。默认情况下,应手动创建接口。使用代理可以避免这种情况。
如果使用组件扫描:
<context:component-scan base-package="..." scoped-proxy="targetClass" />
或者在bean定义中:
<bean ...>
<aop:scoped-proxy>
</bean>
参见Spring文档中的第4.5.4.5节作为依赖关系的章节。 http://static.springsource.org/spring/docs/3.1.x/spring-framework-reference/html/beans.html