[英]Autowiring beans
我創建了一些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>
我可以成功地通過main方法調用並創建它們。 但是,我現在正在嘗試將此代碼集成到其他模塊中。 Trade-validator bean實現了一個類似於以下內容的接口:
public interface IValidator {
public Object validate(Object obj) throws ValidationException;
}
我希望通過界面調用此方法:
validator.validate(rioObject);
但是,這導致了問題,因為我無法實例化接口,並且從XML中可以看到實際需要為其構造函數添加另外兩個bean。 我一直在研究自動接線方法。 但是我仍然在努力。
有沒有辦法將它指向要用作驗證器的bean? 作為atm,驗證器為null。
我的建議是避免將autowire用於更大的部署,並自行連接bean。
順便說一句,為什么您不能實例化交易驗證器? 您得到的錯誤是什么?
但是,這引起了問題,因為我無法實例化接口和XML
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.