تحميل حتى web.xml لاختبارات التكامل مع رصيف

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

  •  03-07-2019
  •  | 
  •  

سؤال

وOK هذا النوع من المتعلقة بما يلي: عن طريق رصيف ل التركيب واختبارات تشغيل بريمج برمجيا

وحصلت على إجابات كبيرة هناك، وتمكنت من تحميل ما يصل السيرفلتس برمجيا والتي جعلت كل من رائع.

ما أود القيام به ولكن يتم تحميل حتى web.xml في اختبار (كل في classpath)، وأنها سبقت الخادم (باستخدام CLASSPATH الحالي) - لقد رأيت في مستندات كيف أن نشير إلى دليل للقيام بذلك، ولكن أريد أن أعمل خارج CLASSPATH (أفضل لفي مكان الاختبار). التحقق من صحة أساسا بلدي web.xml.

و(ليست ذات صلة، ولكن هذا التطبيق هو في سكالا، ولكن لم يكن لدي أي مشكلة مع ذلك، كل شيء يعمل كما هو معلن).

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

المحلول

وهذا يبدو وكأنه ما تريد القيام به هو تحميل تطبيق ويب السليم برمجيا، بدلا من السيرفلتس فرد تحميل (وأعتقد أنك تريد أن تفعل ذلك دون وجود ملف WAR الكامل للعمل من).

Server server = new Server( port );
WebAppContext root = new WebAppContext();

root.setWar("/path/to/somewhere");
root.setContextPath("/");

server.addHandler( root );
server.start();

والحيلة هي أن /path/to/somewhere يجب أن يحتوي على دليل WEB-INF ويجب أن يعيش ملف web.xml من الداخل هناك. أي شيء آخر يحتاج إلى العيش داخل هذا الهيكل الدليل، ككل شيء آخر يمكن تحميلها تلقائيا من CLASSPATH الخاص بك (على الرغم إذا أردت، يمكنك أن تجعل هذا المسار إلى ملف WAR الفعلي أو كاملة انفجرت شجرة WAR).

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