توثيق تكوين Java Mail API لـ JNDI في Tomcat
-
28-10-2019 - |
سؤال
أقضي عدة أيام لمعرفة كيفية تكوين javax.mail.Session في Tomcat عبر JNDI مع المصادقة ، والآن أحصل عليها ولكن فقط بعد الغوص العميق في الشفرة.
في هذا الوقت رأيت أسوأ رمز على الإطلاق: javax.mail.Service # connect (String، String، String، String) الإصدار 1.4.1
Genacodicetagpreمتى يتم تعيين كلمة المرور؟ ولماذا يتم فحصه مقابل null مرتين؟ - ثم أدرك أن الآخر لا ينتمي لما سبق. (هذه هي المسافة البادئة الأصلية). العودة إلى الموضوع.
على الأقل وجدت أن تعريف المورد الصحيح هو: Genacodicetagpre
انتبه إلى حقيقة أنها "كلمة مرور" و "mail.smtp.user" أو "mail.user" وليست "mail.smtp.password" أو "user".
على الأقل يتم السحر في الرمز الترميزي العام لـ Tomcats. يضيف هذا المصنع رمزًا عامًا للعلامة إلى جلسة البريد في حالة الخروج من رمز العلامة العام للخاصية وكود العلامة العام للخاصية أو رمز الترقيم العام.
الآن سؤالي هو أين توجد وثائق كل هذه الأشياء. خاصة فيما يتعلق بتهيئة اسم المستخدم وكلمة المرور؟
راجع للشغل: لقد شرحت الأمر بشكل أكثر تفصيلاً لمساعدة الآخرين في كيفية حدوث نفس المشكلة.
المحلول
وثائق Tomcat محدودة لكن كود المصدر موجود هنا: http://javasourcecode.org/html/open-source/tomcat/tomcat-7.0.19/org/apache/naming/factory/MailSessionFactory.java.html
نصائح أخرى
يعد هذا مجرد خطأ في الوثائق.أثار شخص ما هذا بالفعل على متتبع أخطاء Tomcat
https://bz.apache.org/bugzilla/show_bug.cgi؟ id= 53665
أقترح عليك التسجيل والتصويت لصالح الخطأ.