كل المشاريع
واجهة خلفية

MicroBank — خدمة ويب SOAP (JAX-WS)

خدمة ويب SOAP مبنية بـ JAX-WS: نقطة نهاية «MicroBank» مستقلة تعرض تحويل العملات وعمليات الحسابات، إضافة إلى عميل يستهلكها عبر stub مُولَّد من WSDL باستخدام wsimport.

SOAP
Protocol
JAX-WS
Stack
3
Operations
WSDL stub
Client
المنهجية

نشر نقطة نهاية JAX-WS مستقلة، ثم استهلاكها عبر stubs وفق العقد مُولَّدة من WSDL

المكدس التقني
Java 17JAX-WS (jaxws-rt)SOAP / WSDLwsimportMaven
الكلمات المفتاحية
SOAPJAX-WSWSDLwsimportWeb ServicesJava
التعمق

تمرين SOAP / WSDL كلاسيكي: خدمة بنكية تُنشَر كنقطة نهاية JAX-WS مستقلة، وعميل منفصل يتواصل معها عبر stubs مُولَّدة وفق العقد أولاً.

الهيكل

microbank-soap-service/   → ينشر نقطة @WebService على :9090
  └── service/MicroBank   → toMAD، getAccount، getAccounts
  └── entities/Account
microbank-soap-client/    → BankWSClient
  └── proxy/              → فئات مُولَّدة من WSDL (wsimport)

العمليات (@WebService BankWS)

العمليةالمُدخلالمُخرَجالوصف
toMADdouble euroAmountdoubleتحويل EUR → MAD (×15)
getAccountint codeAccountحساب واحد (رصيد عشوائي)
getAccountsList<Account>كل الحسابات

سير العمل

  1. نشر الخدمة: mvn exec:java -Dexec.mainClass=…BankWSApp
  2. توليد stub العميل من WSDL: wsimport -keep -p …proxy http://localhost:9090/?wsdl
  3. تشغيل العميل لاستدعاء العمليات البعيدة

جرى تحديث البناء: استبدال jaxws-maven-plugin الخاطئ بـ jaxws-rt، والمواءمة مع Java 17، وتبسيط الهيكل.