سؤال

أنا في محاولة لجعل بسيط جدا خدمة الويب الذي يفعل ما يلي:

  1. العميل يضرب خدمة ويب طلب الملف.
  2. خدمة ويب خدمة الطبقة الاستفسارات hashtable الذي لديه المفتاح (البحث) و قيمة base64encoded قيمة الملف (أقول pdf)
  3. الآن أنا بحاجة إلى استخدام MTOM للعودة base64encoded القيمة المخزنة في hashtable إلى العميل.

انها تصل العميل لفك و تحويله إلى pdf.

لذا ها هي أسئلتي:

  1. أفهم أننا ترميز الملفات إلى base64 الإرسال عبر خدمة ويب ، ولكن أين وكيف MTOM تأتي في الصورة هناك ؟

  2. يمكن بعض واحد تقدم لي طريقة بسيطة والذي يستخدم MTOM ويرسل البيانات.هل نحن بحاجة إلى تحديد شيء في WSDL أيضا ؟ أو سلسلة بسيطة العودة النوع كافية ؟ السبب/لم لا ؟

شكرا

لقد رأيت هذا رمز.ويستخدم الكثير من الشروح ، أنا فقط بحاجة بسيطة كود جافا باستخدام MTOM.جديد J2EE هنا :)

تحديث 1

لائق بما فيه الكفاية شرح هنا, الآن أنا في حاجة إلى فهم ذلك من مستوى التنفيذ.معلومات جيدة هنا, لكن بالنسبة .صافي

تحديث 2

ما ينبغي أن يكون العائد من نوع الأسلوب "createMTOM(int id)"??

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

المحلول

يبدو أن خلط تنفيذ البروتوكول.

المواصفات MTOM هو هنا. هذا الصفحة عينة الرسائل.

إذا كنت تستخدم جاكس-WS البيئة ، يمكنك بالتأكيد استخدام Annotations لتشغيله.إذا كنت المتداول الصابون الرسائل باليد ، أنت تكتب ما كود جافا تحتاج إلى كتابة في إنتاجه.أساسا ، MTOM يعني أن محتوى البيانات الانتقال إلى مرفق ، وهي منفصلة MIME جزء من الرسالة و هو المشار إليه من خلال xop:تشمل عنصر href إلى MIME جزء.

المخطط له أن يقول base64Binary حسب نوع العنصر, ولكن سمات إضافية تعطي تلميحات عن تفسير بايت:xmime:contentType و xmime:expectedContentType.في تجربتي ، جاكس-ب المرجعية تنفيذ بعض القيود على استخدام هذه.لا يمكنك ، على سبيل المثال ، الحصول عليه تلقائيا تحويل النص ذهابا وإيابا بايت.في نموذجي عدة مثل CXF أو Glassfish ، يمكنك وضع البيانات في DataHandler و طقم يتحول إلى المرفق.

نصائح أخرى

يتم توفير مثال / مناقشة مفصلة جيدة في IBM Redbook: تطوير تطبيقات خدمات الويب ، انظر الصفحات 64-74

http://www.redbooks.ibm.com/redpapers/pdfs/redp4884.pdf

هناك مقالة مفيدة هنا الذي يصف MTOM وكيفية تمكينه مع CXF. تتضمن المقالة أيضًا رمز المصدر لمثال عمل.

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