سؤال

كيفية تغيير XML: اللغة في وقت التشغيل؟

الموقف هو أن هذا الشخص قد نقول "en" تم اختياره كلغة المتصفح. لدى بعض المستخدمين الآخرين على سبيل المثال "Fi" في نفس خاصية اللغة. بالنسبة للرجل الأول ، يظهر كل شيء باللغة الإنجليزية ، للثاني باللغة الفنلندية وفقًا لذلك. يستخدم الشخصان google chrome ولأن كلاهما لديه XML: LANG تم تعيينه على "en-US" الافتراضي على الكود ، يتم التعامل مع النص الفنلندي كما في اللغة الإنجليزية. الآن ما أريده هو أن النص الفنلندي هو في وقت التشغيل المعترف به على أنه الفنلندي أيضًا في مستوى إعداد XML: Lang. لذلك ، XML: لا يمكن ترميز قيمة lang كما هي الآن. لا أريد أيضًا إنشاء 7 صفحات مختلفة لسبع لغات لمجرد أنني لا أستطيع تعديل حقل واحد في وقت التشغيل.

الإعداد الخاص بي هو واحد من STRUTS2 و XWORK لـ I18N. الإعداد هو ملف JSP له علامة HTML مع متغير XML: Lang ويجب تغيير هذا الإعداد في وقت التشغيل.

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

المحلول

أفترض أنك تريد تعيين هذه القيمة في <html> مستوى.

مثال الكود الحالي:

<html lang="en" xml:lang="en">

مثال رمز منقح:

<html lang="${action.language}" xml:lang="${action.language}">

ثم ، أضف أ getLanguage() الطريقة على إجراءات Struts2 (فقط ضعها على إجراء أساسي يرث منه كل شيء) ، مثل:

public String getLanguage() {
    // return the appropriate language based on the user's choice
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top