استخدام Spring AOP في تطبيق JSF
سؤال
فكر في تطبيق ويب JSF مع فول مُدار FooBean.java.لقد أعلنت هذا "FooBean" في ملف faces-config.xml الخاص بي.الآن، إذا أردت إضافة نصيحة Spring AOP لطرق FooBean، كيف أفعل ذلك؟
- هل يجب علي إضافة ملف applicationContext.xml والإعلان عن الفاصوليا المُدارة بداخله؟
- أم أنها ستعمل حتى لو لم أعلن عن الفاصوليا المُدارة داخل ملف تكوين Spring؟
ملحوظة:لقد قمت بإنشاء وحدة جوانب وحدد نقطة قطع مثل @Pointcut("داخل(dummy.web.reporting..*)") داخل وحدة الجوانب.
المحلول
يمكنك تحميل ملف xml سياق ربيعي عادي من داخل web.xml الخاص بك كما يلي:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/spring-context.xml</param-value>
</context-param>
يمكنك بعد ذلك تحديد الفاصوليا المُدارة هنا بطريقة الربيع العادية ولا يزال بإمكانك الرجوع إلى هذه الفاصوليا حسب المعرف في jsps الخاص بك.
ستتمكن أيضًا من استخدام جميع عناصر Spring AOP القياسية داخل جهازك spring-context.xml
نصائح أخرى
أنا أستخدم Spring AOP بكثافة في تطبيق Spring JSF، وأود أن أقترح عليك تحميل حبوب JSF الخاصة بك عبر حاوية Spring وأيضًا السماح لـ Spring بإدارة نطاق الحبوب.في مثل هذا السيناريو، سيتم تحميل جميع الحبوب بواسطة حاوية Spring وبالتالي يصبح من السهل جدًا تنفيذ Spring AOP.
مزيد من المعلومات حول هذا النوع من تكامل Spring-JSFhttp://xebee.xebia.in/2011/10/31/spring-jsf-integration-made-easy-clean-using-spring-annotations/