2012-10-15 18 views
33

मुझे छोटी वेब सेवाओं का एक समूह लिखना है। मौजूदा वर्कफ़्लो इंजन और सेवा रजिस्ट्री ढांचे के साथ काम करने के लिए उन्हें डब्लूएसडीएल द्वारा परिभाषित किया जाना चाहिए और एसओएपी-आरपीसी के माध्यम से काम करना चाहिए। हालांकि, मैं उन्हें अपनी पसंद के एक सर्विस स्टैक/मंच पर सेवा कर सकता हूं।हास्केल में एसओएपी वेब सेवाएं?

मैं वर्तमान में उन्हें जावा में लिख रहा हूं, और यह बहुत बुरा नहीं है। लेकिन मैं सोच रहा हूं कि अगर मैं हास्केल में इन सेवाओं को लिखने में सक्षम था तो मेरा जीवन आसान हो सकता है। Google पर खोज, ऐसा लगता है, एक समय पर, किसी और के पास एक ही विचार था और "हैफा" नामक एक प्रोजेक्ट शुरू किया। हालांकि, ऐसा लगता है कि हैफा को कुछ सालों तक बनाए रखा नहीं गया है, और मुझे एसएएपी वेब सेवाओं के रूप में हास्केल में लिखी गई सेवाओं की सेवा करने में सहायता करने वाले किसी भी अन्य ढांचे को नहीं मिला।

क्या किसी को किसी भी अन्य ढांचे के बारे में पता है जो मुझे आसानी से एसएएपी-आधारित वेब सेवाओं को हास्केल का उपयोग करने की अनुमति देगा?

यदि नहीं, तो क्या किसी ने इसे मैन्युअल रूप से किया है (यानी, आने वाले साबुन-आरपीसी अनुरोधों को संसाधित करने के लिए हैकेज से एक्सएमएल पुस्तकालयों का उपयोग करें, और साबुन-आरपीसी अनुपालन उत्तरों बनाएं)? क्या करना मुश्किल था? कोई गॉथस? क्या यह प्रयास लायक था?

+0

संबंधित प्रश्न: http://stackoverflow.com/questions/9931410/haskell-which-soap-client-lib-to-use ऐसा लगता है तुम यहाँ भाग्य से बाहर रहे हैं ... – florent

+1

क्यों आप जावा से दूर जाना चाहते हैं, इसमें वेब सेवाओं के लिए उत्कृष्ट समर्थन और पुस्तकालय हैं (अस्वीकरण, मैं जावा का उपयोग नहीं करता हूं या वास्तव में इसे पसंद करता हूं, लेकिन डब्ल्यूएस के लिए यह सी # के साथ है)। – johnharris85

उत्तर

6

चूंकि हैफा अब मर चुका है, इसलिए अब हास्केल में एसओएपी वेब सेवाओं के लिए कोई समकक्ष रूपरेखा नहीं है। तो मैं आपको ढांचे के कुछ गुच्छा का उपयोग करने की सलाह दूंगा। यसोड + शूप उपयुक्त हो सकता है। मुझे लगता है कि आरईएसटी/जेएसओएन प्रौद्योगिकियों में चिकनी संक्रमण की वजह से हास्केल में एसओएपी डब्ल्यूएस ढांचे के डोमेन में ऐसी प्रवृत्ति है। इसके अलावा हो सकता है इन दो लेख उपयोगी होगा के लिए आप http://www.cin.ufpe.br/~haskell/hwsproxygen/files/HWSProxyGen.pdf और http://www.jofcis.com/publishedpapers/2010_6_9_2859_2867.pdf

-1

तुम सिर्फ तो आप शायद सिर्फ खुले कनेक्शनों सकता है वेनिला XML/सोप संदेश भेजने और पढ़ने/Aeson लिखने के लिए की जरूरत है। लेकिन अगर एसओएपी सेवाओं को डब्लूएस-सिक्योरिटी, डब्ल्यूएस-एड्रेसिंग इत्यादि की ज़रूरत है, तो आप मौजूदा ढांचे का उपयोग करना बेहतर कर देंगे। उदाहरण के लिए: https://metro.java.net/

अस्वीकरण: मैं मेट्रो में शामिल हूं।

हालांकि हास्केल में एसओएपी ढांचा होना अच्छा होगा।

संबंधित मुद्दे