1. บทน า (Introduction) - Khon Kaen...

67
รายงานการศึกษาและออกแบบระบบทะเบียนเว็บเซอร์วิสสาธารณะ 1 1. บทนา (Introduction) อินเทอร์เน็ตได้ทาให้การสื่อสารข้อมูลระหว่างมนุษย์เป็นไปได้อย่าง สะดวกและรวดเร็ว ซึ่งได้มี ผลกระทบต่อหลายวงการ อย่างเช่น ในการศึกษานั้น ทาให้ผู้เรียนสามารถศึกษาสิ่งต่าง ๆ ได้จากสื่อ อิเล็กทรอนิกส์ซึ่งสามารถเข้าถึงได้ผ่านอินเทอร์เน็ต ในการทาธุรกิจ ทาให้เจ้าของผลิตภัณฑ์ พันธมิตรคู่ค้า ตลอดจนลูกค้า มีการสื่อสารและทางานร่วมกัน ไม่ว่าจะอยู่ในสาขาอาชีพใด การติดต่อสื่อสารและทางาน ร่วมกันระหว่างองค์กรนั้นจาเป็นต้องเกิดขึ้น ในอดีตที่ผ่านมาองค์กรต่าง ๆ มักจะประสบปัญหาจากการ ทางานร่วมกันโดยใช้แอปพลิเคชันต่างๆ ที่ถูกพัฒนามาจากหลากหลายแพลตฟอร์ม หลากหลาย ระบบปฏิบัติการ หลากหลายภาษา และถึงแม้ว่าองค์กรต่างๆ สามารถที่จะเชื่อมต่อแอปพลิเคชันต่างๆ เข้า ด้วยกันได้ แต่การทาเช่นนั้น ทาให้มีค่าใช้จ่ายที่สูง และมีความ สลับซับซ้อนมาก ด้วยเหตุนี้เอง จึงมีความ ต้องการมาตรฐานกลางเพื่อทาให้การติดต่อสื่อสารและทางานร่วมกัน ขององค์กรสะดวกและรวดเร็วมากขึ้น มาตรฐานกลางนั่นคือเว็บเซอร์วิส เว็บเซอร์วิส (Web Service) [1] เป็นระบบซอฟต์แวร์ที่ออกแบบมาเพื่อสนับสนุนการทางานระหว่าง คอมพิวเตอร์กับคอมพิวเตอร์ผ่านระบบเครือข่าย โดยใช้ภาษาเอกซ์เอ็มแอล (XML) [2] เป็นภาษาที่ใช้ในการ อธิบายการเรียกใช้ซอฟต์แวร์และการ ติดต่อสื่อสารระห ว่างโปรแกรม ตัวอย่างเช่น การบริการในการ ตรวจสอบราคาหุ้นของตลาดหุ้นหลายๆ ที่และอ่านข่าวจากแหล่งข่าว หลายๆ ที่โดยให้เฉพาะข่าวของบริษัท ที่ผู้ขอใช้บริการสนใจ ผู้ให้บริการเว็บเซอร์วิสหนึ่งอาจจะเป็นผู้ขอบริการเว็บเซอร์วิสอื่น ยกตัวอย่างเช่น เว็บ เซอร์วิสที่ให้บริการข้อมูลก่อนการซื้อขายหุ้น อาจจะเป็นผู้ขอใช้บริการของเว็บเซอร์วิสที่ให้บริการการให้ ข่าว ความสามารถของเว็บเซอร์วิสที่ทาให้โปรแกรมเชื่อมต่อกับโปรแกรมอื่นได้นั้นเป็นจุดเด่นของเว็บ เซอร์วิสที่สามารถจะเชื่อมบริการหลายๆ อันเข้าด้วยกัน มาตรฐานหลายมาตรฐานได้ถูกนาเสนอขึ้นเพื่อ สนับสนุนการทาให้เว็บเซอร์วิสติดต่อกันได้อย่างมีประสิทธิภาพเช่น การใช้เอกสารภาษา WSDL (Web Services Description Language) [3] ซึ่งเป็นภาษา XML ประเภทหนึ่ง โดย WSDL (Web Services Description Language) เป็นภาษาที่ใช้ในการ อธิบายการเรียกใช้ งานเว็บเซอร์วิสซึ่งเปรียบเสมือนการอ่าน คู่มือการใช้งานโปรแกรมนั่นเอง แต่ทว่ามีข้อแตกต่างกันตรงที่ไม่เฉพาะมนุษย์เท่านั้นที่สามารถเข้าใจคู่มือ นั่น โปรแกรมที่สามารถอ่านเอกสารภาษา XML เข้าใจสามารถที่จะเข้าใจเอกสาร WSDL ได้เช่นกัน ซึ่งจาก คุณสมบัตินี้ช่วยทาให้การเรียกใช้เว็บเซอร์วิสเป็นไปได้อย่างอัตโนมัติ

Transcript of 1. บทน า (Introduction) - Khon Kaen...

Page 1: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 1

1. บทน า (Introduction)

อนเทอรเนตไดท าใหการสอสารขอมลระหวางมนษยเปนไปไดอยาง สะดวกและรวดเรว ซงไดม

ผลกระทบตอหลายวงการ อยางเชน ในการศกษานน ท าใหผเรยนสามารถศกษาสงตาง ๆ ไดจากสอ

อเลกทรอนกสซงสามารถเขาถงไดผานอนเทอรเนต ในการท าธรกจ ท าใหเจาของผลตภณฑ พนธมตรคคา

ตลอดจนลกคา มการสอสารและท างานรวมกน ไมวาจะอยในสาขาอาชพใด การตดตอสอสารและท างาน

รวมกนระหวางองคกรนนจ าเปนตองเกดขน ในอดตทผานมาองคกรตาง ๆ มกจะประสบปญหาจากการ

ท างานรวมกนโดยใชแอปพลเคชนตางๆ ทถกพฒนามาจากหลากหลายแพลตฟอรม หลากหลาย

ระบบปฏบตการ หลากหลายภาษา และถงแมวาองคกรตางๆ สามารถทจะเชอมตอแอปพลเคชนตางๆ เขา

ดวยกนได แตการท าเชนนน ท าใหมคาใชจายทสง และมความ สลบซบซอนมาก ดวยเหตนเอง จงมความ

ตองการมาตรฐานกลางเพอท าใหการตดตอสอสารและท างานรวมกนขององคกรสะดวกและรวดเรวมากขน

มาตรฐานกลางนนคอเวบเซอรวส

เวบเซอรวส (Web Service) [1] เปนระบบซอฟตแวรทออกแบบมาเพอสนบสนนการท างานระหวาง

คอมพวเตอรกบคอมพวเตอรผานระบบเครอขาย โดยใชภาษาเอกซเอมแอล (XML) [2] เปนภาษาทใชในการ

อธบายการเรยกใชซอฟตแวรและการ ตดตอสอสารระห วาง โปรแกรม ตวอยางเชน การบรการในการ

ตรวจสอบราคาหนของตลาดหนหลายๆ ทและอานขาวจากแหลงขาว หลายๆ ทโดยใหเฉพาะขาวของบรษท

ทผขอใชบรการสนใจ ผใหบรการเวบเซอรวสหนงอาจจะเปนผขอบรการเวบเซอรวสอน ยกตวอยางเชน เวบ

เซอรวสทใหบรการขอมลกอนการซอขายหน อาจจะเปนผขอใชบรการของเวบเซอรวสทใหบรการการให

ขาว

ความสามารถของเวบเซอรวสทท าใหโปรแกรมเชอมตอกบโปรแกรมอนไดนนเปนจดเดนของเวบ

เซอรวสทสามารถจะเชอมบรการหลายๆ อนเขาดวยกน มาตรฐานหลายมาตรฐานไดถกน าเสนอขนเพอ

สนบสนนการท าใหเวบเซอรวสตดตอกนไดอยางมประสทธภาพเชน การใชเอกสารภาษา WSDL (Web

Services Description Language) [3] ซงเปนภาษา XML ประเภทหนง โดย WSDL (Web Services

Description Language) เปนภาษาทใชในการ อธบายการเรยกใช งานเวบเซอรวสซงเปรยบเสมอนการอาน

คมอการใชงานโปรแกรมนนเอง แตทวามขอแตกตางกนตรงทไมเฉพาะมนษยเทานนทสามารถเขาใจคมอ

นน โปรแกรมทสามารถอานเอกสารภาษา XML เขาใจสามารถทจะเขาใจเอกสาร WSDL ไดเชนกน ซงจาก

คณสมบตนชวยท าใหการเรยกใชเวบเซอรวสเปนไปไดอยางอตโนมต

Page 2: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 2

นอกจากภาษา XML จะถกใชเปนภาษาในการอธบายการเรยกใชเวบเซอรวสแลว XML ยงเปนภาษาท

ใชในการบนทกขอมลระหวางผใหบรการและผขอใชการบรการเวบเซอรวส รปแบบของขอมล XML ทใช

ในการตดตอนเรยกวา SOAP (Simple Object Access Protocol) [4] เนองจากขอมลทตดตออยในรปแบบ

ภาษา XML ท าใหโปรแกรมตาง ๆ สามารถตดตอกนได ถงแมวาอาจจะถกพฒนาและเรยกใชบน

แพลตฟอรมทแตกตางกน หรอใชภาษาทแตกตางกนในการพฒนา ทงนเนองจาก XML เปนภาษาอกขระ

(text) ซงระบบปฎบตการทกระบบสามารถเขาใจ นอกจากนการท XML มแทก (tag) และรปแบบโครงสราง

ทอธบายขอมลดวยตวมนเอง ท าใหการเขาใจและการจดการ SOAP messages นนสามารถท าไดโดย

โปรแกรมและชวยท าใหการตดตอระหวางผใหบรการและผใชเวบเซอรวสเปนไปไดอยางอตโนมต

เมอผพฒนาเวบเซอรวสตองการทจะประกาศใหคนอนทราบและเรยกใชงานเวบเซอรวสของตนเอง ก

ตองมการประกาศแจงใหผอนทราบ ผตองการใชเวบเซอรวสกยอมตองการทจะทราบวามเวบเซอรวส

ใดบางทเปดใหบรการ ดงนนจงตองมระบบจดการเพอลงทะเบยน คนหา และขอรายละเอยดเกยวกบเวบ

เซอรวสตางๆ ระบบนเรยกวา UDDI Registry [5] โดยสรปแลว UDDI จะท าหนาทใหกบบคคลสองกลมคอ

ผทตองการน าเวบเซอรวสของตนมาเผยแพรและเปดใหบรการ (ตอไปนจะขอ เรยก บคคลกลมนวา

Publisher) UDDI Registry ตองอนญาตให Publisher นนท าการจดการเกยวกบเวบเซอรวสทตนจะเผยแพร

ไมวาจะเพมเขาบญชรายชอ แกไข หรอลบออก นอกจากน UDDI Registry จะตองใหบรการในสวนของผท

จะมาตดตอเพอคนหาและขอขอมลเกยวกบเวบเซอรวส (ตอไปนจะขอเรยก บคคลกลมน วา Consumer)

UDDI Registry ตองใหบรการในการสบคนขอมลและใหรายละเอยดของเวบเซอรวสตางๆ ท Publisher ได

น ามาเผยแพรไว จากนนกจะเปนหนาทของ Consumer เองทตดสนใจเลอกใชเซอรวสและท าการตดตอไป

ยง Publisher ตามขอมลท Publisher ไดเผยแพรไว ในปจจบนม UDDI Registry อยหลายแหง เชน UDDI

Registry ของ Microsoft [6] และ UDDI Registry ของ SAP [7].

2. ปญหาและเหตจงใจ (Problems and Motivations) ในขณะปจจบน พบวายงไมม UDDI Registry ทพฒนาโดยคนไทยหรอทรวบรวมเวบเซอรวสทงหมด

ทพฒนาโดยคนไทย ถาหากวาประเทศไทยม UDDI Registry ทลงทะเบยนเฉพาะเวบเซอรวสทพฒนาโดย

คนไทยกจะท าใหการคนหาเวบเซอรวสของบรษทและองคกรตาง ๆ ภายในประเทศไทยเปนไปไดอยาง

สะดวกและรวดเรวมากยงขน ซง UDDI Registry นนสามารถเปรยบไดกบ สมดโทรศพทของรานคา

บรษทและองคกรตาง ๆ แตทแตกตางจากสมดโทรศพททวไปนนกคอ UDDI Registry จะมเฉพาะรายชอ

Page 3: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 3

ของรานคา บรษทและองคกรทเปดใหบรการเวบเซอรวส ถาหากวาประเทศไทยม UDDI Registry ท

รวบรวม เวบเซอรวส ทพฒนาโดยคนไทยหรอ เพอคนไทย นน กจะท าให การพฒนา เวบเซอรวสเกดขนได

อยางรวดเรวมากยงขน เพราะจะท าใหเกดความรวมมอกนมากขนระหวาง บคลากรทมความรอยางแทจรง

และความเชยวชาญในการพฒนาเวบเซอรวส อกทง เปนการสรางโครงสรางพนฐานเพอเอออ านวยในการ

พฒนา เผยแพร และคนหาเวบเซอรวส ดงนนการท าวจยและพฒนา UDDI Registry ทเปดใหบรการฟรกบ

คนไทยจงมความจ าเปนอยางยงและจะตองท าโดยเรงดวน

3. หลกการและเหตผล (Concepts) เมอ Publisher (Service Provider ในรปท 3.1) ตองการเผยแพรเวบเซอรวส หรอ Consumer (Service

Requester ในรปท 3.1) ตองการคนหาวามเวบเซอรวสใดบางทเปดใหบรการ ซงหากไมมบรการลงทะเบยน

เวบเซอรวส หรอบรการคนหาเวบเซอรวสแลว เปนไปไดวาการพฒนาทสมบรณจะไมเกดขน แนวคดนจง

ไดเกดตวกลางใหบรการในการลงทะเบยน และคนหาเวบเซอรวสขน หรอเรยกวา UDDI Registry (Service

Broker ในรปท 3.1) ซงพฒนาขนไดจากการอางองมาตรฐาน UDDI [8] ทจะกลาวถงตอไป

ServiceProvider

ServiceBroker

ServiceRequester

Regis

ter

Serv

ice

Invoke Service

Request S

erv

ice

ServiceProvider

ServiceBroker

ServiceRequester

Regis

ter

Serv

ice

Invoke Service

Request S

erv

ice

รปท 3.1 สถาปตยกรรมของ SOA (Service-Oriented Architecture)

จากรปท 3.1 เมอมผใหบรการทสามารถใหบรการทงการลงทะเบยนเวบเซอรวส และคนหาเวบ

เซอรวสแลว ท าใหวงจรการพฒนาเวบเซอรวสเกดขน กลาวคอ เมอ Publisher ตองการใหบรการเวบเซอรวส

หรอตองการประกาศใหผอนทราบเกยวกบเวบเซอรวสของตน (Service Provider) ตองท าการลงทะเบยน

Page 4: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 4

เวบเซอรวสไวท UDDI Registry (Service Broker) เพอให Consumer ทตองการใชบรการเวบเซอรวส

(Service Requester) ท าการคนหาเวบเซอรวสทตองการ หลงจาก Consumer ทตองการใชบรการเวบเซอรวส

ทราบวาใครคอ Publisher เวบเซอรวสนน ขนตอนสดทายคอ ผพฒนาทงสองฝายท าขอตกลงเพอทจะใชเวบ

เซอรวสนนเพอการแลกเปลยนขอมลซงกนและกน

UDDI (Universal Description, Discovery, and Integration) เปนมาตรฐานทมไวใชส าหรบคนหาเวบ

เซอรวส ซงกลม http://www.uddi.org เปนกลมทเสนอมาตรฐานน และก าหนดให UDDI เปนมาตรฐาน

ส าหรบการท างานขามแพลตฟอรมของ B2B (Business to Business Interoperability)

เมอมผทตองการลงทะเบยนเวบเซอรวส ในครงแรกจะตองท าการลงทะเบยนเกยวกบชอองคกรผ

ใหบรการ, ค าอธบายขอรายละเอยดของเวบเซอรวส, ขอมลการตดตอ และหมายเลขอตสาหกรรม จากนน จง

จะท าการลงทะเบยนเวบเซอรวสได ซงลงทะเบยนโดยระบ URL ของ WSDL และค าอธบายรายละเอยดเวบ

เซอรวสนนๆ

UDDI Registry จะใหขอมลส าหรบผทตองการคนหาเวบเซอรวส 3 ลกษณะ ซงเปรยบเทยบไดกบ

สมดโทรศพท ดงน

1. สมดหนาขาว (White Page) ‟ เปนขอมลเกยวกบตวบรษทและขอมลผประกาศ ไดแก ชอบรษท,

ค าอธบายรายละเอยด ขอมลการตดตอ และหมายเลขอตสาหกรรม

2. สมดหนาเหลอง (Yellow Page) ‟ เปนขอมลเกยวกบการจดหมวดหมของอตสาหกรรมและ

บรการ

3. สมดหนาเขยว (Green Page) ‟ เปนขอมลทางดานเทคนคตางๆ

4. เปาหมายโครงการ (Goal) เพอเปนการสรางระบบลงทะเบยนเวบเซอรวส ซงใชในการรบการลงทะเบยนเวบเซอรวส ทพฒนา

โดยคนไทยหรอใชโดยคนไทย จะเปนการกระตนและสนบสนนในนกพฒนา ไอทชาวไทยใหไดใชประโยชนจากเทคโนโลยเวบเซอรวส

Page 5: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 5

5. ขอบเขตการพฒนา (Scopes) สามารถพฒนา ระบบทะเบยนเวบเซอรวสสาธารณะโดยมขอก าหนดตาง ๆ ทระบไวในขอ 6 การ

พฒนาระบบนอางองมาตรฐาน UDDI Specification version 2 ของ http://uddi.org/ ในปจจบนไดมมาตรฐานของ UDDI Specification version 3 ออกมา แตเทาททราบ ยงไมมซอฟตแวรโอเพนซอรส API ทสนบสนนการพฒนาระบบทะเบยนเวบเซอรวสตามทมาตรา UDDI Specification version 3 ก าหนด

6. รายละเอยดของขอก าหนดระบบลงทะเบยนเวบเซอรวส (UDDI Registry Specification) ระบบลงทะเบยนเวบเซอรวสสาธารณะ ประกอบดวย 4 ระบบหลกๆ ไดแก

1. ระบบบรการการลงทะเบยนและปรบปรงเวบเซอรวส (รายละเอยดอยในขอ 6.2) 2. ระบบบรการการสบคนเวบเซอรวส (รายละเอยดอยในขอ 6.3) 3. ระบบจดการบญชรายชอกลมผใช (รายละเอยดอยในหวขอ 6.4) 4. ระบบจดเกบสถตการใชงาน (รายละเอยดอยในหวขอ 6.5)

ซงระบบเหลานไดอ านวยความสะดวกใหกบผใชในการบนทกและสบคนเวบเซอรวสโดยผใชสามารถท าการเลอกแสดงขอมลทเกยวของประกอบกบการบนทกและสบคน เชน ขอมลกลมของบรษทผลงทะเบยน และขอมลกลมของเวบเซอรวส เปนตน นอกจากนยงรองรบการใชงานใหกบผใชใน 2 กลมดวยกนคอ

1. กลมผใชทวไป 2. กลมผใชทมความรทางดานเทคนค

6.1 บรการผานทางอนเทอรเนตในรปแบบของเวบแอปพลเคชน โดยผใชสามารถใชงานไดงายและรวดเรว (Service via Rich Internet Web Application)

ระบบลงทะเบยนเวบเซอรวสสาธารณะนจะม หนาเวบเพจซงเปนหนาทเขาถง การใชงานหลกของระบบ ผใชงานสามารถทจะคนหาเวบเซอรวสไดจากหนา เวบเพจน ในหนาแรกระบบจะแสดง endpoint ส าหรบผทตองการเรยกใช uddi registry ผานเวบเซอรวสโปรโตคอล นอกจากนกจะมลงกไปยงสวนการใชงานอนๆ ของระบบ ซงมขนตอนการใชงานแตละสวนดงน

Page 6: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 6

รปท 6.1 สวนตดตอผใชของระบบ

การลงทะเบยนผใหบรการเวบเซอรวส กอนทจะน าเวบเซอรวสของมาลงทะเบยน ผใชงานระบบจะตองละทะเบยนผใชและผใหบรการเวบเซอรวสเสยกอน ระบบจะน าขอมลของผใชไปสราง BusinessEntity โดยรายละเอยดทกรอกจะแสดงในรปท 6.2 จะมขอมลเกยวกบ ชอบรษท , รายละเอยดของบรษท, เวบไซต, รหสอตสาหกรรม เปนตน

รปท 6.2 รายละเอยดของขอมลส าหรบการสราง Publisher

„ การลงทะเบยนเวบเซอรวส หลงจากผใชงานลงทะเบยนผใหบรการเวบเซอรวสแลว ผใชงานระบบ

สามารถลงทะเบยนเวบเซอรวสไดโดยการกรอกทอยของเอกสาร WSDL หลงจากนนระบบจะไปวเคราะห

เอกสารWSDL และสรางขอมลของ UDDI เองโดยอตโนมต โดยแสดงรายละเอยดตางๆ แกผใชงานดงรปท

6.3 ซงผใชงานสามารถทจะกรอกขอมลรายละเอยดอนๆ เพมเตมไดจากหนาเวบเพจนน กอนทจะยนยนการ

ลงทะเบยนเวบเซอรวส

Page 7: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 7

รปท 6.3 สวนขอมลของ UDDI ทไดจากการวเคราะหเอกสาร WSDL

การคนหาเวบเซอรวส จะมวธการคนหาสองรปแบบคอ (1) แบบงาย ผใชสามารถระบบค าส าคญ

ส าหรบการคนหา และระบประเภทในการคนหาไดแก Service, Business หรอ tModel ซงระบบจะไปคนหา

เวบเซอรวสตามค าส าคญและประเภททผใชก าหนด (2) แบบขนสง ผใชจะตองมความรทางดานเทคนคและ

โครงสรางขอมลของ UDDI โดยผใชจะตองระบบขอมลตางๆ ดงรปท 6.4 ระบบจะไปคนหาเวบเซอรวส

และแสดงผลลพธและรายละเอยดของเวบเซอรวส

รปท 6.4 สวนการคนหาแบบขนสง

นอกจากนระบบจะมการใช AJAX เขามาอาศยเวบเซอรวสจากภายนอกมาชวยในการแสดงค าส าคญทเคย

ถกคนหาในระบบ ตลอดจนมการวเคราะหค าทใกลเคยงกน และจะอาศย Category bag เขามาชวยในการจด

กลม

โดยทในสวนของการใชงานใหงายนนจะใชการพฒนาเวบสไตล Web 2.0 และการใชเทคโนโลย AJAX เขามาชวย ซงจะท าใหผใชเวบเพจรสกวาเวบเพจงายตอการใชงายและมสวนรวมในการพฒนาเนอหา

Page 8: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 8

ในเวบเพจ รายละเอยดของเวบสไตลแบบ Web 2.0 และเทคโนโลย AJAX จะขออธบายในรายละเอยดในหวขอ 7

6.2 บรการการลงทะเบยน และปรบปรงเวบเซอรวส โดยผเผยแพรตองท าการลงทะเบยนผใชกอนทกครง ตลอดจนมการตรวจสอบความถกตองของเวบเซอรวสนน ๆ กอนน าขอมลเวบเซอรวสเขาสระบบ (Services for Web Services Publishers) 6.2.1 การลงทะเบยนผตองการเผยแพรเวบเซอรวส (Web Services Registration) การลงทะเบยนเวบเซอรวส ผใชงานสามารถลงทะเบยนเปนผเผยแพรหรอประกาศเวบเซอรวส (publisher) บนระบบเวบแอปพลเคชนเพอลงทะเบยนกบระบบลงทะเบยนเวบเซอรวสซงผใชงานสามารถเลอกใชเวบเซอรวสผานทาง หนาเวบแอปพลเคชน หรอทางเวบเซอรวสโปรโตคอลได โดยระบบ AuthToken Key จะมความแตกตางกนเลกนอย 6.2.1.1 ผานทางเวบแอปพลเคชน (Via Web Application) การใชงานผานหนาเวบแอปพลเคชนจะเปนการขอรหสผาน (key) ในระยะสนซงสามารถใชไดจนกวาSession บนเบราวเซอรจะถกท าลาย 6.2.1.2 ผานทางโปรโตคอลเวบเซอรวส (Via Web Services Protocol) การใชงานผานโปรโตคอลนนจะเปนการขอ รหสผาน ในระยะยาวซงมอายจนกวาผใชจะคนรหสผาน โดยท การลงทะเบยนเวบเซอรวสผานโปรโตคอลเวบเซอรวส ผใชงานจะตองท าการลงทะเบยน เปนผประกาศเวบเซอรวส (publisher) บนระบบเวบแอปพลเคชนเสยกอน และท าการขอ Authentication Token Session เพอน า AuthToken Key มาใชในการลงทะเบยนเวบเซอรวสกบระบบลงทะเบยนเวบเซอรวสตอไป 6.2.2 การตรวจสอบความถกตองของเวบเซอรวส (Web Services Validation) ระบบลงทะเบยนเวบเซอรวสจะมสวนของการตรวจสอบความถกตองของเวบเซอรวส โดยทระบบจะท าการอานเอกสารวสเดลของเวบเซอรวสแลวตรวจสอบความถกตองของแตละโอเปอเรชนของเวบเซอรวสนน

Page 9: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 9

6.2.2.1 ผานทางเวบแอปพลเคชน (Via Web Application) การใชงานผานหนาเวบแอปพลเคชนจะมขนตอนตอไปน 6.2.2.1.1 ผใชระบชอ URL ของเอกสารวสเดลของเวบเซอรวสทตองการตรวจสอบ

รปท 6.5 การระบ URL ของเอกสารวสเดลของเวบเซอรวส 6.2.2.1.2 ระบบจะท าการแสดงรายชอของโอเปอเรชนทอยในเวบเซอรวส ใหผใชเลอกโอเปอเรชนทตองการจะทดสอบ

รปท 6.6 การระบโอเปอเรชนของเวบเซอรวส

6.2.2.1.3 ระบบจะท าการแสดงพารามเตอรแตละตวของโอเปอเรชน ใหผใชระบคาตาง ๆ ของพารามเตอร

Page 10: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 10

รปท 6.7 การระบพารามเตอรของโอเปอเรชน

6.2.2.1.4 ระบบจะแสดงผลลพธของโอเปอเรชน เพอใหผใชตรวจสอบวาถกตองหรอไม ถาถกตองกจะท าการตรวจสอบโอเปอเรชนตอไปจนครบ ถาไมถกตอง ผพฒนาเวบเซอรวสจะตองน าเวบเซอรวสนนไปแกไขใหม

รปท 6.8 ผลลพธจากการเรยกโอเปอเรชน

ในการตรวจสอบความถกตองของเวบเซอรวส ระบบจะใชโปรแกรมเอกซเอมแอลพาสเซอรในการอานเอกสารวสเดล และเกบขอมลของเวบเซอรวสลงไปในตารางตาง ๆ ในฐานขอมล เพอทระบบจะไดไมตองเสยเวลาอานโปรแกรมทกครงทมการรองขอการตรวจสอบเวบเซอรวสน โดยทตารางทเกยวของมอยดงน ตาราง webservice_profile (ตารางท 10.1) , ws_operation (ตารางท 10.2), และ ws_operation_parameter (ตารางท 10.3) ซงตารางจะอยในสวนของหวขอ 10

Page 11: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 11

6.2.2.2 ผานทางโปรโตคอลเวบเซอรวส (Via Web Services Protocol) การใชงานผานทางโปรโตคอลเวบเซอรวสนนจะตองท าผานการเรยกใชชดโอเปอเรชนทขนตนดวย validateWS_ ของเวบเซอรวสของระบบลงทะเบยนเวบเซอรวส

โอเปอเรชน validateWS_getOp o อนพต

ชอ URL ของเอกสารวสเดลของเวบเซอรวสทตองการตรวจสอบ o เอาตพต

รายชอของโอเปอเรชนในเวบเซอรวส โอเปอเรชน validateWS_getInputParameters

o อนพต ชอ URL ของเอกสารวสเดลของเวบเซอรวสทตองการตรวจสอบ ชอของโอเปอเรชนทตองการตรวจสอบ

o เอาตพต รายชอของอนพตพารามเตอรของโอเปอเรชนทตองการตรวจสอบ

โอเปอเรชน validateWS_getResult o อนพต

ชอ URL ของเอกสารวสเดลของเวบเซอรวสทตองการตรวจสอบ ชอของโอเปอเรชนทตองการตรวจสอบ ชอและคาของอนพตพารามเตอรแตละตว

o เอาตพต ผลลพธของโอเปอเรชน

6.2.3 การลงทะเบยน แกไขและลบเวบเซอรวส (Web Services Registry Modification and Deletion) ในการลงทะเบยนเวบเซอรวสนน ระบบลงทะเบยนเวบเซอรวสจะมพนทจ านวนหนงส าหรบผลงทะเบยนเวบเซอรวส โดยทผประกาศเวบเซอรวสแตละคนจะตองลงประกาศเวบเซอรวสทงหมดไมเกนพนททงหมดน อกทงเวบเซอรวสทจะลงทะเบยนจะตองผานการตรวจสอบความถกตองของเวบเซอรวส

ระบบสามารถ อ านวยความสะดวกใหกบผลงทะเบยนเวบเซอรวสโดยสามารถลงทะเบยนเวบเซอรวสโดยการสงเอกสารวสเดลอยางเดยว โดยทระบบจะตรวจสอบความถกตองของเวบเซอรวสจากเอกสารวสเดลทสงมา ระบบจะตรวจสอบความถกตองของเวบเซอรวสไดจากการพฒนาโปรแกรมทเรยกใชโอเปอเรชนทในในการตรวจสอบความถกตองผานทางโปรโตคอลเวบเซอรวสตามทระบไวในขอ

Page 12: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 12

6.2.2.2 โดยทโปรแกรมนจะท าการตรวจสอบแตละโอเปอเรชนโดยทอนพตพารามเตอรแตละตวจะถกก าหนดคาแบบสมโดยทคานจะเปนคาทอยในชนดของขอมลตามทระบไวในเอกสารวสเดล

กอนทผลงทะเบยนเวบเซอรวสจะลงทะเบยนเวบเซอรวส จะตองสมครเปนสมาชกของระบบ และลงทะเบยนบรษทหรอองคกรของตนกอน 6.2.3.1 ผานทางเวบแอปพลเคชน (Via Web Application) การลงทะเบยนสมาชกใหม (New Member Registration)

1. ผทตองการลงทะเบยนเวบเซอรวสใหมจะตองสมครสมาชกกบระบบทะเบยนเวบเซอรวสกอนโดยคลกเลอก Register จากหนาหลก

รปท 6.9 สวนของการลอกอนของ Publisher

2. กรอกรายละเอยดเกยวกบ Username, Password และรายละเอยดอนๆ เกยวกบผลงทะเบยน

รปท 6.10 ฟอรมท Publisher จะตองกรอกในการสมครสมาชก

3. หากตองการแกไขขอมล คลกเลอก My Profile

รปท 6.11 การคลกท My Profile เพอแกไขขอมลสมาชก

Page 13: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 13

4. ขนตอไปโปรแกรมจะใหสรางทะเบยนของบรษทของผลงทะเบยน จากนนใหผลงทะเบยนกรอกขอมลเหลาน o ชอของบรษท o รายละเอยดของบรษท o เวบไซต (ถาม) o Identifier Bag o Category Bag

5. คลกเลอก Submit หากกรอกรายละเอยดครบแลว

รปท 6.12 หนาสวนรายละเอยดของ BusinessEntity

การเขาสระบบ (Log in)

1. ทเมนหลก กรอก Username และ Password และกดรปกญแจ เพอตรวจสอบ

รปท 6.13 หนาสวนของการลอกอนเปน Publisher

Page 14: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 14

2. ถารหสถกตองจะปรากฏหนา บรษทของผลงทะเบยน (หรอลงทะเบยนบรษทใหมหากผลงทะเบยนยงไมไดลงทะเบยนบรษทของตน)

รปท 6.14 หนาแสดงรายละเอยดของบรษท (BusinessEntity)

3. เมอท าธระเสรจใหท าการ Log out ออกจากระบบทกครง โดยคลกเลอก Logout

รปท 6.15 การคลก Logout เพอออกจากระบบ

การลงทะเบยนเวบเซอรวสใหม (New Web Services Registration)

1. ท าการสมครสมาชกหรอลอกนเขาสระบบและท าการลงทะเบยนบรษทกอน 2. ทหนาบรษทของคณคลกเลอก Add Service จากนนจะปรากฏชองเพอกรอก WSDL URL ใหใส

URL ของ WSDL ลงในชองดงกลาวและกด Add

Page 15: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 15

รปท 6.16 การลงทะเบยนเวบเซอรวสโดยการคลกท Add Service

3. โปรแกรมจะอานคาจากไฟล WSDL แลวสราง Service ใหกบผลงทะเบยน จากนนใหผลงทะเบยนกรอกรายละเอยดเพมเตมและกด Submit เพอยนยนการ ลงทะเบยนเวบเซอรวส

รปท 6.17 รายละเอยดของเวบเซอรวสท Publisher ตองกรอกในการลงทะเบยนเวบเซอรวส

กอนทผประกาศเวบเซอรวสจะแกไขหรอลบเวบเซอรวสของตนเองทลงทะเบยนแลว ผประกาศเวบเซอรวสจะตองเขาลอกอนผานระบบและใหระบบยนยนวาผประกาศเวบเซอรวสเปนผลงทะเบยนเวบเซอรวสทตนเองตองการทจะแกไข ในการแกไขเวบเซอรวสทลงทะเบยนแลว ประกาศเวบเซอรวสจะตองเขาลอกอนผานระบบ จากนนจงท าการแกไขรายละเอยดของเวบเซอรวส

ในการลบเวบเซอรวสทลงทะเบยนแลว ผประกาศเวบเซอรวสจะตองมการยนยนรหสผานและยนยนวาจะลบเวบเซอรวส

Page 16: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 16

การแกไขขอมลทะเบยนเวบเซอรวส (Web Services Registry Modification)

1. ท าการสมครสมาชกหรอ Log in เขาสระบบและท าการลงทะเบยนบรษทกอน 2. ทหนาบรษทของผลงทะเบยน ใหคลกเลอก Service ทจะท าการแกไข 3. คลกเลอก Edit Service เพอสหนาแกไข

รปท 6.18 การคลกท Edit Service เพอแกไขเวบเซอรวส

4. ใหผลงทะเบยนกรอกรายละเอยดเพมเตมและกด Submit เพอยนยนการ การแกไข Service

การยกเลกการลงทะเบยนเวบเซอรวส (Web Services Registry Cancellation)

1. ท าการสมครสมาชกหรอลอกอน เขาสระบบและท าการลงทะเบยนบรษทกอน 2. ทหนาบรษทของผลงทะเบยน ใหคลกเลอกเซอรวสทตองการจะยกเลกการลงทะเบยน 3. คลกเลอก Delete Service จะปรากฏหนาตางเพอยนยนการลบใหกด Confirm

รปท 6.19 การคลกท Delete Service เพอยกเลกการลงทะเบยนเซอรวส

รปท 6.20 หนาตางแสดงขนมาเพอใหผลงทะเบยนยนยนหรอยกเลกการลงทะเบยนเซอรวส

การยกเลกการลงทะเบยนบรษท (Business Registry Cancellation)

1. ท าการสมครสมาชกหรอลอกอนเขาสระบบและท าการลงทะเบยนบรษทกอน 2. ทหนาบรษทของคณคลกเลอก Delete Business

รปท 6.21 การคลกท Delete Service เพอยกเลกการลงทะเบยนบรษท

Page 17: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 17

3. จะปรากฏหนาตางเพอยนยนการลบใหกรอก Password ของคณอกครงและกด Confirm การลบขอมล บรษทจะท าใหขอมล Service หายไปดวยทงหมด

รปท 6.22 หนาตางแสดงขนมาเพอใหผลงทะเบยนยนยนหรอยกเลกการลงทะเบยนบรษท

6.2.3.2 ผานทางโปรโตคอลเวบเซอรวส (Via Web Services Protocol) ในการตดตอกบระบบทะเบยนเวบเซอรวสผานทางโปรโตคอลเวบเซอรวส ผเผยแพรเวบเซอรวส (publisher) สามารถเรยกใชฟงกชนเหลานตามทก าหนดไวในมาตรฐาน UDDI Specification Model version 2 1) ฟงกชนในการบนทกขอมล: save_business, save_service, save_binding, และ save_tModel 2) ฟงกชนในการลบขอมล: delete_business, delete_service, delete_binding, และ delete_tModel 3) ฟงกชนในการจดการรกษาความปลอดภย: get_authToken และ discard_authToken 6.3 บรการการสบคนเวบเซอรวสตามขอมลใน UDDI Data Model ดวย Inquiry API ทก าหนดไวใน UDDI Specification version 2 โดยการประมวลทง Single และ Multiple Inquiry ตามค าตรงกนและค าสอดคลองดงน (Services for Web Services Inquiry) 6.3.1 โครงสรางของ UDDI Data Model ใน UDDI Specification version 2 (UDDI Data Model based on UDDI Specification version 2)

รปท 6.23 โครงสรางของ UDDI Data Model

Page 18: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 18

BusinessEntity

โครงสรางระดบบน เปนตวแทนของบรษททตองการประกาศเผยแพร Service ของตน

BusinessEntity จะมขอมลเกยวกบตวบรษท ตวผผลต (รายละเอยด, หมวดหม, และหมายเลขอตสาหกรรม)

และขอมลเกยวกบ BusinessService ทตนใหบรการ

BusinessService

โครงสรางซงเปนสวนหนงของ BusinessEntity หนง BusinessEntity อาจจะมหลาย Business

Service กได BusinessService จะเกบรายละเอยดเกยวกบตว Service และหมวดหมของตว Service รวมถง

BindingTemplate

BingingTemplate

เปนขอมลทอยภาย BusinessService มหนาทเชอมโยงไปยง TModel ซงชวยใหท าการคนเรวขน

TModel

ถอเปนหวใจส าคญของการคนหาบน UDDI เพราะ TModel จะมหนาทเปน index ของ UDDI โดย

จะมนยามประเภทของ Service และอางองไปยงเอกสารวสเดล (WSDL: Web Service Definition Language)

อกดวย

PublisherAssertion

เปน Reference Key ตวหนงทมหนาทบอกความสมพนธระหวางสอง BusinessEntity เพราะอาจจะ

เปน บรษทแม-ลกกน(Parent-Child) หรอ พนธมตรกน(Peer2Peer) หรออนๆ

Page 19: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 19

6.3.2 ความสมพนธและการเชอมโยงระหวางเอกสารวสเดล และโครงสรางขอมลตามมาตรฐาน UDDI

(Relation and mapping between WSDL and UDDI Data structure)

เอกสาร WSDL จะประกอบดวยสวนทส าคญ 2 สวนคอ สวน WSDL Service Interface และ WSDL

Service Implementation โดยเราสามารถทจะเชอ มโยงขอมลจากเอกสาร WSDL มาเปนขอมลทจะใช

publish service ได

WSDL Service Interface นนจะใหรายละเอยดเกยวกบ TModel ทจะถกสรางขนเพออางถง Service

นน อกสวนหนงคอขอมลในสวนของ BusinessService และ BindingTemplate สามารถนนเกดจากการน า

ขอมลจาก WSDL Service Implementation

รปท 6.24 โครงสรางของ WSDL สวนทเปน Interface และ Implementation

Page 20: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 20

รปท 6.25 การเชอมโยงระหวางเอกสาร WSDL กบ UDDI Data Structure

6.3.3 บรการการสบคนเวบเซอรวส (Web Services Inquiry) 6.3.3.1 ผานทางเวบแอปพลเคชน (Via Web Application) การคนหาแบบงายส าหรบคนทวไป (Search Services for General Users)

1. หนาหลกในชองคนหาดวนใหผคนหากรอกชอ Business หรอ Service ตองการคนหา จากนนเลอกประเภททตองการคนหา จากนนคลกเลอกลกศร ตวอยางเชน หากตองการคนหาเวบเซอรวสทประกาศโดยองคกรทชอ Zexious ใหพมพ Zexious แลวเลอก Type เปน Business ดงแสดงทรป

รปท 6.26 ท าการคนหาเวบเซอรวสแบบธรรมดา โดยหาจากบรษททเผยแพร

Page 21: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 21

2. โปรแกรมจะแสดงผลลพธดงแสดงในรป จากนนผคนหาเวบเซอรวสสามารถดรายละเอยดของเวบเซอรวสไดจากการคลกทชอของเซอรวส

รปท 6.27 สามารถคลกดเวบเซอรวสทเปดใหบรการ

3. เมอคลกทชอของเวบเซอรวสแลว จะมหนาแสดงรายละเอยดของเวบเซอรวสนน ซงรายละเอยดน

มขอมลของ URL ของเอกสารวสเดลของเวบเซอรวส ดงแสดงในรปท 6.28

รปท 6.28 ทอยของเอกสาร WSDL

การคนหาแบบขนสงส าหรบผเชยวชาญมาตรฐาน UDDI (Advanced Search Services for UDDI Experts)

การคนหาแบบขนสงนจะสนบสนนการคนหา Identifer Bag, Category Bag และ TModel Bag นอกจากนยงสนบสนนการคนหาแบบ Multiple Inquiry โดยทผคนหาสามารถระบค าส าคญ (key) หลายตวและสามารถระบวาผลลพธของการคนหาจะไดจากการเจอค าส าคญใดส าคญหนง หรอ เจอค าส าคญทงหมด (andLikeKey, orAllKey, orLikeKey, andAllKey) นอกจากนผคนหาสามารถคนหาโดยเลอกวาจะใหคนหาค าส าคญแบบค าตรงกน (Exact Match) และค าสอดคลอง (Approximate Match)

จากหนาหลกของเวบระบบทะเบยนเวบเซอรวส ใหคลก Advanced Search ดงแสดงตามรปท 6.29

Page 22: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 22

รปท 6.29 ท าการคนหาเวบเซอรวสขนสง

หลงจากนนคลก Advance Search แลว คลก BusinessEntity จะปรากฎรายละเอยดในการคนหาตาม BusinessEntity เพอใหผคนหาไดคนหาและจดเรยงขอมลตามทตองการ ดงแสดงในรปท 6.30 โดยท าการเพมเตมในสวนของการเรยกด Identifier และ Category ไดจงไมจ าเปนตองกรอก tModelScheme, keyName และ keyValue เอง

รปท 6.30 หนาตางคนหาเวบเซอรวส ส าหรบผทเชยวชาญมาตรฐาน UDDI

Page 23: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 23

รปท 6.31 ผลลพธการคนหาเวบเซอรวส ส าหรบผทเชยวชาญมาตรฐาน UDDI

6.3.3.2 ผานโปรโตคอลเวบเซอรวส (Via Web Services Protocol)

ในการตดตอกบระบบทะเบยนเวบเซอรวสผานทางโปรโตคอลเวบเซอรวส ผคนหาเวบเซอรวส (inquirer) สามารถเรยกใชฟงกชนเหลานตามทก าหนดไวในมาตรฐาน UDDI Specification Model version 2 1) ฟงกชนในการคนหาขอมล: find_business, find_service, find_binding, และ find_tModel 2) ฟงกชนในการดรายละเอยดของขอมล: get_businessDetail, get_serviceDetail, get_bindingDetail, และ get_tModelDetail 3) ฟงกชนในการตรวจสอบประเภท: validate_categorization

6.4 จดการขอมลบญชรายชอกลมผใชซงแบงเปน 3 กลมไดแก ผดแลระบบ (Administrator) ผลงทะเบยนเวบเซอรวส (Publisher) และผคนหาเวบเซอรวส (Inquirer) (User Groups Management) 6.4.1 ผดแลระบบ (Administrator) มสทธทจะด าเนนการดงน

เพม ลบ และแกไข ขอมลสมาชก ผดแลระบบจะใชหนาตาอนเตอรเฟสของแอปพลเคชน เพอลงทะเบยนสมาชกใหมดงน

Page 24: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 24

รปท 6.32 หนาตางลงทะเบยน บญชรายชอใหม ซงสามารถใชโดยผดแลระบบ

หากตองการทจะแกไขหรอลบสมาชก จะตองมการคนหาสมาชกคนนนกอน โดยสามารถทจะคนหาจากชอ หรอ/และ อเมลแอดเดรส

รปท 6.33 คนหาผใชงานตามชอทตองการ

จากนนระบบจะแสดงสมาชกทมขอมลตามทระบไวในการคนหาและใหเลอกวาจะแกไขหรอลบขอมลสมาชกทานนน

รปท 6.34 สามารถสงแกไข ขอมลผใชงาน

Page 25: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 25

ถาหากวาผใชคลกแกไข ระบบกจะแสดงขอมลเกาทมอยและใหผใชแกไขขอมล

รปท 6.35 หนาตางรายละเอยดขอมลสวนตวผใช เมอกดตกลงจะท าการแกขอมล

ผใชสามารถคลกลบดงแสดงในรปท 6.36

รปท 6.36 สามารถสงลบ ผใชงานออกจากระบบได

ระบบจะแสดงหนาตางเพอยนยนวาตองการลบสมาชกหรอไม

รปท 6.37 หนาตางส าหรบยนยนการลบผใชงานออกจากระบบ

ในสวนของการจดการขอมลสมาชก จะใชตาราง user_profile (ตารางท 10.4)

Page 26: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 26

เพม ลบ และแกไข ขอมลทวไปของเวบเซอรวส ผดแลระบบจะสามารถเพม ลบ และแกไขขอมลเวบเซอรวสตามมาตรฐาน UDDI Registry ไดผานการลอกอนเปนผเผยแพร (publisher) สวนการเพมขอมลทวไปของเวบเซอรวสนนสามารถท าผานอนเตอรเฟสของเวบแอปพลเคชน

รปท 6.38 หนาตางลงทะเบยน เวบเซอรวส ซงสามารถใชโดยผดแลระบบ

หากตองการทจะแกไขหรอลบขอมลทวไปของเวบเซอรวส จะตองมการคนหาเวบเซอรวสนนกอน โดยสามารถทจะคนหาจากชอ (Names) หรอ แทก (Tags) หรอ กลม (Category)

รปท 6.39 สามารถคนหาเวบเซอรวสจากแทก

Page 27: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 27

รปท 6.40 สามารถสงแกไข ขอมลเวบเซอรวส

ถาหากวาผใชคลกแกไข ระบบกจะแสดงขอมลเกาทมอยและใหผใชแกไขขอมล

รปท 6.41 หนาตางรายละเอยดขอมลเวบเซอรวส เมอกดตกลงจะท าการแกขอมล

ผใชสามารถลบขอมลทวไปของเวบเซอรวสดงแสดงในรปท 6.42

รปท 6.42 สามารถสงลบ เวบเซอรวสออกจากระบบได

ระบบจะแสดงหนาตางเพอยนยนวาตองการลบขอมลทวไปของเวบเซอรวสหรอไม

Page 28: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 28

รปท 6.43 หนาตางส าหรบยนยนการลบเวบเซอรวสออกจากระบบ

ในการบนทกเพม แกไข และลบขอมลทวไปของเวบเซอรวสนนจะใชตาราง webservice_profile เพม ลบ และแกไข รายชอกลมของเวบเซอรวส

ในการออกแบบระบบในเบองตนจะมกลมของเวบเซอรวสตาง ๆ ตอไปน ซงสามารถเพมเตม แกไข และลบไดในภายหลง o Public information (oil information, tax information) o E-commerce (shopping, bidding) o Tourism (photo, maps, hotel, tour) o Scientific (genome data) o Agriculture (cattle tracking) o Education (online resources) o Transportation (maps, logistics)

รปท 6.44 หนาตางเพมกลมของเวบเซอรวส ซงสามารถใชโดยผดแลระบบ

ในการแกไขหรอลบกลมของเวบเซอรวส จะตองใหระบบแสดงรายชอกลมของเวบเซอรวสทมอยในปจจบน

Page 29: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 29

รปท 6.45 สามารถสงแกไข กลมของเวบเซอรวส

ถาหากวาผใชคลกแกไข ระบบกจะแสดงขอมลเกาทมอยและใหผใชแกไขขอมล

รปท 6.46 หนาตางรายละเอยดกลมของเวบเซอรวส เมอกดตกลงจะท าการแกขอมล

ผใชสามารถลบกลมของเวบเซอรวสดงแสดงในรปท 6.47

รปท 6.47 สามารถสงลบ กลมของเวบเซอรวสออกจากระบบได

ระบบจะแสดงหนาตางเพอยนยนวาตองการลบกลมของเวบเซอรวสดงกลาวหรอไม

Page 30: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 30

รปท 6.48 หนาตางส าหรบยนยนการลบกลมของเวบเซอรวสออกจากระบบ

ตรวจสอบความถกตองของขอมลเวบเซอรวส อนเตอรเฟสและตารางในฐานขอมลทใชการตรวจสอบความถกตองของเวบเซอรวสไดแสดงไวในหวขอ 6.2.2

ดสถตการใชงานไดทกอยาง อนเตอรเฟสและตารางในฐานขอมลทใชการตรวจสอบความถกตองของเวบเซอรวสไดแสดงไวในหวขอตามทระบไวในขอ 6.5

6.4.2 ผลงทะเบยนเวบเซอรวส (Web Services Publisher) มสทธทจะด าเนนการดงน

สมคร แกไข และยกเลก การเปนสมาชกของตนเอง อนเตอรเฟสและตารางในฐานขอมลทใชในการสมคร แกไข และยกเลกสมาชกไดแสดงไวในสวนของหวขอยอย “เพม ลบ และแกไข ขอมลสมาชก” ในหวขอ 6.4.1

ตรวจสอบความถกตองของขอมลของเวบเซอรวสของตนเอง อนเตอรเฟสและตารางในฐานขอมลทใชการตรวจสอบความถกตองของเวบเซอรวสไดแสดงไวในหวขอ 6.2.2

ลงทะเบยน แกไข และลบเวบเซอรวส การตดตอกบระบบทะเบยนเวบเซอรวสทงผานเวบแอปพลเคชนและโปรโตคอลเวบเซอรวส ในการลงทะเบยน แกไข และลบเวบเซอรวสสามารถดไดทหวขอ 6.2

ดสถตการใชงานในสวนของประวตการลงทะเบยนเวบเซอรวสของตนเอง โดยทสามารถดสถตเวบเซอรวสทมการเขาไปเยยมชมดมากทสดใน 10 อนดบแรก และเวบเซอรวสทคนแนะน าใหคนอนเรยกใชมากทสดใน 10 อนดบแรก

Page 31: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 31

อนเตอรเฟสและฐานขอมลทใชในการดสถตในสวนนไดแสดงไวในหวขอ 6.5 6.4.3 ผคนหาเวบเซอรวส (Web Services Inquirer) มสทธทจะด าเนนการดงน

สมคร แกไข และยกเลก การเปนสมาชกของตนเอง อนเตอรเฟสและตารางในฐานขอมลทใชในการสมคร แกไข และยกเลกสมาชกไดแสดงไวในสวนของหวขอยอย “เพม ลบ และแกไข ขอมลสมาชก” ในหวขอ 6.4.1

คนหาเวบเซอรวสตาง ๆ ทอยในระบบลงทะเบยนเวบเซอรวสสาธารณะ การตดตอกบระบบทะเบยนเวบเซอรวสทงผานเวบแอปพลเคชนและโปรโตคอลเวบเซอรวส ในการคนหาเวบเซอรวสตาง ๆ สามารถดไดทหวขอ 6.3

ดสถตการใชงานในสวนของประวตการลงทะเบยนเวบเซอรวสของตนเอง โดยทสามารดสถตการใชงานในสวนของเวบเซอรวสทมการเขาไปเยยมชมดมากทสดใน 10 อนดบแรก และเวบเซอรวสทคนแนะน าใหคนอนเรยกใชมากทสดใน 10 อนดบแรก อนเตอรเฟสและตารางในฐานขอมลทใชการตรวจสอบความถกตองของเวบเซอรวสไดแสดงไวในหวขอตามทระบไวในขอ 6.5

6.5 ระบบจดเกบสถตการใชงาน (Usage Statistics) 6.5.1 จ านวนการเขาเวบไซตระบบทะเบยนเวบเซอรวสสาธารณะ (Number of Visits at Public Registry Web Site) ระบบสามารถใชการบรการในการแสดงสถตการเขาเวบไซตฟรไดท http://www.statcounter.com ซงผใชการบรการนเพยงแคสมครสมาชกและระบ URL ของเวบไซตทตองการเกบสถตการเขาเวบไวต เวบแอปพลเคชนท http://www.statcounter.com สามารถแสดงสถตการเขาเวบไซตในแตละวน แตละสปดาห แตละเดอน แตละไตรมาส และแตละป นอกจากนยงสามารถเลอกวนทจะดสถตไดวาจะชวงไหน หรอจากวนไหนถงวนไหน สามารถทจะดขอมลของจ านวนโหลดหนาเวบเพจ (Page Loads) จ านวนผมาเยยนทเปนหนงเดยว (Unique Visitors) จ านวนผมาเยยนเปนครงแรก (First Time Visitors) และจ านวนผมาเยยนทกลบมาเยยนอก (Returing Visitors) นอกจากนระบบสามารถแสดงกราฟทเปนกราฟแทง (Bar Graph) หรอกราฟพนทกได (Area Graph) นอกจากนขอมลตาง ๆ ทอยในตารางสามารถถกเกบบนทกและสงออกไปท

Page 32: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 32

ไฟล Microsoft Excel Spreadsheet และไฟล Microsoft Excel Comma Separated Values (CSV) ได ตวอยางของสถตทแสดงโดยระบบนไดแสดงไวในรปท 6.49 และรปท 6.50 ตามล าดบ

รปท 6.49 ตวอยางการแสดงขอมลเกยวกบสถตการเขาใชเวบไซตทเปนรปกราฟ [17]

รปท 6.50 ตวอยางการแสดงขอมลเกยวกบสถตการเขาใชเวบไซตทเปนตาราง [17]

Page 33: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 33

6.5.2 จ านวนการสบคนเวบเซอรวสผานทางเวบไซต (Number of Web Services Searches via Registry Web Site) ระบบจะท าการเกบขอมลสถตเกยวกบจ านวนการสบคนผานทางเวบไซต จ านวนเวบเซอรวสทพบจากการสบคน และจ านวนเวบเซอรวสทผใชคลกจากการสบคน ในแตละวน แตละสปดาห แตละเดอน แตละไตรมาส และแตละป นอกจากนยงสามารถเลอกวนทจะดสถตไดวาจะชวงไหน หรอจากวนไหนถงวนไหน นอกจากนระบบจะสามารถแสดงกราฟทเปนกราฟแทง (Bar Graph) หรอกราฟพนทกได (Area Graph) นอกจากนขอมลตาง ๆ ทอยในตารางสามารถถกเกบบนทกและสงออกไปทไฟล Microsoft Excel Spreadsheet และไฟล Microsoft Excel Comma Separated Values (CSV) ตวอยางการแสดงสถตการสบคนเวบเซอรวสผานทางเวบไซตไดแสดงไวในรปท 6.51

รปท 6.51 ตวอยางการแสดงสถตการสบคนเวบเวอรวสผานทางเวบไซต

ตารางทเกบขอมลเพอน ามาประมวลผลแสดงสถตการสบคนเวบเซอรวสคอตาราง search_log (ตารางท 10.5) ซงจะถกน าไปทงในการแสดงสถตการสบคนเวบเซอรวสผานทางเวบไซตและสถตการสบคนเวบเซอรวสผานทางโปรโตคอลเวบเซอรวส 6.5.3 จ านวนการสบคนเวบเซอรวสผานทางโปรโตคอลเวบเซอรวส (Number of Web Services Searches via Web Services Protocol) ระบบจะท าการเกบขอมลสถตเกยวกบจ านวนการสบคนเวบเซอรวสผานทางโปรโตคอลเวบเซอรวสจะคลายกบการเกบสถตการสบคนเวบเซอรวสผานทางเวบไซต ตวอยางการแสดงสถตการสบคนเวบเซอรวสผานทางโปรโตคอลเวบเซอรวสไดแสดงไวในรปท 6.52

Page 34: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 34

รปท 6.52 ตวอยางการแสดงสถตการสบคนเวบเซอรวสผานทางโปรโตคอลเวบเซอรวส

6.5.4 ขอมลการใชค าส าคญ (Keywords) ในการสบคน (Statistics related to Keywords Search Usage) ระบบจะท าการจดเกบสถตวาผคนหาใชค าส าคญอะไรในการสบคน และมกจะมการสบคนค าส าคญค าไหนดวยกน ตวอยางการแสดงสถตการใชค าส าคญในการสบคนประจ าวนไดแสดงไวในรปท 6.54 แตวาระบบสามารถจะแสดงสถตประจ าสปดาห ประจ าเดอน ประจ าไตรมาส ประจ าป ได

รปท 6.53 ตวอยางการแสดงสถตการใชค าส าคญในการสบคนประจ าวน

ในการเกบสถตขอมลการใชค าส าคญนนจ าเปนจะตองมการไฟลชวคราว (temp file) เพอบนทกค าคนทคนดวยกน ในแตละ session โดยทชอไฟลกจะเปนการน าเอา session_id และ วนทมาตอกน อยางเชน session1234_4_15_2007.txt ซงในไฟลนกจะบนทกค าคนทถกคนดวยกนในแตละ session โดยทค าคนแตละค ากจะอยในแตละบรรทด ในแตละวนระบบเกบสถตการสบค าคนซงเปนสวนหนงของระบบทะเบยนเวบเซอรวสจะท าการประมวลผลไฟลทถกสรางในวนนน และจะเกบขอมลเฉพาะค าคนทถกคนมากทสดใน 5 อนดบแรก และจะบนทกค าคนทถกคนดวยกนกบค าคนหนง ๆ ทถกคนหาดวยกน 3 อนดบแรกมากทสด หากเกบทกค าคน ระบบอาจจะมพนทไมพอและจะท าใหเสยเวลาประมวลผลมาก นอกจากนยงตองมตารางเพอเกบความสมพนธระหวางค าคนทมกถกคนดวยกนโดยทขอมลนจะเกบไวในตาราง keyword_stats (ตารางท 10.6)

Page 35: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 35

6.5.5 ประวตการลงทะเบยนเวบเซอรวส (History of Web Services Registration) การบนทกประวตการลงทะเบยนเวบเซอรวสนนจะท าใหผดแลระบบและผลงทะเบยนเวบเซอรวสทราบวาเวบเซอรวสของตนเองสราง แกไข และลบเมอไหร และแกไขโดยใชโอเปอเรชนตามมาตรฐาน UDDI Registry ตวอยางการแสดงหนาแสดงประวตการลงทะเบยนเวบเซอรวสของเวบเซอรวสหนง ไดแสดงไวในรปท 6.54

รปท 6.54 ตวอยางการแสดงประวตการลงทะเบยนเวบเซอรวสหนง ตารางในฐานขอมลทเกยวของเพอเกบสถตขอมลเกยวกบการบนทกประวตการลงทะเบยนเวบเซอรวสม 3 ตารางดงตอไปน ตาราง webservice_profile (ตารางท 10.1), ตาราง publisher_log (ตารางท 10.7), และตาราง publisher_profile (ตารางท 10.8) 6.5.6 เวบเซอรวสทมการเขาไปเยยมชมมากทสด (The Most Visited Web Services) ระบบจะมการแสดงเวบเซอรวสทมคนเขาไปเยยมชมมากทสด และเวบเซอรวสใหม ๆ ทเพงลงทะเบยนในระบบ ตวอยางของการแสดงขอมลของเวบเซอรวสทมการเขาไปเยยมชมมากทสดและเวบเซอรวสทเพงสรางใหมสด ไดแสดงไวในรปท 6.55

Page 36: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 36

รปท 6.55 ตวอยางการแสดงเวบเซอรวสทคนเขาไปเยยมชมมากทสด [18] ซงถาหากผใชคลกทเวบเซอรวสไหน ระบบจะแสดงรายละเอยดของเวบเซอรวสนนซงรวมถงขอมลอธบายโดยสรป (summary) ประเภทของเวบเซอรวส (cataegory) หมวดหมทจดเกบ (tags) วนทตรวจสอบเวบเซอรวส (Date Reviewed) URL ของเวบเซอรวสนน (API home Page) ค าอธบายรายละเอยดของเวบเซอรวส (Description) และรายละเอยดอน ๆ ดงแสดงในรปท 6.56

Page 37: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 37

รปท 6.56 ตวอยางรายละเอยดของเวบเซอรวส [18] ในการแสดงสถต เวบเซอรวสทมการเขาไปเยยมชมมากทสดนน นอกจากระบบจะใชตาราง webservice_profile แลวระบบจะตองมการใชตาราง blog_profile (ตารางท 10.9), ตาราง ws_blogs (ตารางท 10.10), ตาราง comment_profile (ตารางท 10.11) และตาราง ws_comments (ตารางท 10.12)

Page 38: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 38

6.5.7 เวบเซอรวสทคนแนะน าใหคนอนเรยกใชมากทสด (The Most Recommended Web Servics) ในสวนของอนเทอรเฟสทแสดงเวบเซอรวสทคนแนะน าใหคนอนเรยกใชมากทสดใน 10 อนดบแรก นนจะเปนการแสดงรายละเอยดของเวบเซอรวส ซงมชอของเวบเซอรวส ผเผยแพรเวบเซอรวส ขอมลสรปของเวบเซอรวส แพลตฟอรมทใชในการพฒนาเวบเซอรวส และจ านวนโหวตทคนแนะน าใหคนอนเรยกใช

รปท 6.57 ตวอยางการแสดงเวบเซอรวสทคนแนะน าใหคนอนเรยกใชมากทสด

ในการแสดงขอมลเวบเซอรวสทคนแนะน าใหคนอนเรยกใชมากทสดนนตองใชตาราง webservice_profile (ตารางท 10.1) และตาราง service_stats (ตารางท 10.13)

7. ความรเบองตนเกยวกบเทคโนโลยทเกยวของ (Related Technologies) 7.1 ความรเบองตนเกยวกบเทคโนโลย Web 2.0 (Introduction to Web 2.0)

Web 2.0 เปนชอของรปแบบสถาปตยกรรมในการพฒนาเวบแอปพลเคชน Web 2.0 มกถกออกแบบขนจาก

เทคนคตาง ๆ ทพฒนาขน เชน public web service APIs AJAX (Asynchronous JavaScript And XML) และ

web syndication (Web feeds เชน RSS feeds เปนตน) เปนตน บางครงค าวา Web 2.0 กรวมไปถงรปแบบ

ใหมๆ ทเกดขนในบนอนเทอรเนต เชน blogs, wikis, tags, podcasts เปนตน

โดยแนวทางของ Web 2.0 สามารถสรปโดยคณ Tim O’Reilly ไดดงน

1. เวบมหนาทเปน computing platform ทใหบรการเวบแอปพลเคชน แกผใชบรการทางอนเทอรเนต

2. มขอมลเปนองคประกอบส าคญ 3. มเนตเวรคทเกดจากการเขามามสวนรวมของผใชอนเทอรเนต มการสอสารระหวางผใช

อนเทอรเนตทเปดกวาง

Page 39: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 39

4. มการจดหมวดหมเนอหาและการจดระเบยบภายในเวบทมประสทธภาพมากขนและสถาปตยกรรมบนเวบมการพฒนามากขน เปลยนจากเวบไซตแบบ static การคนหาจาก search engines และ การทองอนเทอรเนตจากเวบไซตหนงไปยงอกเวบไซตหนง กลายเปนเวบไซตแบบ dynamic ทมการโตตอบและมการถายทอดขอมลระหวางเวบไซต โดยผใชไมจ าเปนตองท าการคนหาดวยตนเอง

การท Web 2.0 ไดพฒนาขนมา สวนหนงมสาเหตมาจากการพฒนาความเรวของอนเทอรเนต ซงม

ผลอยางมากตออตราการใชอนเทอรเนตทเพมมากขนอกสาเหตหนงกคอผใชงานอนเทอรเนตมวตถประสงค

ในการใชงานทหลากหลายขน เชน การคนหาขอมล ท าธรกจ และการซอสนคาออนไลน เปนตน

เทคนคทใชใน Web 2.0

โครงสรางพนฐานของเทคโนโลย Web 2.0 เปนโครงสรางทซบซอน ซงประกอบดวย server

software, content syndication, messaging protocols, standard-based browsers, และ client applications ตาง

เทคโนโลย Web 2.0 ประกอบดวย

1. Rich Internet Application เชน AJAX 2. CSS (Cascading Style Sheets) 3. XHTML หรอ Microformat 4. User interface languages พวก XUL (XML User Interface Language) และ SVG (Scalable

Victor Graphics) 5. Flash Remoting 6. การเชอมโยงและการรวมขอมลผานทาง RSS และ Atom 7. URLs ทเหมาะสมและมความหมาย 8. Weblog หรอ blog 9. REST (Representational State Transfer) หรอ XML Web services APIs 10. Social networking หรอการมเครอขายทางสงคมผานอนเทอรเนต

Page 40: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 40

7.2 ความรเบองตนเกยวกบเทคโนโลย AJAX (Introduction to AJAX)

AJAX (Asynchronous JavaScript And XML) เปนเทคนคหนงในการสรางเวบแอปพลเคชน ท

แตกตางจากการสรางเวบแอปพลเคชนโดยทวไป โดยในเวบแอปพลเคชนทวไป เมอตดตอไปยงเซรฟเวอร

และไดรบขอมลใหมจากเซรฟเวอร เวบเพจจะตองรโหลดทกครง ในขณะทหากใช AJAX จะชวยลดปรมาณ

การตดตอระหวางเซรฟเวอรและไคลเอนตลงได โดย AJAX จะโหลดเฉพาะขอมลทผใช ตองการเทานน

AJAX engine ท าหนาทเปนตวกลางระหวางไคลเอนตและเซรฟเวอรฉะนนเมอไคลเอนตมการรอง

ขอแทนทจะสง HTTP request ไปยงเซรฟเวอรโดยตรงไคลเอนตจะสง JavaScript call ไปยง AJAX engine

เพอโหลดขอมลทผใชตองการ และหาก AJAX engine ตองการขอมลเพมเตมในการตอบสนองตอผใช

AJAX engine จะสงการรองขอไปยงเซรฟเวอรโดยใช XML

เทคโนโลยตาง ๆ ทเปนสวนประกอบของ AJAX ไดแก

1. HTML/XHTML เปนภาษาในการจดแสดงขอมล 2. CSS เปนรปแบบการจดแตง XHTML 3. Document Object Model (DOM) ส าหรบแสดงขอมลและมปฏสมพนธแบบไดนามค

(Dynamic display and interaction) 4. XMLเปนรปแบบการแลกเปลยนขอมล 5. XSLT ส าหรบ แปลง XMLเปน XHTML 6. XMLHttpRequest ส าหรบการรองขอแบบไมประสานเวลา (Asynchronous data retrieval) 7. JavaScript เปนภาษาในการใชงาน AJAX engine

โดยสวนประกอบจ าเปนขนพนฐานทขาดไมไดใน AJAX ไดแก HTML/XHTML DOM และ

JavaScript เพราะ XHTML จ าเปนส าหรบการแสดงขอมล ในขณะท DOM จ าเปนส าหรบการเปลยนแปลง

เฉพาะบางสวนในหนา XHTML โดยชวยใหไมตองโหลดใหมทงหนา และ JavaScript จ าเปนส าหรบการ

ตดตอกนระหวาง client และ server

Page 41: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 41

7.3 ความรเบองตนเกยวกบ CSS (Introduction to CSS)

CSS (Cascading Style Sheet) เปนภาษา style sheet ใชในการจดรปแบบของเอกสารทเขยนในภาษา

มารกอพ CSS เปนภาษาทส าคญตวหนงในการเขยนเวบเพจซงจะท าใหเราสามารสรางเวบเพจไดสะดวก

ยงขน และชวยใหท าการแกไขไดงายขน เชน ถาหากเรามเวบเพจ 100 หนาซงมรปแบบในการน าเสนอแบบ

เดยวกน เมอเราตองการจะเปลยนรปแบบน าเสนอ เชนเปลยนขนาดตวอกษรของหวขอ เราจะตองท าการ

แกไขทง 100 หนานน แตถาเราใช CSS เราจะสามารถแกไดทจดๆ เดยว ซงท าใหงายในการปรบปรงเวบมาก

ขน

7.4 ความรเบองตนเกยวกบ RSS (Introduction to RSS)

RSS ยอมาจากค าวา Really Simple Syndication หรอ Rich Site Summary เปนรปแบบในการ

น าเสนอขาวหรอบทความ ใหอยในรปแบบมาตรฐาน XML เพอใหผทสนใจสามารถตดตามขาวสารใหมๆ

ไดทนท

RSS คอขอมลทอยในรปแบบ XML ทก าหนดขนมาเพอใชในการกระจายขาวทาง เวบไซต ( web

syndication) และเวบบลอก ซงจะมแทกตางๆทบอกความหมายของขอมล เชน

Title => หวขอขาว

Link => URL ของเวบไซตขาว

Description => ค าอธบาย

PubDate => วนทออกขาว เปนตน

เทคโนโลยของ RSS ท าใหสามารถรบขาวสารจากเวบไซตทใหบรการขอมลขาวสารในรปแบบ

RSS ซงตามปกตแลวเวบไซตเหลานมการเปลยนแปลง และเพมเตมเนอหาบอยๆ หากตองการใชเทคโนโลย

นตองตดตงโปรแกรมรวมกลมขาวสารไวดวย ( News aggregator หรอ RSS aggregator) โดยหลกการของ

โปรแกรมลกษณะนกคลายกบโปรแกรมรบอเมล หลงจากนนกลงทะเบยนรบขาวสารจากเวบไซตตางๆ ท

ใหบรการ RSS ซงบรการเหลานไมเสยคาใชจายใดๆ แตขอมลทไดจะเปนเพยงหวขอขาว หรอรายละเอยด

โดยยอเทานน สวนเนอหา หรอขอความหลกของขาวนน กจะมลงกเชอมโยงไปใหอกทหนง

Page 42: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 42

รปแบบ RSS ทกระจายหวขอขาว หรอเนอหาขาวโดยยอ พรอมกบลงกเชอมโยงไปยงเนอหานนๆ

รวมถงรายละเอยดทางเทคนคอนๆ ของของขาวสารนน ผานรปแบบขอมล XML เราเรยกรปแบบใน

ลกษณะนวา RSS Feed, Web Feed, RSS Stream, RSS Channel และประโยชนทตามมากคอ เราสามารถรได

วาเวบไซตนนมการเปลยนแปลงขอมลใหมหรอไม โดยใชโปรแกรมรวมกลมขาวสารเปนเครองมอคอย

ตรวจสอบใหไดเรอยๆ ตามทตองการ

8. เครองมอทใชในการพฒนา (Development Tools) 8.1 Java SE 5 [9]

Java SE v1.5 เปนภาษาโปรแกรมทใชในการพฒนา Eclipse + Netbeans เปนเครองมอทใชในการพฒนา เหตผลทเลอกใชเพราะไมเสยคาลขสทธซอฟตแวรและม API ใหใชงาน

8.2 Java EE 5 [10]

ใช Java EE 5 with Servlet container 2.4 เหตผลทเลอกใช เพราะสามารถน าซอรสโคดจาก Java SE มาพฒนาตอไดงาย

8.3 Apache Tomcat Server [11]

ใช Apache Tomcat v6.0 เพอเปน Web Server ส าหรบ JSP และ jUDDI

เหตผลทเลอกใชเพราะไมเสยคาลขสทธซอฟตแวร

8.4 Apache jUDDI [12]

ใช jUDDI v0.9rc4 ในการสรางฐานขอมล UDDI เหตผลทเลอกใช เพราะไมเสยคาลขสทธซอฟตแวรและมประสทธภาพสง

8.5 Apache Axis2 [13]

ใช Apache Axis2 v1.1.1 ในการสรางและเรยกใชเวบเซอรวสไดงาย เหตผลทเลอกใช เพราะไมเสยคาลขสทธซอฟตแวร มประสทธภาพสง และใชงานงาย

Page 43: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 43

8.6 RUDDI [14]

ใช UDDI v1.0 เปนไคลเอนตไลบราลในการตดตอระบบทะเบยนเวบเซอรวส เหตผลทเลอกใช เพราะไคลเอนตไลบราลนสนบสนน UDDI Specification Model version 3 และไม

เสยคาลขสทธซอฟตแวร

8.7 MySQL Database [15]

ใชฐานขอมล MySQL 5.0 ในการเกบและคนหาขอมลในฐานขอมลของระบบ เหตผลทเลอกใช เพราะไมเสยคาลขสทธซอฟตแวรและมประสทธภาพสง

8.8 WSDL4J [16]

ใช WSDL4J ในการสรางและแกไขเอกสาร WSDL เหตผลทเลอกใช เพราะไมเสยคาลขสทธซอฟตแวร

Page 44: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 44

9. รายละเอยดโครงสรางและการออกแบบของโปรแกรม (Architecture and Design Specification) 9.1 โครงสรางของ UDDI Registry Architecture (UDDI Registry Architecture)

โครงสรางโดยรวมของ UDDI Registry จะกลาวในสวนการลงทะเบยน, การลบ, การคนหาและ การขอ

รายละเอยด

ระบบ UDDI Registry จะแบงออกเปน 3 สวนหลกๆคอ สวนของ UDDI Database จะท าการเกบขอมล UDDI ลง Relational Database ทวไป สวนของ UDDI Service จะท าการประมวลผลและจดการระบบ UDDI สวนของ Client Application และ Web Application ซงจะท าหนาทตดตอกบ UDDI Service ผาน

ทาง SOAP หรอ RMI/IIOP ระบบ Publisher Management จะมระบบ Publisher Register ซงกระท าการผานหนา regform.jsp โดย

ตองกรอกขอมลใหครบ จากนนจะไปตรวจสอบทหนา register.jsp หากตรวจสอบไมผานหรอมชอ ID ซ ากน จะกลบมายงหนา regform.jsp เมอ กรอกขอมลครบจะสงไปยงหนา register.jsp และเขาสการ

UDDI Database

Java EE Application Server (JBOSS 4.0)

UDDI Service

Java EE Framework

Web Application (JSP) UDDI Client

Application

EJB

SOAP SOAP RMI/IIOP

รปท 9.1 โครงสรางโดยรวมของ UDDI Registry Architecture

Page 45: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 45

ลงทะเบยน Business หากตองการแกไขกสามารถเรยกใชไดหลงจากลงทะเบยนแลวขอมลจะเกบในตาราง publisher_profile

ระบบ Business Management จะประกอบดวยระบบ Business Register และระบบ Business Unregister ระบบ Business Register กระท าการผานหนา regform_b.jsp หลงจากทท าการ login หรอpublisher

register ไวแลวโดยฟอรมจะไปตรวจสอบทหนา register_b.jsp หากตรวจสอบไมผานหรอมชอ BusinessEntity ซ ากนจะกลบมายงหนา regform_b.jsp เมอ กรอกขอมลครบจะสงไปยงหนา register_b.jsp และหนารายละเอยด Business หากตองการแกไขกสามารถเรยกใชไดหลงจากลงทะเบยนแลว

ระบบ Business Unregister กระท าการผานหนา unregister_b.jsp หลงจากทท าการ login หรอ publisher register และตองท าการ business register แลวโดยทหนา Business Detail จะมค าสงปรากฏขางบนใหเลอก Delete Business และระบบจะใหกรอก password ยนยนค าสงและตรวจสอบ user ถาไมมขอผดพลาดกจะท าการ delete business

Register

Business

Form

Business

Detail

API

SOAP

message

Validate

data

Edit

Register

Publisher

Form

Login

รปท 9.3 การลงทะเบยน Business

Register

Publisher

Form

Register

Business

Form

API

Query

data

Validate

data

Edit

รปท 9.2 การลงทะเบยน Publisher

Page 46: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 46

ระบบ Service Management ประกอบดวยระบบ Service Register, ระบบ Service Unregister, และ

ระบบ Service Inquirer ระบบ Service Unregister กระท าการผานหนา regform_s.jsp หลงจากทท าการ login หรอpublisher

register และตองท าการ business register แลวโดยทหนา Business Detail จะมค าสงปรากฏขางบนใหเลอก Add Service และตองท าการสง URL ของเอกสาร WSDL ฟอรมจะไปตรวจสอบทหนา register_s.jsp หากตรวจสอบไมผานหรอมชอ BusinessService ซ ากนภายใน BusinessEntity จะกลบมายงหนา regform_s.jsp เมอ กรอกขอมลครบจะสงไปยงหนา register_s.jsp และหนารายละเอยด Business หากตองการแกไขกสามารถเรยกใชไดหลงจากลงทะเบยนแลว

ระบบ Service Unregister กระท าการผานหนา unregister_s.jsp หลงจากทท าการ login หรอ publisher register และตองท าการ business register และ service register แลวโดยทหนา Service Detail จะมค าสงปรากฏขางบนใหเลอก Delete Service และระบบจะใหยนยนค าสงและตรวจสอบ user ถาไมมขอผดพลาดกจะท าการ delete service

Delete

Business

Form

API

SOAP

message

Validate

user

Business

Detail

Exit

Register

Business

Form

รปท 9.4 การถอดถอน Business

Delete

Service

Form

Business

Detail

API

SOAP

message

Validate

user

Service

Detail

Exit

รปท 9.6 การถอดถอน Service

Register

Service

Form

Service

Detail

API

SOAP

message

Validate

data

Edit

Business

Detail

WSDL

DOC

รปท 9.5 การลงทะเบยน Service

Page 47: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 47

ระบบ Service Inquiry สามารถสงการไดโดย Quick Search ทเปน panel ทางซายมอและ Advance Search ซงม link อยทางซายมอจากนนขอมลจะถกสงไปยงหนา action.jsp เพอเกบ parameter ในการ search แบบ session และสงตอไปยงหนา search_b.jsp ,search_s.jsp , search_t.jsp แลวแตวาจะหาตวไหน จากนนกใช API ในการ search และเกบคา result ทงหมดไว จากนนกไล list ของผลลพธ ครงละ 10 ผลลพธ

ระบบการขอรายละเอยดท าไดโดยคลกเลอกผลลพธจากการ search หรอ link ภายในระหวาง รายละเอยดดวยกนเอง

List result

page

Detail

page

Other

Detail

page

Quick

Search

Form

API

SOAP

message

List result

page Advance

Search

Form

gather

data &

type Search

result

รปท 9.8 การขอดรายละเอยด

รปท 9.7 การคนหา

Page 48: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 48

ระบบการลอกอนและลอกเอาต

9.2 UML Use Case

Log in

Form

API

Query

data

Validate

user

Log out

Form Created

business

Business

Detail

Register

Business

Form

Business

Result

Service

Result

TModel

Result

Business

Detail

Service

Detail

Tmodel

Detail

Inquirer

Quick

Search

Advanced

Search

รปท 9.10 Use case ของ Inquirer

รปท 9.9 การลอกอนและลอกเอาต

View

Statistics

Page 49: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 49

Publisher

Register

Login Business

Manage

Service

Manage

Logout TModel

Manage

Add

Edit

Delete

Add

Edit

Delete

Add

Edit

Delete

รปท 9.11 Use case ของ Publisher

View

Statistics

Administrator

Login

รปท 9.12 Use case ของ Administrator

Inquiry Publish User

Manage

Logout

Add

Edit

Delete

save_XXX

delete_XXX

find_XXX

get_XXX_deta

il

Log &

Statistic

Read Log

View

Statistic Export

Page 50: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 50

ตารางท 9.1 ความสามารถของผใชงานในแตละชนด

ชนดผใชงาน ความสามารถ Inquirer สามารถคนหาและขอขอมลเกยวกบเซอรวส ตลอดจนดสถตเกยวกบความนยมของเวบ

เซอรวสได Publisher ตองสมครกบระบบกอนจงจะสามารถลงทะเบยนและจดการเกยวกบเซอรวสของตนได ด

สถตเกยวกบความนยมของเวบเซอรวสได และดประวตการลงทะเบยนเวบเซอรวสของตนเอง

Administrator จดการขอมลสมาชก จดการขอมลเวบเซอรวส จดการขอมลกลมของเวบเซอรวส ดสถตทกอยางได ตลอดจนสามารถลงทะเบยนและคนหาเวบเซอรวสได

ตารางท 9.2 ค าบรรยายศพททใชใน UML Diagram

หนา ค าบรรยาย Quick Search ท าการคนหาจากการปอน keyword Advanced Seach ท าการคนหาจากการปอน keyword หรอตวเลอกอนๆ Business Result ผลลพธจากการคนหา Business Service Result ผลลพธจากการคนหา Service TModel Result ผลลพธจากการคนหา TModel Business Detail รายละเอยดของ Business ทถกเลอก Service Detail รายละเอยดของ Service ทถกเลอก TModel Detail รายละเอยดของ TModel ทถกเลอก Register การลงทะเบยน Publisher Login การเขาสระบบ Logout การออกจากสระบบ Business Manage จดการเกยวกบ Business ทถกเลอก Service Manage จดการเกยวกบ Service ทถกเลอก TModel Manage จดการเกยวกบ TModel ทถกเลอก User Management สามารถเพม/แกไข/ลบสมาชกได View Statistics ดสถตตาง ๆ Log & Statistics สามารถเขาไปด log, ดสถตการใชงาน, สามารถ export คาตางๆมาเกบส ารองไวได

Page 51: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 51

9.3 UML class diagram

IG_Connector

IG_Data

IG_BusinessEntity

IG_BusinessService

IG_TModel

IG_WSDL

org.igrid.uddi.core

DuplicateItemExcpetion

NotMatchItemExcpetion

NotFoundItemExcpetion

org.igrid.uddi.exception

IG_Connector

IG_BusinessEntity

IG_BusinessService

IG_TModel

IG_WSDL IG_Data

รปท 9.13 Class Diagram

Page 52: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 52

ม 2 package คอสวนทตดตอกบ UDDI Registry และ Exceptions

IG_Connector class ใชเชอมตอระหวาง UDDI กบ package น

IG_BusinessEntity class จดการเกยวกบ BusinessEntity PublisherAssertion

IG_BusinessService class จดการเกยวกบ BusinessService และ BindingTemplate

IG_TModel class จดการเกยวกบ TModel

IG_Data class จดการเกยวกบ Datatype ตางๆใน UDDI structure

IG_WSDL class จดการเกยวกบการ mapping เอกสาร WSDL

Page 53: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 53

9.4 แผนผงเวบ (Web Page Design and Site Map)

index.jsp

register.jsp

login.jsp

search_r.jsp

register_b.jsp

regform_b.jsp

index.jsp

register.jsp

logout.jsp

regform.jsp

detail_b.jsp

search_s.jsp search_r.jsp

รปท 9.14 Site Map สวนของลอกอนและลอกเอาต

หนาแสดงผล

การท างานเบองหลง

การเปลยนหนา

การ include

Page 54: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 54

index.jsp

action.jsp?

searchqb

action.jsp?

searchqs

action.jsp?

searchqt

action.jsp?

search_b

action.jsp?

search_s

action.jsp?

search_t

search_b.jsp

search_s.jsp

search_t.jsp

searchform.jsp

detail_b.jsp

Discovery

URL

detail_s.jsp

detail_t.jsp

OverView

Document

รปท 9.15 Site Map สวนของการคนหา

Page 55: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 55

detail_b.jsp

detail_s.jsp

detail_t.jsp

regform_b.jsp

register_b.jsp

regform_s.jsp

register_s.jsp

unregister_b.jsp unregister_s.jsp

unregister_t.jsp

detail_b.jsp

รปท 9.16 Site Map สวนของการจดการ service

Page 56: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 56

10. ขอมลของตารางตาง ๆ ในฐานขอมล (Data Dictionary) ตารางท 10.1 webservice_profile Field Type Description

ws_id INT [Primary Key / Auto Increasement]

รหสของเวบเซอรวสทไดถกบนทกในระบบการลงทะเบยน

publisher_id VARCHAR(20) รหสซงใชเปนชอของ publisher ในการลงทะเบยนเวบเซอรวส Name VARCHAR(50) ชอของเวบเซอรวส summary VARCHAR(30) ขอมลอธบายโดยสรป Category VARCHAR(30) ประเภทของเวบเซอรวส Tags VARCHAR(30) หมวดหมทจดเกบ date_reviewed DATE วนทตรวจสอบเวบเซอรวส ws_homepage VARCHAR(30) URL ของเวบเซอรวส description VARCHAR(100) ค าอธบายรายละเอยดของเวบเซอรวส Protocol VARCHAR(50) โปรโตคอลของเวบเซอรวส Platform VARCHAR(30) แพลตฟอรมทพฒนาเวบเซอรวส Version VARCHAR(20) เวอรชนของเวบเซอรวส wsdl_url VARCHAR(100) URL ของเอกสารวสเดลของเวบเซอรวส

ตารางท 10.2 ws_operation Field Type Description

opreation_id INT [Primary Key / Auto Increasement]

รหสของโอเปอเรชน

ws_id INT [Foreign Key]

รหสของเวบเซอรวสทมโอเปอเรชน

Name VARCHAR(30) ชอของโอเปอเรชน Style ENUM

{doc, rpc} รปแบบของโอเปอเรชน

soap_action VARCHAR(50) SOAP Action ของโอเปอเรชน

Page 57: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 57

ตารางท 10.3 ws_operation_parameter Field Type Description

opreation_id INT [Primary Key / Auto Increasement]

รหสของโอเปอเรชน

ws_id INT [Foreign Key]

รหสของเวบเซอรวสทมโอเปอเรชน

Name VARCHAR(50) ชอของพารามเตอร data_type VARCHAR(200) ชนดขอมลของพารามเตอร Category ENUM

{in, out} ประเภทของพารามเตอรวาเปนอนพตหรอเอาตพต

ตารางท 10.4 user_profile Field Type Description

user_id VARCHAR(20) รหสของสมาชก username VARCHAR(50)

ชอลอกอน

Password VARCHAR(30) รหสผาน firstname VARCHAR(20) ชอ Lastname VARCHAR(30) นามสกล middname VARCHAR(10) ชอกลาง Email VARCHAR(20) อเมลแอดเดรส Phone VARCHAR(30) โทรศพท organization VARCHAR(40) ชอองคกรทอย Type ENUM

{admin, publisher, inquirer} กลมของสมาชกทอย

Page 58: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 58

ตารางท 10.5 search_log Field Type Description

session_id VARCHAR(50) รหสของ session ของการคนหา keyword VARCHAR(200)

ค าส าคญทผคนหาเวบเซอรวสพมพ

timestamp DATETIME การบนทกเวลาทค าส าคญนนถกคนหา search_from ENUM

{webapp, ws} คนหาผานทางเวบแอปพลเคชนหรอเวบเซอรวส

num_found_ws INT จ านวนเวบเซอรวสทพบจากการสบคนดวยค าส าคญน num_clicked_ws INT จ านวนเวบเซอรวสทผคนหาคลกดรายละเอยดเพมเตม from_ip_address VARCHAR(16) ไอพแอดเดรสทท าการตดตอมาทระบบ

ตารางท 10.6 keyword_stats Field Type Description

timestamp DATETIME การบนทกเวลาทค าส าคญนนถกคนหา Keyword VARCHAR(20) ค าส าคญ assoc_keyword1 VARCHAR(20) ค าส าคญทถกคนดวยกนกบ keyword ในจ านวนมาก

ทสดเปนอนดบ 1 ใน session_id น freq_assoc_keyword1 INT จ านวนครงท keyword_1 ถกคนดวยกนกบ keyword top_keyword2 VARCHAR(20) ค าส าคญทถกคนดวยกนกบ keyword ในจ านวนมาก

ทสดเปนอนดบ 2 ใน session_id น freq_assoc_keyword2 INT จ านวนครงท keyword_2 ถกคนดวยกนกบ keyword top_keyword3 VARCHAR(20) ค าส าคญทถกคนดวยกนกบ keyword ในจ านวนมาก

ทสดเปนอนดบ 3 ใน session_id น freq_assoc_keyword3 INT จ านวนครงท keyword_3 ถกคนดวยกนกบ keyword

Page 59: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 59

ตารางท 10.7 publisher_log Field Type Description

publish_log_id

INT [Primary Key / Auto Increasement]

เปนรหสของการบนทกครงนน ๆ

publisher_id VARCHAR(20) รหสของ publisher auth_token VARCHAR(51)

[Reference auth_token(auth_token)] เปนรหสของ AuthToken ซงสามารถอางไปถง publisher_name ได

ip_address VARCHAR(16) เปนไอพแอดเดรสของ publisher ซงจะท าใหระบบสามารถตดตามพฤตกรรมของผลงทะเบยนได

sys_operation ENUM {add, modify, delete} เปนโอเปอเรชนทใชในการลงทะเบยนเวบเซอรวส uddi_operation ENUM

{save_business, save_service, …} เปนโอเปอเรชนทก าหนดโดยมาตรฐาน UDDI Registry ท publisher ไดท าการลงทะเบยนเวบเซอรวส เชน save_business, save_service เปนตน

ws_id INT เปนรหสของเวบเซอรวสทถกท าการลงทะเบยนซงรวมทงเปนการลงทะเบยนใหม แกไข และลบ

timestamp DATETIME เปนการบนทกเวลาปจจบน

ตารางท 10.8 publisher_profile Field Type Description

pid INT [Primary Key / Auto Increasement]

เปนรหสของผทมาลงทะเบยนกบระบบทะเบยนเวบเซอรวส ซงเรยงตามล าดบ

publisher_id VARCHAR(20)

เปนรหสซงใชเปนชอของ publisher ในการลงทะเบยนเวบเซอรวส

username VARCHAR(20) เปนชอ username ในการลอกอนไปยงสวนของเวบแอพพเคชน

password VARCHAR(32) เปนชอ password ในการลอกอนไปยงสวนของเวบแอพพเคชน

fname VARCHAR(40) เปนชอของ publisher lname VARCHAR(40) เปนนามสกลของ publisher mname VARCHAR(5) เปนชอกลางของ publisher wphone VARCHAR(20) เปนหมายเลขโทรศพททท างานของ publisher mphone VARCHAR(20) เปนหมายเลขโทรศพทมอถอของ publisher email VARCHAR(40) เปนทอยอเมลของ publisher www VARCHAR(100) เปนทอยเวบเพจของ publisher

Page 60: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 60

ตารางท 10.9 blog_profile Field Type Description

blog_id INT [Primary Key / Auto Increasement]

รหสของบลอก

blog_url DATE URL ของบลอก author VARCHAR(50) ผแตงบลอก

ตารางท 10.10 ws_blogs Field Type Description

ws_id INT [Primary Key / Auto Increasement]

รหสของเวบเซอรวส

blog_id INT รหสของบลอกเกยวกบเวบเซอรวส date_updated DATE วนทบนทกขอมลความสมพนธระหวางเวบเซอรวส

และบลอกทเกยวของ

ตารางท 10.11 comment_profile Field Type Description

comment_id INT [Primary Key / Auto Increasement]

รหสของขอคดเหน

body VARCHAR(200) เนอหาของขอคดเหน author VARCHAR(50) ผเขยนขอคดเหน

ตารางท 10.12 ws_comments Field Type Description

ws_id INT [Primary Key / Auto Increasement]

รหสของเวบเซอรวส

comment_id INT รหสของขอคดเหน

Page 61: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 61

ตารางท 10.13 service_stats Field Type Description

ws_id VARCHAR(41) Reference [service_name(service_key)]

รหสของผทมาลงทะเบยนกบ UDDI ซงเรยงตามล าดบ

num_all_search INT จ านวนผลลพธของการคนหาทงหมด (find_service)

num_search_via_webapp INT จ านวนผลลพธของการคนหาผานเวบแอปพลเคชน

num_search_via_ws INT จ านวนผลลพธของการคนหาผานเวบเซอรวส num_all_visitor INT จ านวนผใชงานคลกดขอมลทงหมด

(get_service_detail) num_visitor_via_webapp INT จ านวนผใชงานคลกดขอมลผานเวบแอปพลเคชน num_visitor_via_ws INT จ านวนผใชงานดขอมลผานเวบเซอรวส num_all_validation INT num_validate_via_webapp INT จ านวนผทดสอบการเรยกใชเวบเซอรวส num_all_vote INT จ านวนครงทโหวตทงหมด num_vote_via_web INT จ านวนครงทโหวตผานเวบแอปพลเคชน

Page 62: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 62

11. ความตองการและการตดตงระบบ (System Requirements and Installation) 11.1 ความตองการของระบบ (System Requirements)

JDK v5 ซงตดตงบน $JAVA_HOME Apache Tomcat v6.0 ซงตดตงบน $TOMCAT_HOME MySQL v5 11.2 การตดตงระบบ (System Installation) การตดตง jUDDI (jUDDI Installation) 1. ดาวนโหลด jUDDI[12] มาตดตงไดจาก [http://ws.apache.org/juddi/releases.html] เวอรชนทใชคอ jUDDI v0.9rc-4

รปท 11.1 เวบส าหรบดาวนโหลด jUDDI

2. เปดไฟล juddi-bin-0.9rc4.zip และตดตงไปยง $JUDDI_HOME 3. รน SQL command จาก $JUDDI_HOME/sql/mysql โดยใชค าสง

mysql -u root -p < $JUDDI_HOME/sql/mysql/create_database.sql mysql -u root -p < $JUDDI_HOME/sql/mysql/insert_publishers.sql ระบบจะสรางฐานขอมลชอวา juddi ขนมาพรอมกบขอมลตางๆ ทจ าเปนส าหรบ UDDI Registry

Page 63: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 63

4. คดลอกไฟลจาก $JUDDI_HOME/webapp/juddi ไปยง $TOMCAT_HOME/webapp/juddi จากนนจงรนเวบบารวเซอรเพอทดสอบหนาทท าการอพโหลดไดท [http://localhost:8080/juddi/]

รปท 11.2 หนาแรกของ jUDDI เมอท าการตดตงบน Tomcat

5. ถาท าการ validate จะพบวายงขาด JDBC DataSource อย ใหท าการ shutdown Tomcat ลงกอน

รปท 11.3 ตองสราง JDBC DataSource ทางไฟล service.xml เสยกอน

Page 64: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 64

6. แกไข $TOMCAT_HOME/conf/server.xml ดงน เพม element Context ลงไปโดยมเนอหาดงตอไปน แทรกไวทายสดกอนถง </Host> โดยมขอความดงน <Host …> …

<Context path="/juddi" docBase="juddi" debug="5" reloadable="true" crossContext="true"> <Logger className="org.apache.catalina.logger.FileLogger"

prefix="localhost_juddiDB_log" suffix=".txt" timestamp="true"/> <Resource name="jdbc/juddiDB" auth="Container" type="javax.sql.DataSource"

maxActive="100" maxIdle="30" maxWait="10000" username="root" password="mysql" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/juddi?autoReconnect=true" validationQuery="SELECT COUNT(*) FROM PUBLISHER" />

</Context> </Host> หมายเหต : ส าหรบการตดตง juddi ไวบน $TOMCAT_HOME/webapp/juddi โดยใชฐานขอมล MySQL ซงลอกอนโดย username: root และ password: mysql และตองท าหลงจากขน 1.5 เทานนเพอปองกนการ Start Tomcat Server ทไมสมบรณหากยงไมท าการ deploy /juddi

7. ท าการ startup Tomcat ขนมาใหมและกลบไปทดสอบทหนา [http://localhost:8080/juddi/validate.jsp] ถาระบบท างานถกตองจะเหนดงรป

Page 65: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 65

รปท 11.4 jUDDI สามารถท างานไดจะแสดงสเขยวทงหมด

8. สามารถทดสอบและใชงาน UDDI Registry ไดโดยไปยงหนา console [http://localhost:8080/juddi/console/] ซงจดน UDDI สามารถใหบรการในรปแบบเวบเซอรวสไดทนท

Page 66: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 66

เอกสารอางอง (References)

[1] W3C, “Web Services Architecture”, February 2004, Retrieved April 13, 2007, from http://www.w3.org/TR/ws--arch/ [2] W3C, “Extensible Markup Language (XML)”, September 2006, Retrieved April 13, 2007, from http://www.w3.org/XML/ [3] W3C, “Web Services Description Language (WSDL) Version 2.0 Part 1: Core Language”, March 2004, Retrieved April 13, 2007, from http://www.w3.org/TR/2004/WD-wsdl20-20040326/ [4] W3C, “SOAP Version 1.2 Part 0: Primer”, June 2003, Retrieved April 13, 2007, from http://www.w3.org/TR/2003/REC-soap12-part0-20030624/ [5] Steve Graham, Simeon Simeonov, Toufic Boubez, Doug Davis, Glen Daniels, Yuichi Nakamura, Ryo Neyama, “Building Web Services with Java: Marking Sense of XML, SOAP, WSDL, and UDDI”, Sams Publishing, Indiana, 2002 [6] Microsoft Corporation, “Microsoft UDDI Business Registry (UBR) node”, Retrieved April 13, 2007, from http://uddi.microsoft.com [7] SAP Corporation, “SAP UDDI Business Registry”, Retrieved April 13, 2007, from http://uddi.sap.com/ [8] OASIS Open, “UDDI Version 3 Features List”, 2006, Retrieved Apirl 13, 2007, from http://www.uddi.org/pubs/uddi_v3_features.html [9] Sun Microsystems, “Java SE Downloads”, Retrieved April 14, 2007, from http://java.sun.com/javase/downloads/index.jsp [10] Sun Microsystems, “Java EE Downloads”, Retrieved April 14, 2007, from http://java.sun.com/javaee/downloads/index.jsp [11] Apache Software Tomcat, “Apache Tomcat 6 Downloads”, Retrieved April 14, 2007, from http://tomcat.apache.org/download-60.cgi [12] Apache Software Foundation, “Welcome to jUDDI”, Retrieved April 14, 2007, from http://ws.apache.org/juddi/ [13] Apache Software Foundation, “Apache Axis2/Java”, Retrieved April 14, 2007, from http://ws.apache.org/axis2/ [14] INSPIRE IT, “Ruddi: Open Source UDDI Technology by INSPIRE IT”, Retrieved April 14, 2007, from http://www.ruddi.biz/

Page 67: 1. บทน า (Introduction) - Khon Kaen Universitykrunapon/research/uddi-registry/UDDI_Registry_Report.pdf · คู่มือการใช้งานโปรแกรมนั่นเอง

รายงานการศกษาและออกแบบระบบทะเบยนเวบเซอรวสสาธารณะ 67

[15] MySQL AB, “MySQL: The World’s most popular open source database”, Retrieved April 15, 2007, from http://www.mysql.com/ [16] Sourceforge.net, “WSDL4J: Web Services Description Language for Java”, Retrieved April 15, 2007, from http://sourceforge.net/projects/wsdl4j [17] StatCounter Free Invisible Web tracker, Hit counter and Web stats, Retrieved April 13, 2007, from http://www.statcounter.com/ [18] ProgrammableWeb: Mashups and the Web as Platform, Retrieved April 13, 2007, from http://www.programmableweb.com/