我已经继承了一些 JSF Spring 代码,并且可以看到而不是通过 faces-config.xml
注入(inject) Spring bean as
<managed-bean>
团队已经在代码中做到了
FacesContext facesContext = FacesContext.getCurrentInstance();
ELResolver elResolver = facesContext.getApplication().getELResolver();
MyClass myBean = (MyClass) elResolver.getValue(facesContext.getELContext(), null,ApplicationConstants.MY_BEAN_NAME);
我更愿意在 xml 中执行此操作 - 这样做有什么好处还是没什么大不了的?
版本是 JSF 1.2 和 Spring 3
最佳答案
也许他们只是不喜欢 XML?
就个人而言,我会尽可能使用基于注解的依赖注入(inject),而不是 XML 配置或代码。
但是,在一种情况下,基于代码的方法是唯一可行的方法:当您有一个具有更大范围(例如 session 甚至应用程序)的托管 bean 时,它的其中一个操作需要访问托管 bean范围较小(例如请求)。
关于java - 通过 XML 或代码的 JSF Spring 注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5800260/