هل من القانوني أن يكون لديك مساحات/إصدارات مختلفة بين الطلب والاستجابة؟

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

سؤال

تحرير ثالث: أعتقد الآن أن هذه المشكلة ترجع إلى عدم تطابق إصدار الصابون (طلب 1.1 ، 1.2 استجابة) يتنكر كمشكلة مساحة الاسم. هل من غير القانوني خلط الإصدارات أم مجرد أسلوب سيء؟ هل أنا محظوظ تمامًا إذا لم أتمكن من تغيير إصدار الصابون أو الخدمة؟

التحرير الثاني: رسالة خطأ موضحة ، وحاولت تقليل "TL ؛ DR" -ness.

تحرير: [رابط تم حذفه ، غير مرتبط

باستخدام Soapui ، أرسل طلبًا يبدأ بـ:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" ...

والحصول على استجابة تبدأ بـ:

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" ...

أعلم أن الخدمة تحصل على المعلومات ، لأن العمليات التي تعمل في الخط تعمل. ومع ذلك ، فإن بلدي soapui testStep فشل. له تأكيدان نشطان: "استجابة الصابون" و "ليس خطأ الصابون". علامة الفشل هي بجوار "استجابة الصابون" ، مع الرسالة التالية:

السطر -1: Element Envelope@http://www.w3.org/2003/05/soap-envelope ليس مغلفًا صالحًا@http://schemas.xmlsoap.org/soap/envelope/ وثيقة أو استبدال صالح.

لقد حاولت خلط ومطابقة بادئات مساحة الاسم وعنوان URL للمخطط. يبدو أن تغيير البادئات ليس له أي تأثير ؛ تغيير عناوين URL يسبب أ VersionMismatch خطأ. لقد حاولت أيضًا استخدام مجموعة استبدال ، لكن هذا لا يبدو قانونيًا.

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

المحلول

حسنًا ، يبدو أن السؤال المعدل لديه إجابة: "يعتمد الأمر".

W3C: انتقال الإصدار من SOAP/1.1 إلى إصدار الصابون 1.2

نصائح أخرى

كل من مساحات الأسماء صالحة تمامًا (يمكنك حتى الانتقال إلى كل واحدة لرؤية تعريف المخطط). يبدو الأمر كما لو أن المشكلة هي مع أداة اختبار واجهة المستخدم الخاصة بك ومعالجة الاستجابة مع مساحة الاسم من الطلب.

تصف الخدمة الطلب والحمولة النافعة للاستجابة ، وتساعد مساحات الأسماء على تحديد هذا التعريف. على الرغم من أنه يبدو أن النموذج السيئ لخلط/مطابقة هذه التعريفات بين الاثنين ، إلا أنه لا يزال صالحًا.

على الرغم من أن المخططات يتم خلطها بين الطلب والاستجابة ، فإن هؤلاء هم مجرد مساعدين في تفسير قيم الطلب وقيم الاستجابة.

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