سؤال

على بوابة Java ، يمكنك الحصول على مدخلات تتضمن البيانات التي توفرها التطبيقات الأخرى. نريد استبدال بوابة Java الحالية بتطبيق Django ، مما يعني تكرار قدرة بوابة Java على عرض المدبرات. مواصفات الشمس المعنية التي نريد تكرارها هي JSR168 و JSR286.

أحتاج إلى حل cpython. ليس جيثون أو جافا. لا شيء ضد تلك الأدوات ، نحن لا نستخدمها. للسجل ، مقر جيثون portletpy هل عكس ما نهدف إلى القيام به.

أيضًا ، أظن أن هذا السؤال قد حدث بسبب سوء فهم من جانبنا من كيفية عمل مواصفات JSR168/JSR286. أنا فكر في أن JSR168/JSR286 هو بروتوكول غامض للتواصل مع نوع من المحتوى بين التطبيقات المنفصلة ، ولكن في عالم Java الذي يميل إلى القيام به بطرق أخرى مثل الصابون. بدلاً من ذلك ، قد تكون المشكلة هي أن هذه البروتوكولات هي ببساطة تعريفات لكيفية عرض كائنات المحتوى في طرق العرض. إذا كان كل ما يتعين علينا فعله هو التعامل مع مكالمات الصابون وعرض البيانات ، فسيكون هذا السؤال كله موضع نقاش.

صورة الهندسة المعمارية البسيطة أدناه لما نحن فكر في نريد أن نفعل:

alt text

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

المحلول

لست متأكدًا من أنه يمكنك القيام بذلك. من JSR 168:

JSR 168 Request/response Handling

إذا فهمت بشكل صحيح ، فأنت تريد أن يحل تطبيق Django محل "حاوية Java Portal/Portlet" الموجودة في المخطط. لسوء الحظ ، تستخدم الواجهة بين حاوية المدخلات والمدخلات الفردية مكالمات API في الذاكرة ، وليس كخدمة ويب. لا توجد واجهة سهلة تشبه عنوان URL حيث يمكنك الاتصال في قطعة Java للحصول على جزء كبير من HTML التي تدمجها بعد ذلك في صفحة تخدمها Django.

JSR 286 هو تحديث ، وبينما يقوم بتحسين آليات التواصل بين المدبرات ، بالإضافة إلى تقديم الموارد من المدبرات ، فإنه لا يغير النموذج أعلاه بشكل جذري حقًا.

أنا لا أقول أنه لا يمكن القيام به - فقط أنه لا توجد طريقة سهلة ، قياسية للقيام بذلك.

نصائح أخرى

يمكن أن تكون إحدى طرق الالتفاف حول هذا الأمر هي استخدام منتجات WSRP (خدمات الويب الخاصة بالمواطن البعيدة ، انظر Wikipedia) ، الذي يحول JSR 168/286 إلى خدمات الويب ويستهلكها من Django. ولكن يبدو أن WSRP لم تكن شائعة للغاية ولم أتمكن من العثور على أي تطبيقات منصة Python (على الرغم من أن الأعمال الجزئية قد توجد). بجانب هذا ، أنا مهتم أيضًا بهذا الموضوع.

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