【问题标题】:Howto get @Service instance in Spring programatically如何以编程方式在 Spring 中获取 @Service 实例
【发布时间】:2015-07-28 23:30:21
【问题描述】:

我需要实现javax.faces.convert.Converter 来转换字符串到对象和对象到字符串。

为此,我定义了特定的服务(@Service),但我不知道如何获取实例。

我曾尝试使用@Autowired@Component 来获取实例,但Spring 忽略了。

是否可以从FacesContext 获取@Service 实例?

【问题讨论】:

标签: java spring facescontext


【解决方案1】:

这是不可能的。如果 Spring 注释没有配置为在您的应用程序中使用它们,那么它是无用的。

首先你应该得到这样的应用程序上下文

ApplicationContext ctx = FacesContextUtils.getWebApplicationContext(FacesContext.getCurrentInstance());

然后使用这个上下文来获取组件的实例。

YourService custB = (YourService )ctx.getBean("yourService");

【讨论】:

  • 这当然不是不可能的。即使不是最好的选择,我希望@Configurable 可以工作。
  • @chrylis 我不明白你在说什么,你能详细说明一下吗?
猜你喜欢
  • 2013-09-11
  • 1970-01-01
  • 2011-01-17
  • 2012-04-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-07
  • 1970-01-01
相关资源
最近更新 更多