چند وقتیه بنا به متقضیات کارم مجبور شدم برای اولین بار شروع کنم به کار با وب سرویس ها..همیشه تجربه های اول هیجان انگیزه و غالبا با کمی 'ترس ملایم' همراه هستن.اینکه آیا میتونی از پس کار بربیای.چون تقریبا اکثر مفاهیم برات جدیده. خوب خدا رو شکر تو این مدت تجربه های خوبی کسب کردم  و از اونجایی که ما ' متن بازی ها' چیزی واسه پنهون کردن از هم نداریم منم تصمیم گرفتم آموخته هامو باهاتون به اشتراک بذارم.

فرض کنید چهار تا زیر سیستم میخوان بین خودشون یه سری دیتا رد و بدل کنن.من اسم هاشونو میذارم:

  • App-A
  • App-B
  • App-C
  • App-D

این هم یه شمای کلی از روند انجام کار:

با این شرایط:

App-A میخواد هنگامی که ()func رو فراخوانی کرد اطلاعاتی از طریق دو App-B,App-C به App-D منتقل کنه.بنابراین:

اصطلاحا App-A یک تولید کننده است(Producer) و App-D مصرف کننده نهایی(Consumer).برای این کار بایستی در تمامی اپ های B تا D یک وب سرویس قرار داده شود تا به ترتیب فراخوانی گردند.

حال فرض کنید پس از اینکه دیتاهایی از App-A به سمت App-D ارسال شد،App-D بخواهد همان اطلاعات گرفته شده را پردازش کند و مجددا به App-A بفرستد.در این سناریو،App-D نقش provider را ایفا میکند و App-C نقش Consumer.

نکات:

  1. همواره فایل wsdl از سمت consumer به سمت provider ارسال می شود.
  2. App-Producer همواره یک فایل wsdl از App-consumer میگیرد تا متدهایش را فراخوانی کند.بنابراین در سناریوی ما،ابتدا فایل wsdl مربوط به App-D را به App-C می دهیم سپس wsdl مربوط به App-C را به App-D می دهیم و الی آخر.
  3. مشاهده میکنیم که در App-C و App-B دو متد وجود دارند که در دو وب سرویس هستند.می توان هر دو را در یک وب سرویس قرار داد.


پیاده سازی در اکلیپس:

یه ویدیوی کوچولو هم ساختم تا به صورت تصویری با روند ایجاد کلاینت های وب سرویس آشنا بشین و بتونید متدهای راه دور رو کال کنید.