سؤال

باستخدام Weld 1.1.13.Final في اختبار مع Arquillian ....

دعنا نقول أنني حقن في حقل شيء متقلب. شيء مثل الممتلكات الخاضعة للتغيير الذي أريد أن امتلك الفاصوليا نقطة الحقن لتلقي أحداث التغيير. فكر في إنشاء ملحق CDI.

اشتعلت فيها الحدث ProcessannotatedType والبحث عن جميع الحقول التي تحتوي على شرح مخصص في نقاط حقن الحقن:

giveacodicetagpre. حتى أمسك

بعد ذلك بجميع نقاط الحقن للحقول واستبدال اللحام الأساسي مع حقل جديد يتوافق مع نوع "المجمع". خلاف ذلك فشل التحقق من صحة الفاصوليا.

ولكن هذا يعمل فقط لإعداد الاشياء أثناء بدء التشغيل ليس عندما يستخدم Arquillian Manager Former لتهيئة فئة واحدة من "يلف". تفشل الأمور نظرا لأن محلل الفول يستخدم نوع مفتاح التجزئة للعثور على الفاصوليا.

أساسا لا أعتقد أنني أستطيع "قناع" فئة مشروح (مصنوعة في حبة) من قبل CDI مع طريقة إضافية لتلقي الأحداث المخصصة. كان سيكون رائعا ولكن النوع هو نوع (أي فكرة عن كيفية الوكيل أو وهمية يساوي / hashcode).

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

المحلول

حصلت عليه.اتضح دالة قيمة حساب (ملحق Google) داخل محلل TypeafeAfebeanResolver (على الأقل تطبيق CDI Weld) ذكيا.إذا قمت فقط بإعادة الفصل:

giveacodicetagpre.

ثم كل شيء يعمل بشكل جيد.اختبار الاستيلاء على حدث في الفول.سوف تنشر التعليمات البرمجية على GIST مع تعليق.

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