تستدعي Java مكتبة معالجة الرسومات المحلية أثناء معالجة الرسومات. عند استخدام Java لمعالجة الرسومات (مثل قياس الصور وتوقيع الصورة وإنشاء التقارير)، لن تكون هناك مشكلة إذا تم تشغيلها على نظام Windows. إذا قمت بنقل البرنامج إلى Linux/Unix، فقد يكون هناك خطأ يتمثل في عدم إمكانية عرض الرسومات.
رسالة سريعة: "لا يمكن الاتصال بخادم نافذة X11" وذلك لأن معالجة رسومات Linux تتطلب خادم X.
حل:
1. إذا تم تثبيت واجهة رسومية على الخادم، فيمكن حلها عن طريق تعيين متغير البيئة: DISPALY=127.0.0.1:0.0.
2. إذا لم يتم تثبيت الواجهة الرسومية، فيمكنك إضافة معلمات عند تشغيل Java: -Djava.awt.headless=true.
3. استخدم مكتبة PJA بدلاً من مكتبة معالجة الرسومات المحلية.
التعديلات على Tomcat هي كما يلي:
افتح ملف %Tomcat_home%/bin/catalina.sh وأضف -Djava.io.tmpdir="$CATALINA_TMPDIR" إلى البرنامج النصي الذي يبدأ تشغيل Tomcat: -Djava.awt.headless=true
"$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS"
-مسار الفئة "$CLASSPATH"
-Dcatalina.base="$CATALINA_BASE"
-Dcatalina.home="$CATALINA_HOME"
-Djava.io.tmpdir="$CATALINA_TMPDIR"
-Djava.awt.headless=true
org.apache.catalina.startup.Bootstrap "$@" ابدأ
>> "$CATALINA_BASE"/logs/catalina.out 2>&1 &
إذا [ ! -z "$CATALINA_PID" ]؛
صدى $! > $CATALINA_PID fi
fielif [ "$1" = "توقف" ] ؛
بعد الحفظ، أعد التشغيل ويمكنك العمل على الرسومات.