自动装配豆子

时间:2011-08-03 11:20:42

标签: java spring autowired

我已经创建了一些用于验证对象的bean:

<!-- RES rules engine -->
<bean id="rules-execution-server-engine"
    class="util.res.RuleEngineRESJSE">
    <constructor-arg index="0" value="util.res.rulesengine.log" />
</bean> 

  <bean id="rio-object" class="UROImpl">
  </bean>

<bean id="trade-validator-context"
    class="rule.trade.TradeValidationContext">
    <constructor-arg index="0" ref="rio-object" />
</bean>

<bean id="trade-validator"
    class="validator.RESTradeValidator">
    <constructor-arg index="0" ref="trade-validator-context" />
    <constructor-arg index="1" ref="validation-rules-helper" />
</bean>

<bean id="validation-rules-helper"
    class="util.res.RESRulesHelperImpl">
    <constructor-arg index="0" value="rule.traderules.loc" />
    <constructor-arg index="1" ref="rules-execution-server-engine" />
</bean>

我可以通过主方法成功调用和创建它们。 但是我现在正在尝试将此代码集成到我的其他模块中。 trade-validator bean实现了一个类似于:

的接口
public interface IValidator {

public Object validate(Object obj) throws ValidationException;

}

我希望通过界面来调用它:

validator.validate(rioObject);

然而,这导致了问题,因为我无法实现接口,并且从XML可以看到实际需要两个其他bean作为它的构造函数。我一直在看自动化的方法。但我仍然在掌握它。

有没有办法将它指向bean作为验证器使用?作为atm,验证器为null。

1 个答案:

答案 0 :(得分:0)

我的建议是避免使用autowire进行更大规模的部署,并自行连接bean。

顺便说一句,为什么你无法实例化交易验证器?你得到的错误是什么?

  

然而,这导致了问题,因为我无法实现接口和   来自XML