كيفية الوصول إلى ملف Application.xml من الأذن المنتشر إلى IBM WebSphere 6.1

StackOverflow https://stackoverflow.com/questions/2044895

سؤال

أنا نشر ملف أذن إلى خادم IBM WebSpehre 6.1 - أريد أن أكون قادرا على الوصول إلى اسم تطبيق الأذن الذي يتم تخزينه في ملف النشر ضمن "اسم العرض". بالنظر من خلال مشاركات تجاوز المكدس في مواضيع ذات صلة، لقد تمكنت من جمع ذلك ممكنا عبر API api java mbean - أو IBM's API - مشكلة لا أستطيع العثور على مكان يتم فيه تلخيص قوائم API هذه، أي لا يمكن معرفة ذلك واحد للبدء النظر في. يمكنني تشغيل الموقع في تثبيت الموقع والعثور على الملف من خلال النظر في دليل "reatureApps"، ولكن هذا ليس ديناميكيا.

هل لدى أي شخص أي تجربة تعمل مع واجهات برمجة التطبيقات هذه؟ أي طريقة أخرى لإيجاد اسم عرض الأذن المنتشر ديناميكيا؟

تحرير - يجب أن أضيف أن السبب في أنني أرغب في تحميل ملفات الخصائص الخاصة بنا ديناميكيا - التي تسمى بواسطة الاتفاقية التالية "earappname.properties" - لذلك ترى أن هناك "متسوقات" معقولة وراء رغبة هذه المعلومات في بلدي تطبيق

تحرير 2 - يجب أن أشير أيضا إلى أنه سيتم نشر هذا التطبيق دائما على A - ولكن في الحالة أنه ليس كذلك، فإن الحل العام غير الملكي سيكون مفضلا، ولكن ليس ضروريا في هذه اللحظة.

تحرير 3 - ما أريد إنجازه: هل هناك طريقة لإيجاد اسم شاشة الأذن المنتشر ديناميكيا من داخل رمز التطبيق؟

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

المحلول

إذا كان السبب الفردي لهذا الهدف هو قراءة ملفات الخصائص، فسوف أوصي به نهج مختلف.

استخدم مكتبة WebSphere المشتركة.

http://publib.boulder.ibm.com/infocenter/wasinfo/wasinfo/v6r0/index.jsp؟topic=/com.ibm.websphere.nd.doc/info/ae/ae/tcws_sharedlib.html.

بالنسبة لكل أذن منتشرة لها دليل منفصل يحتوي على خصائص تحتاج إلى الوصول إليها بواسطة تلك الأذن.

إنشاء إدخال مكتبة مشتركة لكل دليل يحتوي على ملف الخصائص.

من الأذن إنشاء إشارة مكتبة مشتركة إلى مكتبة مشتركة مطلوبة.

.

ومع ذلك، قد تكون أدناه الروابط من بعض المساعدة لك لنهجك:

إدارة التطبيقات من خلال البرمجة

واجهة AppManagement.

نصائح أخرى

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

أحاول إنجاز نفس الشيء هنا. أحاول تحديد موقع وقت التشغيل في وقت التشغيل الموجود في Meta-INF / Application.xml.

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

أنا أتيطني ببساطة الاتصال:

InputStream in = new MyObject().getClass().getResourceAsStream(“META-INF/application.xml”);

حاولت أيضا تغيير الكلمة إلى "party_last / first" و "Classloader"، لكنها لا تعمل.

يمكنني تحديد موقع Application.xml على نظام الملفات نسبة إلى ملف حربي، لكنني لست متأكدا من ذلك سيعمل طوال الوقت.

هل JMX API حقا الطريقة الوحيدة؟

هذا ليس لتقديم طلبك على هذا النحو، ولكن لأدوات معالجة الأذن، بما في ذلك خادم التطبيقات.

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