Я пытаюсь использовать AOP для выполнения некоторых обработок после аннотированного контроллера. Все работает без ошибок, но совет не выполняется.Spring AOP Советы по аннотированным контроллерам
Вот код контроллера:
@Controller
public class HomeController {
@RequestMapping("/home.fo")
public String home(ModelMap model) {
model = new ModelMap();
return "home";
}
}
и установка в прикладной конфигурации
<aop:aspectj-autoproxy/>
<bean id="testAdvice" class="com.test.TestAdvice">
</bean>
<bean id="testAdvisor"
class="org.springframework.aop.aspectj.AspectJExpressionPointcutAdvisor">
<property name="advice" ref="testAdvice" />
<property name="expression" value="execution(* *.home(..))" />
</bean>
и фактические советы
public class TestAdvice implements AfterReturningAdvice {
protected final Log logger = LogFactory.getLog(getClass());
public void afterReturning(Object returnValue, Method method, Object[] args,
Object target) throws Throwable {
logger.info("Called after returning advice!");
}
}
Возможно ли это иметь совет по аннотированные контроллеры? Я использую Spring 2.5.
Я никогда не мог заставить это работать, и, к сожалению, у меня не хватило времени, чтобы иметь возможность работать над этим. На данный момент мне приходится просто копировать код. – jdana
Вам нужно включить свой компонент 'testAdvisor' в' 'следующим образом:' ' –
xli