سؤال

أقوم بترحيل تطبيق Seam 2 الذي يعمل بالطاقة إلى CDI وأحد الأشياء المهمة بالنسبة لي هو الاحتفاظ به هو معالجة الأخطاء. في Seam 2 ، قمت ببساطة باستبدال معالج الاستثناء الافتراضي بذني ، لكن في CDI ، أظن أنني سأضطر إلى استخدام اعتراض.

كيف يمكنني إعداد هذا الأمر على أنه استخدام اعتراض يتطلب مني تحديد مكان اعتراض المكالمات؟ أريد في الغالب إنجاز التدقيق ، لذلك عندما يحدث استثناء ، يتم تسجيله ، ثم يتم إرسال إشعار (البريد الإلكتروني ، XMPP ، SMS ، مكالمة هاتفية) إلى المسؤولين.

عندما يحدث استثناء ، هل هناك مجرد حدث يمكنني الاستماع إليه والتصرف عليه؟

والتر

هل كانت مفيدة؟

المحلول

هل تستخدم JSF2؟ إذا كانت الإجابة بنعم ، بدلاً من كتابة اعتراض ، يمكنك تسجيل استثناء HandlerFactory في web.xml كما هو موضح هنا. في CustomexceptionHandler ، يمكنك التقاط جميع الاستثناءات والتعامل معها برمجيًا. أنا أستخدم هذا النهج في تطبيق JEE6-CDI ، ابحث عنه جيدًا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top