ผมได้อธิบายความหมายของ <portType> element ไปแล้วในบทความก่อน ซึ่งในบทความนี้จะกล่าวถึงประเภทของ Operation ที่อยู่ภายใน <portType> element มีดังนี้
| ประเภท | คำอธิบาย |
|---|---|
| One-way | operation (หรือฟังก์ชัน) ภายใน web service สามารถรับ message ได้อย่างเดียวโดยจะไม่ส่งค่ากลับ |
| Request-response | web service จะทำการรับ request (input parameter) และส่ง response (output parameter) กลับไป |
| Solicit-response | สามารถส่ง request และรอการส่งค่า response กลับ |
| Notification | สามารถส่ง message request ไปได้ แต่จะไม่รอการส่งค่า response กลับมา |
ประเภทของ Operation ที่ใช้กันบ่อยสุดก็คือ request-response
ตัวอย่างประเภท Operation แบบ One-Way Operation
<message name="newTermValues"> <part name="term" type="xs:string" /> <part name="value" type="xs:string" /> </message> <portType name="glossaryTerms"> <operation name="setTerm"> <input name="newTerm" message="newTermValues" /> </operation> </portTypes>
ในตัวอย่างด้านบน port ของ "glossaryTerms" ทำการนิยามประเภทของ operation เป็นแบบ one-way operation ที่ชื่อว่า "setTerm"
ซึ่ง operation "setTerm" จะอนุญาติให้ client ส่งค่า request message (input parameter) โดยใช้ message "newTermValues" (ภายใน message นี้ประกอบไปด้วย parameter 2 ตัวคือ "term" ชนิด string และ "value" ชนิด string เช่นกัน) แต่ operation นี้จะไม่มีการส่งค่ากลับไป
ตัวอย่างประเภท Operation แบบ Request-Response Operation
<message name="getTermRequest"> <part name="term" type="xs:string" /> </message> <message name="getTermResponse"> <part name="value" type="xs:string" /> </message> <portType name="glossaryTerms"> <operation name="getTerm"> <input message="getTermRequest" /> <output message="getTermResponse" /> </operation> </portType>
ในตัวอย่างนี้ port "glossaryTerms" ทำการนิยาม Operation ประเภท request-response operation ที่ชื่อว่า "getTerm"
ซึ่ง operation "getTerm" นี้ต้องการ input message ที่ชื่อว่า "getTermRequest" (ภายใน message นี้ประกอบไปด้วย parts หรือ parameter เพียงหนึ่งตัวคือ term ซึ่งมีชนิดเป็น string) และจะส่งค่ากลับเป็น output message ที่ชื่อว่า "getTermResponse" (ภายใน message นี้ประกอบไปด้วย parts หรือ parameter เพียงหนึ่งตัวเช่นกันคือ value ซึ่งมีชนิดเป็น string)
Login
Search