2012-01-09 7 views
8

हम एक सेटअप करना चाहते हैं जहां हमारे स्टेजिंग सर्वर पर हमारी वेब सेवाओं को तैनात करते समय, हमें सूचित किया जाएगा कि डब्ल्यूएसडीएल अनुबंधों में हमारी उत्पादन साइट के डब्लूएसडीएल की तुलना में कोई ब्रेकिंग परिवर्तन हो रहा है।डब्लूएसडीएल अनुबंधों में तोड़ने वाले बदलावों का पता कैसे लगाया जाए?

क्या कोई उपकरण या सेवाएं हैं जो ऐसा करने में मदद कर सकती हैं?

की कोशिश की Membrane WSDL comparer लेकिन इस java.lang.StackOverflowError फेंक दिया जब इसे आज़मा रहे हैं :)

+0

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

+0

शायद ब्रेकिंग परिवर्तन की परिभाषा स्पष्ट नहीं है क्योंकि यह इस बात पर निर्भर करता है कि क्लाइंट सेवा का उपयोग कैसे कर रहा है। हालांकि मैं उम्मीद करता हूँ कि उदा। एक नया ऑपरेशन जोड़ने से किसी भी ग्राहक को तोड़ नहीं होगा, लेकिन संचालन/प्रकार/पैरामीटर का नाम बदलना बदलाव तोड़ रहा है। आदर्श रूप से एक उपकरण अनुबंध में परिवर्तनों को सूचीबद्ध कर सकता है, फिर हम यह तय कर सकते हैं कि परिवर्तन स्वीकार्य हैं या नहीं। समग्र उद्देश्य अनुबंध में आकस्मिक परिवर्तनों को जारी करने से बचने के लिए है, जैसे कि किसी ने किसी प्रकार का नाम बदलकर यह नहीं जान लिया कि यह वेब-सेवा द्वारा खुलासा किया गया था। –

+0

@ आईरा मैंने यह भी पूछा [इस सवाल] (http://stackoverflow.com/questions/8786935/what-are-cononsidered-non-breaking-or-backwards-compatible-changes-to-a-wsdl-contr) निम्नलिखित आपकी टिप्पणी। –

उत्तर

3

पहले; मुझे ऐसे किसी भी उपकरण से अवगत नहीं है।

मैंने "अन्य" प्रश्न का भी उत्तर दिया। वहां पोस्ट दिशानिर्देशों को देखते हुए, मैं कहूंगा कि इसे अपना खुद का रोल करना संभव होना चाहिए (संभावित, आसान नहीं :)।

मैंने अतीत में इसी तरह का काम किया था; हालांकि डब्ल्यूएसडीएल के लिए नहीं बल्कि एक और बोली के लिए। मेरा दृष्टिकोण था;

  1. नियमित XML के रूप में डबल्यूएसडीएल/स्कीमा पार्स (वे सभी एक्सएमएल बोलियों खुद को बाद कर रहे हैं) (स्कीमा हालांकि मुश्किल हो सकता है)
  2. एक में स्मृति मॉडल का निर्माण
  3. परिभाषित नियमों और उन्हें
लागू

WSDL भाग सीमित है क्योंकि सीमित संख्या में संरचनाएं हैं; स्कीमा मुश्किल होगी लेकिन अभी भी मुझे लगता है कि कर योग्य है।

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

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