का मिश्रण मैं अक्का, स्प्रे और जेटी युक्त एक स्टैंडअलोन जार बनाने की कोशिश कर रहा हूं। आदर्श रूप में मैं उस एकल फ़ाइल में पूरे एप्लिकेशन को बिना किसी बाहरी फाइल के वितरित करता हूं।अक्का, स्प्रे, और एम्बेडेड जेटी
मैं एक एम्बेडेड जेट्टी सर्वर उदाहरण
def main(args: Array[String]): Unit = {
val server = new Server(9012);
server.start();
server.join();
Thread.sleep(2000);
server.stop();
}
बनाने का तरीका समझते हैं और मैं एक HelloService और बूट वर्ग बनाने में स्प्रे उदाहरण कोड का पालन किया है, लेकिन मैं कैसे दो कनेक्ट करने के लिए की कोई सांसारिक विचार है , ताकि जब जेटी सर्वर पर एक यूआरएल का अनुरोध किया जाता है तो स्प्रे सेवा इसका जवाब देती है। कोई भी सहायताकाफी प्रशंसनीय होगी।
अद्यतन: मैं एक बहुत Alois Cochard (मैं एक वेब पटकथा पृष्ठभूमि से आ रहा हूँ, और जावा वेब सेवाओं के आसपास मेरे सिर हो रही द्वारा प्रेरित जांच के एक धागा करने के लिए इस समस्या को हल करने के लिए धन्यवाद, के करीब हो रही है है रहा ... चुनौतीपूर्ण!)। मैंने सर्वर शुरू करने के लिए अपना main method संशोधित किया है और Jetty और akka configuration फ़ाइलों को प्रारंभ करने वाले टेम्पलेट में पढ़ रहे हैं। यह उन फ़ाइलों के दोनों पढ़ रही, लेकिन जब मैं जेट्टी सर्वर पर करने के लिए नेविगेट/अब मैं इस हो रही है:
HTTP ERROR: 500
Problem accessing /. Reason:
assertion failed: 0 actors for id 'spray-root-service' found, expected exactly one
मैं जानता हूँ कि मैं कुछ मूर्ख (और शायद यह है कि मैं एसबीटी नीचे तोड़ने के लिए और का उपयोग करना चाहिए याद कर रहा हूँ , लेकिन ग्रहण में बस संकलन और चलाने में सक्षम होने के बाद, और फिर ब्राउज़र में रीफ्रेश करने में सक्षम होना बहुत आसान और आकर्षक है)।
अद्यतन # 2: पता लगा समस्या। मैं WebAppContext ऑब्जेक्ट नहीं बना रहा था, जिसका अर्थ था कि web.xml कभी नहीं पढ़ रहा था, और इस प्रकार अक्का को कभी लोड नहीं किया जा रहा था। This is the revised मुख्य विधि जो अब काम कर रही है।
क्या आप [sbt-assembly] (https://github.com/sbt/sbt-assembly) के बारे में जानते हैं? – AmigoNico