Я хочу ввести зависимость в пользовательскую функцию проверки пружинных модулей. Я попытался использовать @Autowired на сеттер, но он не имеет никакого эффекта. Кто-нибудь знает, если и как это можно сделать?Как я могу ввести зависимость в пользовательскую функцию проверки валидации Spring (Valang)?
Вот мой valang валидатор:
<bean id="resellerValidator" class="org.springmodules.validation.valang.ValangValidator">
<property name="customFunctions">
<map>
<entry key="isValidResellerId" value="com.myproject.valang.IsValidResellerIdFunction" />
</map>
</property>
<property name="valang">
<value>
<![CDATA[
{resellerId: ? IS BLANK OR isValidResellerId(?) IS TRUE : '' : 'field.badFormat'}
]]>
</value>
</property>
</bean>
А вот пользовательская функция:
public class IsValidResellerIdFunction extends AbstractFunction {
private ResellerService resellerService;
@Autowired
public void setResellerService(ResellerService resellerService) {
this.resellerService = resellerService;
}
public IsValidResellerIdFunction(Function[] arguments, int line, int column) {
super(arguments, line, column);
definedExactNumberOfArguments(1);
}
@Override
protected Object doGetResult(Object o) throws Exception {
String resellerId = (String) getArguments()[0].getResult(o);
return resellerService.isValidResellerId(resellerId);
}
}
Спасибо за ответ, но это не имело никакого эффекта. –