Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Dễ dàng cho phép các cột pureXML của bạn được tiếp cận thông qua các phương thức dịch vụ Web Susan Malaika ([email protected]) Chuyên viên kỹ thuật cao cấp IBM Japan 19 08 2008 (Xuất bản lần đầu tiên vào ngày 22 05 2009) Christian Pichler Giải pháp máy chủ dữ liệu IBM Universal Services (các dịch vụ phổ thông) là tập các phương thức cơ sở dữ liệu, bao gồm chèn (insert), cập nhật (update), xóa (delete), và truy vấn (query), được thể hiện như là các phương thức của dịch vụ Web. Những dịch vụ này cho phép mọi người có cột pureXML™ trong cơ sở dữ liệu DB2® cài đặt các phương thức cơ sở dữ liệu của dịch vụ Web một cách nhanh chóng, chẳng hạn cho việc mô phỏng. Sau đó các dịch vụ này cho phép người dùng truy vấn và sử các dữ liệu XML lưu trữ trong cột pureXML thông qua REST hoặc SOAP, các giao thức có thể thực thi như là nền tảng cho việc phát triển hơn nữa nhiều ứng dụng khác nhau, như các biểu mẫu (form) hoặc các ứng dụng SOA. Bài viết này giúp bạn bắt đầu với việc cấu hình, thử nghiệm và thay đổi Universal Services. Để hiểu cụ thể hơn, hãy xem hướng dẫn từng bước trong tệp readme đi kèm khi tải Universal Services xuống. Giới thiệu Universal Services là tập các phương thức cơ sở dữ liệu ổn định nhưng đơn giản cho phép truy vấn và sửa đổi dữ liệu XML được lưu trong cột pureXML của cơ sở dữ liệu DB2. Các phương thức này bao gồm chèn, cập nhật, xóa và truy vấn được thể hiện như là các dịch vụ web thông qua cơ chế Data Web Service (dịch vụ Web dữ liệu). Dịch vụ Web dữ liệu cho phép các phương thức cơ sở dữ liệu như chèn hoặc cập nhật thể hiện như là các dịch vụ web mà không cần viết mã. Dịch vụ Web dữ liệu đồng thời cho phép lưu các thủ tục hay các hàm do người dùng định nghĩa để được thể hiện như các dịch vụ Web. Sự phát triển của Dịch vụ Web dữ liệu đã đề cập trong hướng dẫn developerWorks. Danh sách các hướng dẫn và bài viết được cung cấp trong phần Tài nguyên © Copyright IBM Corporation 2009 Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Nhẫn hiệu đăng ký Trang 1 của 20 developerWorks® ibm.com/developerWorks/vn/ Hình 1 cung cấp tổng quan về kiến trúc của Universal Services. Hình 1. Tổng quan kiến trúc của Universal Services Mục tiêu của Universal Services là cho phép bất cứ cột pureXML trong cơ sở dữ liệu DB2 được truy vấn và sửa đổi thông qua các phương thức dịch vụ Web, các phương thức này được sử dụng thông qua cấu hình và các bước triển khai dễ dàng. Các bước này được mô tả trong các phần sau của bài viết, để biết chi tiết về những bước này hơn nữa, có thể tham khảo tệp readme khi tải gói Universal Services với đầy đủ chỉ dẫn từng bước. Bài viết bao gồm cách cấu hình, triển khai và sửa đổi Universal Services trên một cơ sở dữ liệu mẫu và được chia thành ba phần. • Cài đặt cơ sở dữ liệu mẫu: Mô tả các cài đặt cơ sở dữ liệu mẫu mà được sử dụng trong bài viết này để thực hiện cấu hình Universal Services • Cài đặt Universal Services: Mô tả các cấu hình và triển khai Universal Services • Sửa đổi Universal Services: Mô tả cách thay đổi Universal Services cho phù hợp với môi trường. Chi tiết về từng bước bạn có thể tìm thấy ở phần tải xuống trong từng phần của bài viết Điều kiện tiên quyết Tải DB2 Express-C miễn phí Tiếp tục Tải xuống và sử dụng máy chủ dữ liệu XML và dữ liệu quan hệ chức năng đầy đủ mà không phải trả phí. Để cài đặt và chạy Universal Services, bạn cần có DB2 9.x, môi trường Java Runtime 1.5.0, và máy chủ Web (chẳng hạn WebSphere® Application Server V6.x hoặc Apache Tomcat V6.x), được cài đặt trên hệ thống của bạn. Chú ý rằng Java Runtime là một phần của quá trình cài đặt DB2. Bạn đồng thời cần tải hai tài liệu là gói IRS e-File 1120, một phần của việc trình diễn trực tuyến Industry Formats và Services, và bản thân gói Universal Services. Bạn có thể tìm các liên kết của những tài liệu này trong Tải xuống của bài viết. Những dữ liệu này là cần thiết để theo dõi từng bước mà bài viết giới thiệu. Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 2 của 20 ibm.com/developerWorks/vn/ developerWorks® Cài đặt cơ sở dữ liệu mẫu Universal Services có thể được cài đặt trên bất kỳ cột pureXML DB2. Để thực hiện cấu hình và cài đặt của những dịch vụ này, các phần sau đây sẽ chỉ ra cách để cài đặt cơ sở dữ liệu mẫu được sử dụng trong suốt bài viết này. Cơ sở dữ liệu mẫu được tạo ra ở đây dựa trên các dữ liệu tải xuống công khai và miễn phí, là một phần của quá trình trình diễn trực tuyến DB2 pureXML được gọi là công nghiệp định dạng và dịch vụ (Industry Formats and Services) với pureXML. Mỗi một tệp được tải xuống chứa các kịch bản cho phép người sử dụng dễ dàng cài đặt một cơ sở dữ liệu được thiết kế cho một lĩnh vực cụ thể, chẳng hạn như lĩnh vực tài chính hay chăm sóc sức khỏe. Kịch bản được sử dụng trong bài viết này tạo ra một cơ sở dữ liệu mẫu và một bảng chứa một cột pureXML, sau đó tải dữ liệu mẫu vào cơ sở dữ liệu. Các tệp tải xuống chứa nhiều kịch bản như quá trình đăng ký lược đồ XML, việc xác nhận sự hợp lệ các tài liệu XML với lược đồ XML đăng ký, và truy vấn dữ liệu XML sử dụng XQuery hoặc SQL/XML, tùy theo sở thích, nhưng không được đề cập trong bài viết này. Nếu muốn biết thêm thông tin về nội dung cụ thể tải xuống, tham khảo Tài nguyên Tạo cơ sở dữ liệu mẫu Bài viết này dựa trên IRS tài liệu tải xuống e-File 1120, phiên bản điện tử của IRS Tax Form 1120. Phần này giả sử bạn đã tải và giải nén gói IRS e-File 1120 vào thư mục làm việc tạm thời. Thư mục làm việc tạm thời chứa các kịch bản cơ sở dữ liệu được sử dụng trong bài viết này là c:\temp \irs1120. Hình 2. Nội dung tài liệu tải xuống IRS e-File 1120, được giải nén vào thư mục làm việc tạm thời Tên của kịch bản thực hiện quá trình cài đặt cơ sở dữ liệu mẫu trên hệ thống của bạn là "start.bat" (trên Linux: "start.sh"). Để thực thi kịch bản này, mở bộ xử lý thao tác lệnh chương trình của DB2script, thay đổi đường dẫn tới thư mục làm việc hiện tại chứa nội dung tệp bạn đã tải xuống. Đường dẫn này bao gồm tệp start.bat mà bạn sắp thực thi. Do đó, tiếp tục và thực thi kịch bản start.bat. Một khi kịch bản kết thúc, bạn nên xem thông báo chỉ ra quá trình cài đặt cơ sở dữ liệu đã hoàn thành chứa trong tài liệu IRS e-File 1120. Giả sử quá trình cài đặt thành công, bây giờ bạn đã có Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 3 của 20 developerWorks® ibm.com/developerWorks/vn/ một cơ sở dữ liệu mẫu trong hệ thống của bạn chứa cột pureXML và dữ liệu mẫu được tải lên cột pureXML. Cụ thể hơn, bảng trong cơ sở dữ liệu chứa cột pureXML có cấu trúc sau: Bảng 1. Tổng quan về bảng IRS1120 Tên cột Loại cột Mô tả ID INTEGER Là ID duy nhất cho mỗi bản ghi được chèn vào trong bảng. COMMENT VARCHAR(1000) Được sử dụng để lưu ghi chú cho mỗi bản ghi. DOCUMENT XML Cột thứ ba của bảng là cột về loại XML, dùng để lưu dữ liệu XML. Đây là tất cả tài liệu RS eFile 1120 XML. Dựa trên cơ sở dữ liệu mẫu, bây giờ có thể chỉ ra cách để cấu hình và cài đặt Universal Services cho một cột pureXML cụ thể, mà là chủ đề của các phần sau. Cài đặt Universal Services Trong phần này, giả sử bạn đã tải và giải nén gói Universal Services vào trong thư mục làm việc tạm thời của máy bạn. Thư mục làm việc cho Universal Services được sử dụng trong bài viết này là c:\temp\UniversalServices. Hình 3. Nội dung của gói Universal Services được giải nén ra thư mục làm việc Khi các tệp và kịch bản cần thiết đã sẵn sàng trong hệ thống, bạn có thể tiếp tục quá trình cài đặt Universal Services, bao gồm ba bước. Những bước này được mô tả chi tiết ở dưới, chỉ ra cách: • Cấu hình Universal Services cho phù hợp với hệ thống cài đặt của bạn • Triển khai Universal Services máy chủ ứng dụng của bạn • Kiểm thử Universal Services bằng một trang đính kèm Cấu hình Universal Services Quá trình cấu hình Universal Services thu được thông qua một kịch bản chứa trong tài liệu tải xuống là tệp "configure.bat" (trong Linux là: "configure.sh"). Tuy nhiên, trước khi thực thi kịch bản, nó cần được chỉnh sửa cho phù hợp với cài đặt hệ thống của bạn, mà được liệt kê trong Bảng 2. Bảng 2. Tổng quan các biến được sử dụng trong kịch bản cấu hình Tên biến DB2INSTALLDIR Mô tả Đường dẫn tới thư mục cài đặt DB2. Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Giá trị (theo cơ sở dữ liệu mẫu) C:\Program Files\IBM\SQLLIB Trang 4 của 20 ibm.com/developerWorks/vn/ developerWorks® DBSCHEMA Tên của lược đồ cơ sở dữ liệu của bảng chứa cột XML. IRS1120ADMIN DBNAME Tên của cơ sở dữ liệu mà Universal Services được sử dụng với. IRS1120 DBTABLE Tên bảng chứa cột XML. IRS1120 DBPRIMARY Tên cột chính của bảng được chỉ ra trong DBTABLE. Cột này có thể kiểu INTEGER hoặc VARCHAR. ID DBCOMMENT Tên cột ghi chú của bảng COMMENT DBXML Tên cột XML của bảng. Đây là cột chứa dữ liệu XML. DOCUMENT Chú ý rằng ba tham biến trong Bảng 2, DBPRIMARY, DBCOMMENT, DBXML, là các biến tương tự trong Bảng 1. Sửa tệp cấu hình Universal Services configuration để tương ứng với thông tin trong Bảng 2. Ví dụ set DBNAME=SAMPLEDB cần được sửa thành set DBNAME=IRS1120. Hình 4 thể hiện tệp cấu hình, sau khi nó được sửa đổi theo giá trị được cung cấp trong Bảng 2. Hình 4. Sửa tệp cấu hình configure.bat Sau khi sửa tệp configure.bat (trong Linux là: configure.sh), có thể thực thi kịch bản mà thực hiện quá trình cấu hình thực sự của Universal Services, chẳng hạn như điều chỉnh tên cột. Sau đó kịch bản tạo ra một tệp lưu trữ (WAR) ứng dụng Web, có chứa tất cả các tệp cần thiết cho ứng dụng Web Universal Services, có thể được triển khai đến máy chủ ứng dụng của bạn. Nhớ rằng, kịch bản phải được thực thi trên bộ xử lý thao tác lệnh chương trình của DB2, nếu không quá trình thực thi sẽ thất bại. Triển khai Universal Services Sửa đổi và thực thi kịch bản configure.bat, như đã mô tả ở phần trước, tạo ra một tệp WAR có thể triển khai được trên máy chủ ứng dụng của bạn. Trước khi triển khai tệp WAR tới máy chủ ứng Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 5 của 20 developerWorks® ibm.com/developerWorks/vn/ dụng, cần cấu hình nguồn dữ liệu (data source) trên máy chủ cho phép Universal Services tiếp cận được cơ sở dữ liệu DB2. Để cài đặt nguồn dữ liệu, tiếp tục quá trình cấu hình chuẩn của máy chủ ứng dụng. Yêu cầu duy nhất là trong quá trình cài đặt, để ý đến tên nguồn dữ liệu phải đáp ứng theo mẫu sau: jdbc/ [database name]. Tên nguồn dữ liệu sử dụng trong bài viết này là jdbc/irs1120. Nếu cần thêm thông tin để cài đặt nguồn dữ liệu, tham khảo hướng dẫn của máy chủ ứng dụng của bạn hoặc đọc tệp readme chứa trong tài liệu tải xuống Universal Services. Tệp WAR được tạo ra có thể được tìm thấy trên thư mục con, được đặt trong thư mục làm việc c:\temp\UniversalServices. Cụ thể, thư mục war chứa hai thư mục con: tomcat và war. Thư mục tomcat chứa tệp WAR để cài đặt trên Apache Tomcat V6.x, trong khi thư mục chứa trong tệp WAR để cài đặt trên WebSphere Application Server V6.x. Để cài đặt tệp WAR trên máy chủ ứng dụng của bạn, làm theo hướng dẫn chuẩn. Nếu cần thêm thông tin, hãy tham khảo hướng dẫn máy chủ ứng dụng của bạn, hoặc đọc tệp readme chứa trong gói Universal Services được tải xuống. Bây giờ bạn có thể kiểm tra quá trình cài đặt bằng trang web thử nghiệm Universal Services, mà đã có sẵn trong quá trình triển khai tệp WAR. Để tiến hành kiểm tra, tiếp tục với phần tiếp theo. Bước thứ hai là để triển khai tệp WAR thực sự trên máy chủ ứng dụng. Tuy nhiên, nó cần được thông báo do sự khác nhau trong các thành phần của dịch vụ Web đòi hỏi phải có WebSphere Application Server V6.x và Apache Tomcat V6.x, kịch bản cấu hình tạo ra hai tệp War riêng, mỗi tệp cho một ứng dụng máy chủ trên. Kiểm tra Universal Services Để đảm bảo quá trình cài đặt và cấu hình Universal Services trên hệ thống của bạn thành công, những dịch vụ này cần được kiểm thử. Cách dễ dàng nhất là sử dụng trang HTML đơn giản, đã có sẵn trong máy chủ ứng dụng trong quá trình triển khai Universal Services. Có thể tiếp cận trang web thử nghiệm Universal Services bằng cách đăng nhập trên trình duyệt đường dẫn URL http://localhost:8080/UniversalServices/testServices.html. Chú ý rằng, tùy vào cài đặt hệ thống, tên máy và cổng của máy chủ mà có thể cần được điều chỉnh phù hợp. Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 6 của 20 ibm.com/developerWorks/vn/ developerWorks® Hình 5. Hình ảnh trang web thử nghiệm Đây là trang thử nghiệm đơn giản nhất cho phép bạn chèn, cập nhật, xóa và truy vấn dữ liệu XML trong cơ sở dữ liệu của bạn thông qua Universal Services. Các dịch vụ Web thể hiện qua các nút trên trang thử nghiệm. Hình 6 cho thấy các dịch vụ Web trả lời. Sau hoạt động của dịch vụ Web, getPrimaryKeys được thể hiện thông nút bấm được cung cấp trên trang thử nghiệm. Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 7 của 20 developerWorks® ibm.com/developerWorks/vn/ Hình 6. Hồi đáp sau khi hoạt động dịch vụ Web getPrimaryKeys được thực hiện Sửa đổi Universal Services Nếu bạn cần phải sửa đổi Universal Services, ví dụ để giới thiệu một tham số mới, bạn có thể mở Universal Services Data Development Project được cung cấp trong phần tải xuống của Universal Services Data Project bằng Data Studio. Những phần sau mô tả cách để nạp vào Project vào Data Studio và cách thức cấu hình dự án đã được nạp vào và Data Studio (ví dụ, điều chỉnh các kết nối cơ sở dữ liệu hoặc điều chỉnh các tên lược đồ cơ sở dữ liệu). Để thực hiện theo các bước được nêu dưới đây, khởi động Data Studio. Nạp vào Universal Services Data Development Project Một khi Data Studio được mở, bấm chuột phải vào vùng trắng trong Data Project Explorer, một thực đơn con xuất hiện. Trong thực đơn con, chọn Import, xem Hình 7. Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 8 của 20 ibm.com/developerWorks/vn/ developerWorks® Hình 7. Chọn Import để tải Universal Services Data Development Project Thủ thuật Import (Import Wizard) sẽ được mở trong một cửa sổ riêng (xem Hình 8). Trong bước đầu tiên của thủ thuật chọn Existing Projects into Workspace, trong nhóm "General." Chọn Next để tiếp tục. Hình 8. Import Wizard -- Chọn nguồn để nạp vào Bước tiếp theo là xác định tệp lưu trữ Universal Services Data Development Project. Để thực hiện, chọn Select archive file. Sau đó, nhấn Browse và chọn tệp lưu trữ. Tệp đó gọi là universal_services_data_studio_project.zip, và được tìm thấy trên thư mục làm việc tạm thời trên Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 9 của 20 developerWorks® ibm.com/developerWorks/vn/ máy của bạn trong quá trình giải nén gói Universal Services. Thư mục làm việc tạm thời trong bài viết này là c:\temp\UniversalServices. Sau khi tệp lưu trữ được chọn, Import Wizard liệt kê tất cả các dự án đang có trong phần lưu trữ (xem Hình 9). Bởi vì tệp lưu trữ được cung cấp trong phần tải xuống có chứa duy nhất Data Development Project cho Universal Services, nên chỉ một dự án được liệt kê trong phần Projects. Lưu ý rằng trong trường bạn đã có một dự án trong không gian làm việc(workspace) mà có cùng tên dự án ("services") như Universal Services, Import Wizard sẽ không liệt kê dự án trong phần Projects. Do đó, Import Wizard không cho phép bạn nạp vào Universal Services Data Development project. Hình 9. Import Wizard -- Chọn tệp lưu trữ Sau khi tệp lưu trữ và dự án được chọn, bấm vào Finish để kết thúc quá trình nạp vào dự án. Sau khi quá trình nạp vào đã kết thúc, bạn có thể xem dự án Universal Services Data Development project trong Data Project Explorer (xem Hình 10). Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 10 của 20 ibm.com/developerWorks/vn/ developerWorks® Hình 10. Dự án Data Development Project đã được nạp vào trong Data Project Explorer Cấu hình kết nối cơ sở dữ liệu Sau khi dự án Universal Services Data Development Project được mở trong không gian làm việc, cần cấu hình kết nối cơ sở dữ liệu. Hình 10 chỉ cho thấy dự án sử dụng kết nối cơ sở dữ liệu tên là "Universal Services Database Connection." Tuy nhiên, bạn có thấy kết nối tham chiếu đến cơ sở dữ liệu tên là SAMPLEDB, trên localhost, trên cổng 50000. Để điều chỉnh thông số kết nối cơ sở dữ liệu cho phù hợp với cấu hình máy bạn, bấm chuột phải vào kết nối cơ sở dữ liệu Universal Services Database Connection, trên Database Explorer, và chọn Edit Connection (xem Hình 11) Hình 11. Tiếp cận thông số kết nối cơ sở dữ liệu thông qua Database Explorer Một cửa sổ riêng mở ra cho phép bạn điều chỉnh các thông số kết nối cơ sở dữ liệu, như tên cơ sở dữ liệu (database name), tên máy chủ (hostname), số cổng (port number), thông tin người dùng Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 11 của 20 developerWorks® ibm.com/developerWorks/vn/ (user information), và nhiều tham số khác nhau (xem hình 12). Lưu ý rằng bạn có kiểm tra các thông số cấu hình một cách nhanh chóng bằng cách bấm vào Kiểm tra kết nối. Đối với Linux: Bạn có thể mở dự án Data Development Project trong Data Studio trên Linux, tham số Class location:, mà xác định vị trí trình điều khiển (driver) cơ sở dữ liệu DB2, cần được điều chỉnh. Trình điều khiển cơ sở dữ liệu được đặt trong thư mục java của thư mục cài đặt java (ví dụ, / home/db2inst1/sqllib/java). Hình 12. Các thông số kết nối cơ sở dữ liệu Cấu hình tên lược đồ cơ sở dữ liệu Tất cả các phương thức SQL được thể hiện như là các phương thức dịch vụ Web, và dự án bạn đã mở lúc trước trong không gian làm việc, sử dụng các câu lệnh SQL đầy đủ. Cái thứ hai nghĩa là tên lược đồ cơ sở dữ liệu đủ tiêu chuẩn làm tên bảng (chẳng hạn SELECT ID FROM IRS1120ADMIN.IRS1120). Một giải pháp thay thế là không mã hóa tên lược đồ cơ sở dữ liệu trong câu lệnh SQL nhưng sử dụng tên lược đồ cơ sở dữ liệu mặc định thay thế. Một cách để điều chỉnh tên lược đồ là tiếp cận và Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 12 của 20 ibm.com/developerWorks/vn/ developerWorks® sửa thuộc tính trong Universal Services Data Development Project. Để thực hiện, bấm chuột phải Universal Services Data Development Projectvà chọn Properties (xem hình 13). Hình 13. Tiếp cận thuộc tính Data Development Project Cửa sổ Properties cho Universal Services Data Development Project mở. Sau đó bấm Development vào thực đơn bên trái cửa sổ, bạn có thể thiết lập tên lược đồ cơ sở dữ liệu sử dụng trong các câu lệnh SQL. Hình 14. Chỉnh sửa tên lược đồ cơ sở dữ liệu Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 13 của 20 developerWorks® ibm.com/developerWorks/vn/ Quan tâm thêm Khi dự án đang mở được điều chỉnh cho phù hợp với cấu hình hệ thống, bạn có thể thay đổi và triển khai Universal Services thông qua Data Studio. Chú ý một phương thức, chẳng hạn runxqueryXML đòi hỏi một hàm do người sử dụng định nghĩa để đăng ký. Để thực hiện, một kịch bản SQL tên là "createXQueryXMLUDF.sql" được cung cấp trong dự án Data Studio Development Project. Tài nguyên về cách tạo và thể hiện các phương thức mới sử dụng Data Studio có thể tìm thấy trong Tài nguyên của bài viết. Lựa chọn khác Khi tùy biến các phương thức cơ sở dữ liệu để chứa thêm các tham số đầu vào và đầu ra, các tham số đánh dấu sẽ được sử dụng. Universal Services hỗ trợ hai loại đánh dấu tham số. Cách thứ nhất thứ nhất là dùng đánh dấu tham số "?", tách tên tham số liên kết để mặc định việc tạo tên một cách tự động, chẳng hạn như "p1"hay"p2". Cách thứ hai là sử dụng đánh dấu tham số ":" và xâu liên kết định nghĩa tham số, chẳng hạn như ":id". Sau đây là ví dụ để minh họa hai cách đánh dấu tham số trên tốt hơn. Ví dụ dựa trên một phương thức cơ sở dữ liệu của Universal Services dùng để xóa một bản ghi khỏi bảng. Các phương thức liệt kê dưới đây có cùng mục đích giống nhau nhưng sử dụng các loại đánh dấu tham số khác nhau: • Cách 1: DELETE FROM DB2ADMIN.SAMPLETABLE WHERE ID = ? • Cách 2: DELETE FROM DB2ADMIN.SAMPLETABLE WHERE ID = :id Dựa vào các phương thức cơ sở dữ liệu, một tệp Web Service Description Language (WSDL) được tạo ra thông qua Data Studio. Tệp WSDL mô tả các phương thức dịch vụ Web, bao gồm các tham số của chúng. Tệp WDSL được tạo ra phụ thuộc vào loại đánh dấu tham số được sử dụng trong phương thức cơ sở dữ liệu. Đối với cách 1, tên tham số trong toán tử dịch vụ Web là các tên được tạo ra một cách tự động, ví dụ "p1" hoặc "p2" (xem ví dụ 1). Ví dụ 1. Trích từ tệp WSDL mà được tạo ra từ cách 1 ... <element name="deleteDocument"> <complexType> <sequence> <element name="p1" nillable="true" type="xsd:string"/> </sequence> </complexType> </element> <element name="deleteDocumentResponse"> <complexType> <sequence> <element name="updateCount" type="xsd:int"/> </sequence> </complexType> </element> ... Đối với cách 2, các tên tham số trong các phương thức dịch vụ Web sử dụng các xâu ký tự giống nhau mà được chỉ rõ trong các phương thức cơ sở dữ liệu, ví dụ,"id" hoặc "document" (xem ví dụ 2). Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 14 của 20 ibm.com/developerWorks/vn/ developerWorks® Ví dụ 2. Trích từ tệp WSDL được tạo ra từ cách 2 ... <element name="deleteDocument"> <complexType> <sequence> <element name="id" nillable="true" type="xsd:string"/> </sequence> </complexType> </element> <element name="deleteDocumentResponse"> <complexType> <sequence> <element name="updateCount" type="xsd:int"/> </sequence> </complexType> </element> ... Các gói được sử dụng làm cơ sở cho bài viết này sử dụng cách 1. Tuy nhiên các gói tải xuống trong bài viết này đồng thời chứa gói Universal Services khác và dự án Data Development project mà sử dụng cách 2. Nếu bạn thích sử dụng cách 2, tìm tệp lưu trữ tên là universal_services_alternative_2.zip (xem hình 15), trong phần tải xuống ở bài viết này. Sau đó bạn có thể sử dụng nội dung của tệp làm cơ sở để cấu hình, triển khai, thử nghiệm và sửa đổi như đã mô tả trong bài viết. Hình 15. Nội dung của gói Universal Services được giải nén vào thư mục làm việc tạm thời trên máy bạn Kết luận và triển vọng Bài viết đã thể hiện tính đơn giản và dễ dàng trong việc thể hiện cột pureXML của một cơ sở dữ liệu DB2 thông qua các phương thức dịch vụ Web, sử dụng các câu lệnh mà không cần mở một công cụ riêng. Quá trình cài đặt Universal Services có thể được sử dụng để xây dựng mẫu hay ứng dụng của riêng bạn. Ba ví dụ sau đã sử dụng Universal Services như một nền tảng trong quá trình thực hiện: • Trình diễn tương tác, trực tuyến cho Industry Formats and Services with pureXML • "Using industry standard data formats with WebSphere ESB and DB2 Version 9 pureXML" (developerWorks, tháng 6, 2007) • "Exposing DB2 Version 9 pureXML using WebSphere Integration Developer" (developerWorks, tháng 9, 2007) • "XForms và DB2 pureXML" (developerWorks, tháng 5, 2008) Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 15 của 20 developerWorks® ibm.com/developerWorks/vn/ Hy vọng Universal Services và các thông tin trong bài viết này sẽ giúp bạn khởi động dự án DB2 pureXML của chính bạn. Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 16 của 20 ibm.com/developerWorks/vn/ developerWorks® Các tải về Mô tả Tên Kích thước Universal Services package UniversalServices.zip 8MB Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 17 của 20 developerWorks® ibm.com/developerWorks/vn/ Tài nguyên Học tập • Industry Formats and Services with pureXML (Dịch vụ và định dạng với pureXML): Hãy tải xuống một loạt các ví dụ miễn phí! Mỗi ví dụ mô tả cách làm việc với định dạng công nghiệp và pureXML dựa trên XML. Những ví dụ này chỉ ra cách đăng ký một lược đồ XML, cách thực hiện kiểm tra tính hợp lý các tài liệu XML, cách truy vấn dữ liệu XML sử dụng XQuery hoặc SQL/XML,... • "IBM Data Studio: Get Started with Data Web Services (IBM Data Studio: Bắt đầu với dịch vụ Web dữ liệu )" (developerWorks, tháng 11, 2007): Giới thiệu một cách đơn giản và chi tiết cách phát triển Dịch vụ Web dữ liệu đầu tiên của bạn. • "Data Web Services: Build Web Services the new way to access IBM database servers (Dịch vụ Web dữ liệu: Xây dựng dịch vụ Web dữ liệu, cách thức mới để tiếp cận máy chủ cơ sở dữ liệu IBM)" (developerWorks, tháng 12, 2007): Tạo ra và tùy biến một dịch vụ Web dữ liệu. Nền tảng lý thuyết hữu ích trên các dịch vụ Web dữ liệu được cung cấp bao gồm một tổng quan kiến trúc trên các dịch vụ Web dữ liệu đó. Bài viết nêu lên các khía cách khác về dịch vụ Web dữ liệu như an ninh. • "Exposing DB2 Version 9 pureXML using WebSphere Integration Developer (Thể hiện DB2 Version 9 pureXML sử dụng WebSphere Integration Developer)" (developerWorks, tháng 9, 2007): Xây dựng một máy trạm để tiếp cận Universal Services. • "Using industry standard data formats with WebSphere ESB and DB2 Version 9 pureXML (Sử dụng công nghiệp định dạng dữ liệu chuẩn với WebSphere ESB và DB2 Version 9 pureXML)" (developerWorks, tháng 6, 2007): Tìm một kịch bản mà chỉ ra cách sử dụng WebSphere Enterprise Service Bus và DB2 9 pureXML có thể giúp công ty về dược phẩm đáp ứng các nghĩa vụ pháp lý về việc thực hiện chuẩn hóa dữ liệu về sản phẩm của công ty. • "XForms and DB2 pureXML (XForms và DB2 pureXML)" (developerWorks, tháng 5, 2008): Học để biết tạo XForms và giao tiếp với một cơ sở dữ liệu DB2 , nơi mà dữ liệu XML được lưu trữ, truy vấn hoặc xóa đi một cách dễ dàng. Đồng thời, xem cách tạo XForms tiếp cận vào DB2 pureXML thông qua Universal Services. • developerWorks Information Management zone: Nghiên cứu tiếp về DB2. Tìm tài liệu kỹ thuật, các bài viết hướng dẫn, thông tin sản phẩm,... • Tiếp tục với sự kiện và webcast mang tính kỹ thuật của developerWorks . Lấy sản phẩm và công nghệ • IBM Data Studio: Tải môi trường phát triển được sử dụng để phát triển dịch vụ Web dữ liệu miễn phí. • DB2 Express-C: Tải xuống phiên bản miễn phí của DB2, có chứa tính năng cốt lõi như các máy chủ dữ liệu khác, chẳng hạn công nghệ pureXML. DB2 Express-C là miễn phí để phát triển, triển khai và phân phối. • Xây dựng dự án phát triển tiếp theo của bạn với phiên bản dùng thử IBM, được tải về trực tiếp từ developerWorks. Thảo luận Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 18 của 20 ibm.com/developerWorks/vn/ developerWorks® • Tham gia vào diễn đàn developerWorks và cộng đồng developerWorks . Tải về thêm • Mã ví dụ: IRS e-File 1120 (Là một phần của công nghiệp định dạng và dịch vụ với thể hiện trực tuyến pureXML—Chọn Tải xuống.) Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 19 của 20 developerWorks® ibm.com/developerWorks/vn/ Đôi nét về các tác giả Susan Malaika Susan Malaika là chuyên viên cao cấp trong IBM Information Management Group (một phần của nhóm phần mềm IBM). Bà tập trung nghiên cứu về XML, Web và cơ sở dữ liệu, là các chuẩn phát triển hỗ trợ dữ liệu cho các môi trường điều khiển tại diễn đần Global Grid. Thêm vào đó bà cũng làm việc như là người phát triển phần mềm của IBM, trước đó bà làm việc trong lĩnh việc phân tích dữ liệu, phát triển và thiết kế ứng dụng Internet. Bà cũng là đồng tác giả sách trên Web và xuất bản các bài báo về xử lý tương tác và XML. Bà là một thành viên của Học viện công nghệ IBM Christian Pichler Christian Pichler là cộng tác viên từ trường Đại kỹ thuật Vien của Áo, Christian đã làm luận văn thạc sĩ cho hai bằng thạc sỹ về Kỹ thuật máy tính và Khoa học máy tính tập trung vào lĩnh vực chăm sóc sức khỏe (health care). Ở IBM, Christian làm việc về các công nghệ lưu trữ XML trong DB2, công nghệ để tiếp cận XML thông qua dịch vụ Web, feed và XForms. Christian là chuyên gia về chuẩn XML trong lĩnh vực chăm sóc sức khỏe. © Copyright IBM Corporation 2009 (www.ibm.com/legal/copytrade.shtml) Nhẫn hiệu đăng ký (www.ibm.com/developerworks/vn/ibm/trademarks/) Các dịch vụ phổ thông (Universal Services) cho pureXML sử dụng các dịch vụ Web dữ liệu (Data Web) Trang 20 của 20