【发布时间】:2010-03-12 20:23:39
【问题描述】:
我想知道其他人是如何做到这一点的。我在 Spring 文档中找到了 @required,我试图在“测试”中使用它,但得到了这个 stmt INFO XmlConfigurationProvider:380 - Unable to verify action class [xxx] 在初始化时存在
我在 spring 中找到了另一种方法来执行此操作,即编写自定义 init 方法并在 bean 上声明这些方法,但对于 struts2 操作来说,这似乎是一件奇怪的事情。
在我的应用程序中,我通过 spring 将不同的 Web 服务(通过 setter 注入)注入到不同的操作中。我想确保在启动时这些不为空并设置。
【问题讨论】:
-
我想我可以进一步完善我的问题。在 struts2 中,因为大多数操作都是有状态的,所以 bean 的范围是“原型”,这使得 @required 并且当我尝试编写自定义 init 方法时,上面的语句无法验证初始化时是否存在类。当我更改为单例时,我的“检查”工作并且应用程序无法启动。我在搜索中找不到任何方法来在启动时测试原型范围的 spring bean 以确保设置了依赖项。
-
我认为您可能需要提供更多详细信息——也许是您的 spring 配置文件。您是说当您的测试正在寻找它时(原型)操作不存在,还是它是不存在的依赖项之一?
-
是的 - 在阅读了有关原型范围的更多信息后,我的理解是这些是在请求操作时创建的,因此在启动时它们不可用,这就是我收到上述错误消息的原因。