1. Trang chủ
  2. » Công Nghệ Thông Tin

Tạo ra các dịch vụ WEB dành cho DB2 9 pureXML ppt

23 197 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 23
Dung lượng 657,28 KB

Nội dung

Tạo ra các dịch vụ WEB dành cho DB2 9 pureXML Một kỹ thuật điển hình để tạo ra các dịch vụ WEB từ dưới lên (bottom up) cho dữ liệu XML Vijay Bommireddipalli, Kiến trúc sư giải pháp của nhóm Data Studio Enablement, IBM Tóm tắt: Các dịch vụ WEB là các khối xây dựng quan trọng để đạt được kiến trúc theo hướng dịch vụ (SOA). Khi có thêm nhiều ứng dụng chuyển hướng tới kiến trúc theo hướng dịch vụ, thông thường là cần phả i đưa ra các chức năng ứng dụng như các dịch vụ WEB. Mục đích của bài viết này là để trình bày làm như thế nào để bạn có thể dễ dàng tạo ra các dịch vụ WEB bằng cách sử dụng một lớp Java đơn giản. Giới thiệu Ngày nay, các dịch vụ WEB là một thành phần quan trọng của SOA và cho phép tạo ra các giải pháp linh hoạt và phân hoạch cao. Các dịch vụ WEB có thể được xây dựng bằ ng cách sử dụng phương pháp tiếp cận hoặc từ trên xuống (top-down) hoặc từ dưới lên (bottom-up). Trong phương pháp tiếp cận từ trên xuống, chúng ta sẽ bắt đầu với một đặc tả kỹ thuật dịch vụ (ví dụ, một tệp WSDL) và sau đó thực hiện các mã mức dưới để phù hợp với đặc điểm kỹ thuật đưa ra. Trong phương pháp tiếp cận từ d ưới lên, chúng ta sẽ bắt đầu bằng một chương trình Java và đưa ra các chức năng như dịch vụ web. IBM giới thiệu tính năng pureXML trong DB2 9, cho phép dữ liệu XML sẽ được lưu nguyên dạng trong cơ sở dữ liệu. Nó tạo ra XML – như là kiểu dữ liệu lớp đầu tiên trong DB2, và một cột của kiểu dữ liệu XML có thể lưu trữ bất kỳ khuôn dạng XML được biết trong các dạ ng cấu trúc cây nguyên thủy trong cơ sở dữ liệu. Sau khi dữ liệu được lưu giữ trong cơ sở dữ liệu như XML, dữ liệu có thể được truy vấn rất hiệu quả, như là XML không cần phải phân tích cú pháp tại thời điểm thực hiện khi đánh giá câu truy vấn. Sau đó chúng ta có thể sử dụng XQuery, SQL, hoặc bất kỳ giao diện phát triển ứng dụng mà DB2 cung cấp, để truy cập và thao tác dữ liệu XML. XForms là một công nghệ giao diệ n điện tử dựa trên XML, có thể gửi khuôn dạng dữ liệu như là một thể hiện dữ liệu XML. Nó là một khuyến nghị của W3C và độc lập về nền tảng và thiết bị. XForms chỉ tách mô hình dữ liệu từ sự trình bày mà cho phép dữ liệu người sử dụng được gửi đi dưới dạng XML. Người nhận các dữ liệu này sau đó có thể lưu tr ữ và thao tác với người sử dụng đã gửi dữ liệu như là một thể hiện của XML. Có nhiều cách mà trong đó các dữ liệu có thể được gửi bằng cách sử dụng XForms. Trong ví dụ này, hãy sử dụng các dịch vụ WEB. Sử dụng XForms cho giao diện người sử dụng cuối, các dịch vụ WEB được xem như là một cỗ máy phương tiện giao thông, và với DB2 9 cho việc lưu trữ, chúng ta có th ể tạo một giải pháp thực sự XML end-to-end mà có thể co giãn để thay đổi và làm giảm đáng kể thời gian phát triển ứng dụng. Kiểm tra Tài nguyên để biết thêm thông tin chi tiết liên quan đến DB2 9, XForms, và Dịch vụ Web. Các yêu cầu Dưới đây là những yêu cầu cần thiết để hiểu rõ hơn về những thông tin được trình bày trong bài viết này: • Quen thuộc với DB2 9 và các tính năng pureXML. Kiểm tra Tài nguyên của bài viết này để làm quen với các tính năng pureXML của DB2 9. • Kinh nghiệm làm việc với RAD và về khả năng triển khai và gỡ bỏ các ứng dụng bằng cách sử dụng môi trường thử nghiệm WebSphere Application Server • Quen thuộc với khái niệm phát triển các dịch vụ WEB Về đầu trang Yêu cầu hệ thống Phát triển phía Máy chủ 1. DB2 9 với pureXML Bạn cũng có thể sử dụng miễn phí DB2 Express-C. DB2 Express-C có thể được chạy trên máy chủ dual-core CPUs, có đến 4 GB bộ nhớ, với thiết lập hệ thống lưu trữ bất kỳ và không có giới hạn về kích thước cơ sở dữ liệu hay bất cứ điều hạn chế nào khác. Kiểm tra ph ần các nguồn cho các liên kết để tải về Express-C. 2. RAD Version: 7.0.0 (hoặc mới hơn) Lưu ý: Ví dụ này thông tin chi tiết các bước để kiểm tra kết quả, bằng cách sử dụng phiên bản WebSphere Application Server 6.1.0.2 thử nghiệm mà đi kèm với RAD. Bạn có thể chọn để xuất tập tin WAR và triển khai lên một WebSphere Application Server duy nhất (phiên bản 6.1.0.2 và mới hơn). Ví dụ sẽ không thành công trên phiên bản thấp hơn của WebSphere Application Server. Phía Client • Mozilla Firefox 1.5.x hoặc mới hơn (tốt nhất là Firefox 2.0.x) với những trình bổ sung (plugin) XForms. Các XForms trình bổ sung có thể được cài đặt từ trang Add-on của trình duyệt Firefox. Để cài đặt trình bổ sung XForms, chạy URL này sử dụng Firefox 2.0.x, và chọn Cài đặt ngay bây giờ. Về đầu trang Thủ tục Tổng hợp Ví dụ này bạn đưa bạn đi qua các thế hệ của các dịch vụ WEB dành cho dữ liệu XML bằng cách sử dụng phương pháp tiếp cận từ dưới lên. Việc cài đặt một chương trình Java (FormServices.java) được xem như là một điểm bắt đầu. Chương trình Java này có chứa thao tác truy cập dữ liệu và phương pháp cập nhật đối vớ i dữ liệu cột XML của cơ sở dữ liệu ví dụ DB2 9. Kiểm tra thanh công cụ có tiêu đề "FormServices.java explained" cho một giải thích chi tiết về nội dung của chương trình Java. Sau đó, chúng ta sẽ đưa ra những phương pháp trong chương trình Java như các dịch vụ WEB sử dụng công cụ RAD. Cuối cùng, chúng ta sẽ kiểm tra các dịch vụ WEB, sử dụng các Xforms được cung cấp. Hãy xem xét theo từng bước 1. Tạo cơ sở dữ li ệu ví dụ và bảng xmlcustomer 1. Tạo ra một cơ sở dữ liệu ví dụ về bảng mã UTF8 (nếu nó không tồn tại), ví dụ: DB2 tạo ví dụ db sử dụng codeset UTF8 của Hoa Kỳ DB2 9 sử dụng bảng mã cơ sở dữ liệu UTF8 để tạo cột kiểu dữ liệu XML. 2. Tại dấu nhắc lệnh DB2, tạo ra bảng xmlcustomer bằng cách sử dụng các lệnh sau: connect to sample CREATE TABLE XMLCUSTOMER( CID INT NOT NULL PRIMARY KEY, INFO XML ) Cột INFO có thể lưu trữ bất kỳ khuôn dạng XML nào. Bạn có thể thử chèn bằng cách gõ lệnh sau tại dấu nhắ c lệnh DB2: insert into xmlcustomer values ( 9999, '<test/>'); 2. Chạy RAD và tạo ra dự án "Dynamic Web Project." 1. Hãy chắc chắn rằng chúng ta đang ở trong ngữ cảnh Web. (nếu không, chọn Window > Open Perspective > Web để tiến hành.) 2. Gõ "XForm" như là tên của dự án (chú ý chữ hoa). 3. Sử dụng các ngầm định và nhấp chuột vào nút Finish. Hình 1. Tạo lập một dự án Web 3. Nhập các tập tin mã nguồn Java được cung cấp và thực hiện những thay đổi cần thiết 1. Mở dự án XForm được tạo ra ở trên cho đến khi thấy thư mục Java Resources. 2. Nhấp chuột phải và chọn New > package. Chỉ ra "com.ibm.test" như là tên của gói ứng dụng (package) và nhấp chuột vào nút Finish. Hình 2. Tạo ra package 3. Nhắp chuột phải trên gói vừa tạo và chọn Import > File System và nhập vào FormServices.java (tệp mã nguồn Java cung cấp). Giải thích chi tiết FormServices.java: Mã nguồn Java FormServices.java bao gồm hai lớp: • Lớp DB: Lớp này xử lý về kết nối cơ sở dữ liệu. Lưu ý rằng chúng ta cần phải tạo ra các thay đổi tới môi trường để chạy chương trình. • Các phương thức: Kết nối: Cho phép mã ứng dụng kết nối vào cơ sở dữ liệu DB2. Phương thức kết nối sử dụng loại hình 4 trình điều khiển tổng hợp Java Database Connectivity (JDBC). Ngắt kết nối: Ngắt kết nối của ứng dụng từ cơ sở dữ liệu và giải phóng tài nguyên JDBC. • Lớp FormServices: Lớp này có các phương thức để thao tác dữ liệu trong cơ sở dữ liệu và lấy dữ liệu sẽ được hiển thị trên biểu mẫu(form). Những phương thức này được đưa ra như các dịch vụ WEB. Có ba phương thức cơ bản cho phép thao tác dữ liệu XML. Cả ba phương thức được lặp đi lặp lại để cho phép dữ liệu XML để được x ử lý như các chuỗi. Các phương thức được mô tả như sau: • Các phương thức: insertFormData: Phương thức này lấy dữ liệu XML nhập vào và ghi lại chúng trong một cột XML của cơ sở dữ liệu DB2. Lưu ý rằng XML được nhập nên là dữ liệu XML (ví dụ, không chuỗi thoát như &lt;). retrieveFormData: Phương thức này lấy dữ liệu lưu trữ trong một cột XML dựa trên duy nhất một khoá. retrieveFormIDs: Phương thức này lấy ID và trả lại chúng XML phù hợp với các XForm. Bạn có th ể sử dụng phương thức này để tạo một thực đơn (menu) thả xuống trong vòng một biểu mẫu giao diện. Ba phương thức *AsString() có cùng một phương thức chủ yếu như trên, nhưng thay vì chuyển giao dữ liệu XML trực tiếp, XML được chuyển đổi thành một chuỗi ký tự. Vì vậy, <hello/> trở thành “&lt;hello/&gt;”. Những phương thức thuận tiện được cung cấp để chúng ta có thể sử dụng WEB service explorer xây dựng sẵn để kiểm tra nó. genSOAPElement: Đây là một phương thức trợ giúp được sử dụng để chuyển đổi các payload từ một chuỗi ký tự vào một SOAPElement. genStringfromSOAP: Đây là một phương thức trợ giúp được sử dụng để chuyển đổi các payload SOAPElement đến một chuỗi ký tự. Hình 3. Nhập mã nguồn ví dụ FormServices.java 4. Tìm theo mẫu dưới đây //Thay đổi và thực hiện các thay đổi nếu cần thiết, cho mỗi môi trường của bạn. Các chú thích trong các mã nguồn này sẽ giúp hướng dẫn chúng ta thông qua các thay đổi. 5. Nếu chúng ta làm theo ví dụ này như trình bày, sự thay đổi cần thiết sẽ là userid và mật khẩu trong lớp Cơ sở dữ liệu mà cũng được đánh dấu bằng các mẫu //Thay đổi (như trên). [...]... đầu trang Kết luận Chúng ta vừa thấy làm thế nào để tạo ra các dịch vụ WEB theo tiếp cận từ dưới lên cho dữ liệu XML trong DB2 pureXML Những dịch vụ này có thể lưu trữ và lấy ra dữ liệu XML nhập vào và từ DB2 9 bằng cách sử dụng SOAP qua các dịch vụ WEB HTTP Các dịch vụ có thể chèn vào và lấy ra XML như các chuỗi thoát hoặc như các XML thực tế trên kết nối Chúng ta có thể sửa đổi mã nguồn Java cho phù... tất cả các dịch vụ được kiểm tra để được đưa ra như là một dịch vụ web, và sau đó nhấn vào Finish Lưu ý: nhấn OK để đến cảnh báo đưa ra (xem ghi chú ở trên để có giải thích chi tiết) Hình 6 Chọn phương pháp đưa ra các dịch vụ WEB 5 Nhấn Start Server nếu chúng ta được nhắc nhở để làm điều đó Các dịch vụ tạo ra sẽ được đưa ra trên các WebSphere Application Server thử nghiệm 5 Chạy thử XForms trên WebSphere... lạc nào Hình 9 Kiểm tra việc chèn thêm dịch vụ bằng cách sử dụng một xform 5 Nếu không có lỗi, chúng ta nên xem biểu mẫu nhận được Chỉ ra cùng một ID như được xác định trên việc chèn và bấmRetrieve 6 Thời điểm này, các xform tạo ra một dịch vụ WEB gọi đến dịch vụ retrieveFormData, để lấy dữ liệu người sử dụng từ DB2 như là một thể hiện XML và liên kết nó vào xform Hình 10 Kiểm tra dịch vụ nhận được... nhấn Web Services > Create Web Service Nếu chúng ta không nhìn thấy thực đơn dịch vụ WEB, hãy đọc để xem làm thế nào để kích hoạt nó 5 Nếu chúng ta không nhìn thấy thực đơn dịch vụ WEB Chúng ta có thể cho phép các khả năng của các dịch vụ WEB của phiên làm việc Để làm như vậy, nhấn Windows > Preferences > Workbench > Capabilities và kiểm tra Web Service Developer để thấy nó được kích hoạt Hình 4 Tạo ra. .. Developer để thấy nó được kích hoạt Hình 4 Tạo ra các dịch vụ WEB từ mã nguồn Java 3 Kiểm chứng rằng các thiết lập được hiển thị như dưới đây Nhấn OK trên các thông báo đưa ra Lưu ý: Khi các dịch vụ được tạo ra, có công cụ để liên kết các kiểu dữ liệu Java khác nhau tới các kiểu XSD tương đương của nó như được định nghĩa trong đặc tả kỹ thuật JAX-RPC Máy xử lý IBM WebSphere SOAP sẽ liên kết kiểu dữ liệu javax.xml.soap.SOAPElement... thoát (< instead of “ Java Build Path > Add External Jars > và chọn db2jcc.jar từ sự cài đặt DB2( \sqllib\java) 5 Đưa ra các mã nguồn Java như là một dịch vụ WEB 4 Nhấn nút phải vào FormServices.java, . Tạo ra các dịch vụ WEB dành cho DB2 9 pureXML Một kỹ thuật điển hình để tạo ra các dịch vụ WEB từ dưới lên (bottom up) cho dữ liệu XML Vijay Bommireddipalli,. Hình 4. Tạo ra các dịch vụ WEB từ mã nguồn Java 3. Kiểm chứng rằng các thiết lập được hiển thị như dưới đây. Nhấn OK trên các thông báo đưa ra. Lưu ý: Khi các dịch vụ được tạo ra, có công. thiệu Ngày nay, các dịch vụ WEB là một thành phần quan trọng của SOA và cho phép tạo ra các giải pháp linh hoạt và phân hoạch cao. Các dịch vụ WEB có thể được xây dựng bằ ng cách sử dụng phương

Ngày đăng: 08/08/2014, 14:20