Saturday, August 16, 2014

Describe Java API for Webservice (Mô tả các API trong Web Service)

1. Giới thiệu:

   J2EE sẽ cung cấp 4 bộ thư viện APIs để chúng ta có thể dễ dàng làm việc với Web Service:

            - Java API for XML Processing (JAXP).
            - Java API for XML-based RPC (JAX-RPC).
            - Java API for XML Registries (JAXR).
            - SOAP with Attachments API for Java (SAAJ).



Minh hoạ cho các thư viện trong một dự án thực nghiệm bán Coffee


2. Thành phần:

     Để có cách nhìn khái quát hơn, chúng ta sẽ tiến hành đánh giá bốn thư viện chính và các thành phần khác đóng góp quan trọng trong Web Service.

            
        a. XML Web Service:
                
                 Các công việc làm việc của XML trên Web Service đều sẽ dựa trên các giao thức HTTP, XML, SOAP, TCP/IP.

                  * Đặc điểm:

                        - Cấu trúc phi trạng thái .
                        - Cấu trúc không đồng bộ 
                        - Nền tảng và ngôn ngữ hoạt động độc lập.


XML Web Services sẽ giúp Clients và Servers kết nối dễ dàng hơn.


         b. Java API for XML Processing (JAXP):

            Java API for XML Processing có khả năng cung cấp các chứng thực cũng như phân tích các tài liệu XML để viết các ngôn ngữ JAVA. Để phục vụ việc cung cấp chúng cần các thư viện con khác như:

                   - Thư viện Simple API for XML (SAX2) để đọc file XML dù nhiệm vụ của nó là không thể thực hiện được trên dữ liệu.
                   - Thư viện Document Object Model (DOM2) để chỉnh sửa XML.
                   - Thư viện Transformer để chuyển đổi các thông tin (như minh họa ở dưới).


Minh họa Transformer trong JAXP

Về JAXP, mình từng có bài viết minh họa bộ thư viện này qua bài viết: Introduction to JAXP (Giới thiệu về JAXP)


       c. Java API for XML-based RPC (JAX-RPC):

               Server-Side RPC (Remote Procedure Calls) Runtime là nơi cung cấp các dịch vụ dành cho Web Service. Trong khi đó Client-Side RPC Runtime là nơi cần dịch vụ.



         * Lợi ích mà nó mang lại:

               - Môi trường SOAP là chuẩn được sử dụng trên Web Service
               - Sử dụng 2 quá trình marshalling and unmarshalling. (Được hiểu là quá trình chuyển đổi bộ nhớ một Object)

         * Cách làm việc (nhìn sơ đồ minh họa ở trên):

               - Synchronous request- response mode.
               - One way RPC mode
               - Non-blocking RPC invocation mode.


     d. Java API for XML Registries (JAXR):
         
            JAXR có mối quan hệ với ba thành phần chính đó là:

                             - ebXML Registry.
                             - UDDI Registry.
                             - Other: Là các thành phần khác phục vụ cho Web Service Provider.

Minh họa cho JAXR


         e. SOAP with Attachments API for Java (SAAJ):

                    SAAJ được hiểu cho phép người dùng (rộng hơn là Client) gửi thông tin SOAP với đính kèm có sẵn trong Web Service.


Minh họa mô hình hoạt động của SAAJ


3. Nhận xét:


 "Bài viết ngày hôm nay không mục đích gì khác ngoài việc giới thiệu qua cho các bạn về những thư viện quan trọng trong Web Service.


Hi vọng nó sẽ là tiền đề tốt cho các bạn hiểu hơn và bắt tay vào những công việc đòi hỏi yêu cầu cao hơn trong Web Service."

No comments:

Post a Comment