JWt (مجموعة أدوات تطوير الويب باستخدام جافا)

JWt (تُنطق "جاي-ويتي") هو إطار عمل مفتوح المصدر لتطبيقات الويب ، يركز على الأدوات الرسومية ، وهو مُصمم للغة البرمجة جافا، وقد طوّرته شركة Emweb . يحتوي على واجهة برمجة تطبيقات (API) تستخدم أنماط تطوير تطبيقات واجهة المستخدم الرسومية المعروفة. يعتمد نموذج البرمجة فيه على المكونات والأحداث ، على غرار Swing .

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

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

تتميز هذه المكتبة بطبقة تجريدية فريدة لنموذج عرض المتصفح. تستخدم المكتبة تقنية Ajax للتواصل مع المتصفحات التي تدعمها، بينما تستخدم عمليات إعادة إرسال نموذج HTML عادي مع المتصفحات الأخرى (لتحسين إمكانية الوصول ومحركات البحث). وباستخدام أسلوب التمهيد التدريجي، يتم عرض واجهة المستخدم مبدئيًا كصفحة HTML عادية، ثم يتم تحديثها تلقائيًا للمتصفحات التي تدعم Ajax لاستخدام Ajax لزيادة التفاعل.

يتم توزيع JWt كملف JAR. تطبيق JWt هو ملف WAR يتم نشره في حاوية servlet متوافقة مع المعايير .

الميزات الرئيسية

للاطلاع على نظرة عامة أكثر تفصيلاً، راجع قائمة الميزات على الصفحة الرئيسية للمشروع. [ 2 ]

  • التدهور التدريجي التلقائي والتحسين التدريجي
  • في جميع المتصفحات الحديثة، يكون تطبيق JWt عبارة عن تطبيق من صفحة واحدة ، مع دعم كامل للتنقل للأمام/للخلف والإشارة المرجعية، ولكنه لا يزال متوافقًا تمامًا مع تحسين محركات البحث .
  • يدعم الأحداث التي يبدأها الخادم ( Comet )، ويستخدم الإدخال/الإخراج غير المتزامن عند نشره داخل حاوية Servlet 3.0.
  • واجهة برمجة تطبيقات موحدة لعرض ثنائي الأبعاد (SVG/HTML5 canvas/VML/PDF) متوافقة مع java.awt.Graphics2D
  • عرض متكامل لملفات PDF للأدوات والرسومات (المخططات) وHTML/CSS، لإنشاء التقارير
  • التحقق من صحة البيانات من جانب العميل ومن جانب الخادم
  • ميزات أمان مدمجة تلقائية متنوعة لتجنب ثغرات البرمجة النصية عبر المواقع وثغرات CSRF .
  • دعم القوالب من خلال CSS أو Bootstrap
  • يتم عرض الأدوات المتاحة في معرض الأدوات
  • واجهة برمجة تطبيقات للرسم ثلاثي الأبعاد لعرض WebGL، مع إمكانية الرجوع إلى العرض المُسرّع بواسطة وحدة معالجة الرسومات من جانب الخادم.
  • واجهة برمجة تطبيقات للرسوم البيانية ثلاثية الأبعاد (الأسطح، النقاط، الرسوم البيانية الشريطية، ...) تدعم التحديد، وتظليل التقاطعات، وخرائط الارتفاع، وخطوط التساوي، ...

مثال على الكود

مثال برنامج "Hello World!" [ 3 ] ، الكود المصدري الكامل [ 4 ]

/* * فئة تطبيق "مرحباً بالعالم" بسيطة توضح كيفية التفاعل * مع الأحداث، وقراءة المدخلات، وتقديم التغذية الراجعة. */ public class HelloApplication extends WApplication { public HelloApplication ( WEnvironment env ) { super ( env ); setTitle ( "مرحباً بالعالم" );getRoot (). addWidget ( new WText ( "اسمك من فضلك؟" ) ); final WLineEdit nameEdit = new WLineEdit ( getRoot ()); nameEdit.setFocus ( );WPushButton button = new WPushButton ( " Greet me." , getRoot ( ) ); button.setMargin ( 5 , Side.Left ) ;الحصول على الجذر (). addWidget ( new WBreak ());final WText greeting = new WText ( getRoot ());button.clicked (). addListener ( this , new Signal.Listener () { public void trigger ( ) { greeting.setText ( " مرحباً، " + nameEdit.getText ( ) ) ; } } ) ; } }

انظر أيضاً

مراجع

  1. "الإصدار 4.14.0" . 15 يوليو 2026. تم الاطلاع عليه في 16 يوليو 2026 .
  2. "JWt، مجموعة أدوات جافا للويب - Emweb" . www.webtoolkit.eu . تم الاطلاع عليه بتاريخ 27 أكتوبر 2019 .
  3. "JWt، مجموعة أدوات جافا للويب - Emweb" . www.webtoolkit.eu . تم الاطلاع عليه بتاريخ 27 أكتوبر 2019 .
  4. "شفرة المصدر لمثال مرحباً بالعالم " . www.webtoolkit.eu