جلسه سوم فراخوانی تارپردازه با استفاده از کتابخانه‌ ی اکسیس (AXIS)

در اين بخش روش فراخوانی تارپردازه­ی دوره­های دستمزد را به کمک کتابخانه اکسیس نشان می­دهیم. این فراخوانی در رويه­ی ایستای invokeSPWS از کلاس SalaryPeriodEndpoint پیاده­سازی شده است، هر چند نیاز نیست لزوماً در اين کلاس نهاده شود و در عمل در هر جایی که می خواهیم تارپردازه را فرابخوانیم می­توان آن را به کار بست. در مورد ارزش­گذاری متغیرها باید به چند نکته توجه نمود. nameSpace باید برابر با همان ارزشی باشد که در الگوی اکس­ام­ال آمده است (در اينجا http://www.raydana.com/schemas/hr). ارزش portTypeName می­بایست همانی باشد که در ویژگی portTypeName در دانه با شناسه salaryPeriod آورده شد. ارزش متغیر input باید برابر با المان ریشه­ی تعریف شده برای درخواست در الگوی اکس­ام­ال باشد (در اينجا SalaryPeriodRequest). webServiceName باید برابر با ویژگی locationUri  دانه­ی salaryPeriod باشد. ارزش متغیر endpoint نشانی فراخوانی تارپردازه است که بخش اول ان در اينجا نشانی پروژه ای­آر­پی و بخش دوم آن نشانی نسبی تارپردازه است. ارزش متغیر operation برابر است با شناسه دانه­ي نگاشت کننده (در اينجا salaryPeriod). بخش دیگر کد نکته ویژه­ای ندارد و می­تواند در مورد تارپردازه­های دیگر همانند­نویسی شود.

جلسه دوم راه اندازی تارپردازه ها به کمک تارپردازه های اسپرينگ (Spring Web Services)

پیاده­سازی تارپردازه­ها می­تواند به دو روش انجام شود. روش پیمان پیشین (Contract First) و روش پیمان پسین (Contract Last). در روش پیمان پسین ابتدا کد زده می­شود و فایل دابلیو­اس­دی­ال از روی کد ساخته می­شود، در حالیکه در روش پیمان پیشین از دابلیو­اس­دی­ال آغاز می­کنیم و سپس به سراغ کد زدن می­رویم. ما در اینجا چهارچوب اسپرینگ (براي اطلاعات بيشتر اين نوشتار را بخوانيد http://static.springsource.org/spring-ws/sites/1.5/reference/html/tutorial.html) را به کار می گيریم که خود از روش پیمان پیشین بهره می­گیرد. روش پیمان پیشین دارای مزایایی در مقایسه با روش پیمان پسین است که برای اطلاعات بیشتر می­توانید به این نوشتار http://static.springsource.org/spring-ws/sites/1.5/reference/html/why-contract-first.html  مراجعه کنید. جهت دریافتن بهتر روش انجام کار، پیاده­سازی یک نمونه تارپردازه را در ای­آر­پی (ERP) در طول نوشتار نشان خواهيم داد. موجوديت دوره­ی دستمزد (SalaryPeriod) را بیانگاريد که شماری از آن در هر سال مالی (FinanceYear) وجود دارد. در حقيقت یک پیوند چند به یک ميان این دو برقرار است و می­توان با فراخوانی رويه (method) زير دوره­های دستمزد يک سال مالی را خواند.

SalaryPeriodServiceUtil.loadSalaryPeriodByFinanceYear(financeYearId);

در واقع می­خواهيم تارپردازه­ای بنويسم که شناسه­ی يک سال­مالی را بگيرد و دوره­های دستمزد آن را پاسخ دهد. در ادامه به کارهای لازم برای راه­اندازی تارپردازه­ها و پیاده­سازی این نمونه می پردازیم.

جلسه اول آموزش Web Services

تار پردازه ها (وب سرویس ها) تارپردازه ها یک امکان بر خط هستند که برنامه های کاربردی تار پایه (مبتنی بر وب) به کمک آنها می توانند به ارائه خدمت برای دیگر برنامه ها بپردازند و یا متقابلاً از خدمات فراهم شده دیگر برنامه ها استفاده نمایند. نمونه ی پرکاربرد یک تار پردازه جستجوگر گوگل است که تارنماهای گوناگون می توانند با به کارگیری آن امکان جستجو را برای کاربران خود فراهم آورند. در حقیقت همانگونه که تارنماها کاربران و برنامه ها را باهم پیوند می دهند، تارپردازه ها خود برنامه ها را به هم می پیوندند. براي آشنايي بيشتر، در اين نشاني http://webservices.seekda.com مي توانيد با استفاده از جستجوگر ويژه تارپردازه ها، آنها را جستجو کنيد و آنها را فراخواني نماييد. پروتکل سپ (SOAP or Simple Object Access Protocol) روش ترابری داده ها میان کاربر و کارگزار تارپردازه ها را تعیین کرده است. در این پروتکل داده ها با قالب اکس ام ال (XML) بر روی پروتکل اچ تی تی پی منتقل می شوند. توصیف پردازه در فایل های اکس ام ال از نوع دابلیو اس دی ال (WSDL or Web Service Definition Language) انجام می شود.