मैं @ कंट्रोलर, एनोटेशन-आधारित दृष्टिकोण का उपयोग करके एक स्प्रिंग 3 वेब एमवीसी प्रोजेक्ट स्थापित करने की कोशिश कर रहा हूं।मैं स्प्रिंग 3 में @ कंट्रोलर के साथ @Aspect को कैसे जोड़ सकता हूं?
package my.package
@Controller
@RequestMapping("/admin/*")
public class AdminMultiActionController {
@RequestMapping(value = "admin.htm", method = RequestMethod.GET)
public String showAdminSection() {
return "admin";
}
मेरे डिस्पैचर-सर्वलेट निम्नलिखित नियंत्रक संचालकों है:
<context:component-scan base-package="my.package" />
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
webapp आपूर्ति Maven कलाकृतियों के साथ अच्छा चल रहा है:
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>3.0.2.RELEASE</version>
</dependency>
अब मैं @AspectJ AOP जोड़ना चाहते थे ।
<aop:aspectj-autoproxy/>
applicationContext.xml में प्रासंगिक सेम के साथ-साथ बनाने के लिए यकीन है कि बनाया गया:
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.6.9</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.6.9</version>
</dependency>
मेरी applicationContext.xml को जोड़ा गया: मैं libs मिला
<bean id="securityInterceptor" class="my.package.service.SecurityInterceptor"/>
और शुरू कर दिया @Aspect को बाहर निकालना:
package my.package.service
@Aspect
public class SecurityInterceptor {
@Pointcut("execution(* showAdminSection(..))")// the pointcut expression
private void foo() {
System.out.println("fooo");
}// the pointcut signature
अब यह वह जगह है जहां यह काम करना बंद कर दिया। "fooo" कभी मुद्रित नहीं होता है।
यह हो सकता है, क्योंकि पॉइंटकट (वर्तनी?) ऑब्जेक्ट्स वसंत-प्रबंधित बीन्स होना चाहिए और मेरे @ नियंत्रक को डिफॉल्ट एन्नोटेशन हैंडलर मैपिंग के साथ संयोजन में ऐसा नहीं माना जाता है?
किसी भी मदद की सराहना की जाएगी। अगर मैं कोई जानकारी शामिल करना भूल गया, तो कृपया पूछें। आशा है कि कोई मेरी मदद कर सकता है।
बहुत बहुत धन्यवाद!
प्वाइंट 3 बिट मेरे लिए याद आ रही थी, धन्यवाद :) – Custard