我已经创建了一些用于验证对象的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。
答案 0 :(得分:0)
我的建议是避免使用autowire进行更大规模的部署,并自行连接bean。
顺便说一句,为什么你无法实例化交易验证器?你得到的错误是什么?然而,这导致了问题,因为我无法实现接口和 来自XML