Diễn Đàn Tin Học

Trang 1 / 4 1234 LastLast
Hiển thị kết quả từ 1 đến 10 / 31
  1. #1
    Tham gia
    25-10-2002
    Location
    Can Tho
    Bài viết
    93
    Like
    0
    Thanked 0 Times in 0 Posts

    Rất hay ! [DIS] Trao đổi về Java Web Service

    Công nghệ Web Service hiện đang trở thành một xu hướng mới trong kỷ nguyên Internet. Nó mở ra một hướng mới cho việc liên tác giữa các hệ thống thông tin khác nhau, các ứng dụng chạy trên các nền tảng khác nhau thông qua giao thức SOAP (Simple Objec Access Protocol) trên HTTP.
    Sau khi MS thúc đẩy WS bằng việc cho ra đời .NET, Sun cũng quyết tâm nhảy vào cuộc với Web Service Add on cho J2EE, dùng các Java API cho XML, như JAXP-RPC chẳng hạn.
    Java WS hiện nay có thể dựa vào các trình chứa Servlet như Tomcat chẳng hạn hay dựa vào các trình chứa EJB
    Quote Quote

  2. #2
    Tham gia
    26-08-2002
    Location
    HCM
    Bài viết
    895
    Like
    0
    Thanked 3 Times in 2 Posts
    Có lẽ phải đợi thêm một thời gian nửa thì hai công nghệ này mới đi vào đời sống của Internet (như HTML vậy) .Vì hiện giờ không phải ai cũng cần đến công nghệ "hạn siêu nặng" này.Vũ cũng chỉ dừng lại ở mứa nghiên cứu và chưa phát triển một sp nghiêm túc nào .Vì các công nghệ như JSP / Serverlet + Applet đã quá hoàn hảo.
    Tuy nhiên ,Vũ vẩn theo sát nó .Biết đâu có lúc cần

  3. #3
    Tham gia
    25-10-2002
    Location
    Can Tho
    Bài viết
    93
    Like
    0
    Thanked 0 Times in 0 Posts
    Với Java chúng ta có thể tạo ra các đối tượng có thể triệu gọi từ xa đơn giản thông qua cơ chế RMI, hay cao cấp hơn là EJB và COBRA. Tuy nhiên, những công nghệ này chỉ chịu chơi với thế giới Java mà thôi, không giao tiếp với ai.
    Cùng với sự phát triển rộng lớn của Internet, sự trưởng thành của nhiều nền tảng, công nghệ, ứng dụng khác nhau, nhu cầu liên tác giữa chúng ngày càng cao. XML ra đời như một ngôn ngữ chung của các hệ thống. Với định dạng text, tất cả các hệ thống đều có thể xử lý XML .
    Với Web Service, công nghệ chủ yếu dựa vào XML\SOAP, các hệ thống các ứng dụng có thể liên tác nhau một cách dễ dàng. Chúng ta có thể hình dung có một nhà sản xuất phần mềm xây dựng một dịch vụ web như dịch Anh Việt chẳng hạn và công bố lên một nơi cho đăng ký dịch vụ (giống như một chợ bán dịch vụ). Sau đó chúng ta tìm đến "chợ" đó, hỏi mua và nhận được một bản mô tả về dịch vụ cho biết cách sử dụng dịch vụ như thế nào. Cuối cùng là viết chương trình để sử dụng nó.
    Các bạn có thể tìm thấy một dịch vụ thực dùng cho việc nghiên cứu về WS tại www.google.com. Google.com cung cấp dịch vụ tìm kiếm cho chúng ta. Nghĩa là họ cung cấp một bản mô tả các API tìm kiếm của họ cho chúng ta đưa vào sử dụng trong chương trình của chúng ta. Có cả ví dụ cho cả .NET và Java

  4. #4
    Tham gia
    25-10-2002
    Location
    Can Tho
    Bài viết
    93
    Like
    0
    Thanked 0 Times in 0 Posts

    Java APIs for XML:

    Tập các Java APIs cho XML được chia làm hai loại: một loại được dùng để trực tiếp xử lý các tài liệu XML, loại khác được dùng cho việc xử lý các thủ tục.
    a) Loại hướng tài liệu:
    · Java™ API for XML Processing (JAXP) -- xử lý các tài liệu XML dùng nhiều trình phân ngữ khác nhau.
    b) Loại hướng thủ tục:
    · Java API for XML-based RPC (JAX-RPC): gửi các lời gọi thủ tục xa như là các thông điệp SOAP trên Internet và nhận các kết quả
    · SOAP with Attachments API for Java (SAAJ): tạo và gửi các thông điệp SOAP trên Internet
    · Java API for XML Registries (JAXR): cung cấp một phương pháp chuẩn để truy xuất các bussiness registries và các thông tin chia sẻ.
    Điều quan trọng nhất của tập Java APIs cho XML là chúng hỗ trợ tất cả các chuẩn công nghiệp nên đảm bảo khả năng tương tác.

    Java™ API for XML Processing:

    JAXP làm cho việc xử lý dữ liệu XML trong một ứng dụng Java trở nên dễ dàng hơn. JAXP hỗ trợ các chuẩn phân ngữ như SAX (Simple API for XML Parsing) và DOM (Document Object Model). Phiên bản mới nhất của JAXP hỗ trợ chuẩn XSLT (XML Stylesheet Language Transformations), XML Schema, Namespace.
    1. Simple API for XML Parsing:
    SAX định nghĩa các API cho một trình phân ngữ dựa trên sự kiện. Dựa trên sự kiện có nghĩa là trình phân ngữ đọc tài liệu XML từ đầu đến cuối, và mỗi khi nhận ra một sự hình thành cú pháp xml, nó sẽ báo hiệu cho ứng dụng chạy nó. SAX bào hiệu cho ứng dụng chạy nó thông qua giao diện ContentHandler
    2. Document Object Model API:
    DOM, được định nghĩa bởi W3C DOM Working Group, là một tập các giao diện để xây dựng một sự thể hiện theo đối tượng, dưới dạng cây, của một tài liệu XMl đã được phân ngữ.Khi đã tạo ra một DOM, chúng ta có thể thao tác trên nó bằng các phương thức được cung cấp như là insert, remove, như thể thao tác trên các cấu trúc dữ liệu cây khác. Như vậy, không giống như SAX, trình phân ngữ DOM cho phép truy xuất ngẫu nhiên đến các phần của tài liệu XML, và cho phép tạo ra các đối tượng phần tử XML mới.
    3. XML Stylesheet Language Transformations
    XSLT, được định nghĩa bởi W3C DOM Working Group, mô tả một ngôn ngữ để chuyển đổi một tài liệu XML sang một tài liệu XML khác hay thành một định dạng khác. Để thực hiện chuyển đổi, cần có một style sheet, được viết bằng XML Stylesheet Language (XSL). XSL style sheet xác định cách hiển thị dữ liệu XML, và XSLT sử dụng các lệnh định dạng trong style sheet sheet thực hiện chuyển đổi.
    4. Java API for XML – based RPC (JAX-RPC):
    JAX-RPC là tập các Java API dùng để phát triển và sử dụng dịch vụ web.
    Với JAX-RPC, một client được viết bằng một ngôn ngữ khác Java có thể truy xuất một dịch vụ web được phát triển và triển khai trên nền tảng Java. Ngược lại, một client được viết bằng Java có thể truy xuất đến các dịch vụ web trên các nền tảng khác.
    JAX-RPC hỗ trợ SOAP và WSDL. SOAP định nghĩa chuẩn cho việc chuyển thông điệp XML và ánh xạ các kiểu dữ liệu. Nhờ đó các ứng dụng tuân thủ theo các tiêu chuẩn này có thể giao tiếp được với nhau. JAX-RPC dựa trên SOAP messaging, cơ chế lời gọi thủ tục xa của nó được cài đặ như là request-response SOAP message

  5. #5
    Tham gia
    17-08-2002
    Location
    Ho Chi Minh
    Bài viết
    10
    Like
    0
    Thanked 0 Times in 0 Posts

    Re: Java APIs for XML:

    Bác rất tốt, đã giúp anh anh em hiểu thêm về Web Services , nhung còn sơ sài quá...

  6. #6
    Tham gia
    25-10-2002
    Location
    Can Tho
    Bài viết
    93
    Like
    0
    Thanked 0 Times in 0 Posts

    JAXM

    Mình đang rất bận làm đề tài, chưa có thời gian làm demo về Java WS. Bên .NET có VS nên rất dễ làm. Còn JWSDP của Sun hơi khó dùng. Mình thấy trong CD JBuider 7 có kèm theo Web service Kit cũng khá hay tuy chưa bì được với VS.NET.
    Mình post thêm một vài bài nói về lý thuyết. Bạn nào có hứng thú hãy cùng với mình tìm hiểu việc xây dựng demo Java WS với các công cụ lập trình trực quan nhé.

    Java API for XML Processing

    V. Phát triển dịch vụ Web với Java API for XML Processing:
    JAXM giúp cho các nhà phát triển có thể chuyển các thông điệp XML sử dụng Java platform. JAXM tuân theo đặc tả SOAP 1.1 và đặc tả SOAP with Attachments. Trọn bộ gói JAXM API có hai gói:
    · javax.xml.soap: được định nghĩa trong đặc tả SOAP with Attachments API for Java (SAAJ) 1.1. Đây là gói cơ bản cho việc chuyển thông điệp SOAP, nó chứac các API cho phép tạo ra và phát đi các thông điệp SOAP. Nó chứa tất cả các API cần thiết cho việc gửi các thông điệp request-response
    · javax.xml.massaging: gói được định nghĩa trong đặc tả JAXM 1.1. Gói này chứa các API cần thiết cho việc sử dụng các messaging provider và vì vậy có thể chuyển các message một chiều.
    1. Khái quát về JAXM:
    a) Message:
    JAXM message tuân thủ theo chuẩn SOAP, chuẩn đã qui định định dạng cho message, và chỉ định một số yếu tố cần thiết khác, những tùy chọn hay những yếu tố không được phép.
    Có những gì trong một Message ?
    Có hai lọai SOAP message chính, loại có attachment và loại không có.
    · Message không có Attachment:
    Hình sau cung cấp một khung nhìn ở mức cao về cấu trúc của một SOAP message.
    SAAJ API cung cấp lớp SOAPMessage để thể hiện một SOAP message, SOAPPart để thể hiện SOAP Part, SOAPEnvelope để thể hiện SOAP Envelope và tương tự vậy.


    Web Service 2 - SOAP Message with no Attachment

    Khi một đối tượng SOAPMessage được tạo ra, nó tự động có những phần cần thiết cho một SOAP message. SOAPHeader có thể chứa một hoặc nhiều thông tin về các bên gửi, nhận và về các điểm đến trung gian của message, SOAPBody chứa các thông tin bắt buộc dự định gửi cho người nhận cuối.
    · Message có Attachment:
    Một SOAP message có thể bao gồm theo một hay nhiều phần bổ sung khác. SOAP message có thể chỉ chứa nội dung XML; và do đó, nếu bất kỳ nội dung nào của message không có định dạng XML (chẳng hạn như một file ảnh), nó phải thuộc phần Attachment. Phần Attachment có thể chứa bất kỳ loại định dạng nào.
    Hình sau cung cấp khung nhìn ở mức cao của một SOAP message có hai phần Attachment:


    Web Service 3 - SOAP message with two attachment objects
    SAAJ cung cấp lớp lớp AttachmentPart thể hiện phần Attachment của SOAP message. Đối tượng SOAPMessage tự động có đối tượng SOAPPart và cá phần tử cần thiết, nhưng vì SOAPAttachment là phần tự chọn nên cần được tạo ra và thêm vào một cách tường minh.
    Một SOAP message có thể chứa một hay nhiều attachment. Mỗi đối tượng SOAPAttachment có một MIME header chỉ ra kiểu dữ liệu nó chứa. Nó cũng có thể có những header khác để định danh nó hay cho biết vị trí của nó, những thông tin rất có ích khi có nhiều attachment. Khi một đối tượng SOAPMessage chứa một hay nhiều phần attachment, đối tượng SOAPPart của nó có thể chứa hoặc không chứa nội dung message
    b) Connection:
    Tất cả các thông điệp SOAP được gửi và nhận thông qua một connection. Connection có thể đến trực tiếp một nơi nhận cụ thể hay đến một masseging provider (Một cung cấp dịch vụ chuyển thông điệp là một dịch vụ điều quản việc truyền tải và định tuyến của thông điệp và cung cấp một số tính năng không có sẵn khi các nối được đưa trực tiếp đến nơi nhận). JAXM API cung cấp lớp và giao diện sau để thể hiện hai loại kết nối:
    · javax.xml.SOAPConnection: kết nối trực tiếp từ người gửi đến người nhận
    · javax.xml.messaging.ProviderConnection: một kết nối đến messaging provider


    SOAPConnection: Một đối tượng SOAPConnection, thể hiện một kết nối point-to-point, có thể được tạo và sử dụng đơn giản. Đoạn mã sau tạo một đối tượng SOAPConnection, sau đó tạo ra thông điệp, và sử dụng một kết nối để gửi các thông điệp. Tham số request là thông điệp đang được gửi, endpoint thể hiện nơi đang được gửi.

    SOAPConnectionFactory factory =
    SOAPConnectionFactory.newInstance();
    SOAPConnection con = factory.createConnection();

    . . .// create a request message and give it content

    SOAPMessage response = con.call(request, endpoint);
    Khi một đối tượng SOAPConnection được sử dụng, cách duy nhất để gửi mộ thông điệp là dùng phương thức call của nó. Phương thức này sẽ truyền đi các thông điệp và ngẽn cho đến khi nó nhận được sự phản hồi. Bởi vì phương thức call yêu cầu một response trả về cho nó, kiểu truyền thông điệp này được đề cập như là request-response messaging
    ProviderConnection: Một đối tượng ProviderConnection cung cấp một kết nối đến một messaging provider. Khi một thông điệp được gửi đi bằng một đối tượng ProviderConnection, thông điệp sẽ được chuyển đến messaging provider. Messaging provider chuyển tiếp thông điệp, dựa vào các thông tin định tuyến trong thông điệp, cho đến khi đến nơi nhận cuối. Từ nơi này, các response sẽ gửi trả về cho nơi sinh ra và gửi đi thông điệp.
    Khi một ứng dụng dùng đối tượng ProviderConnection, nó phải sử dụng phương thức ProviderConnection.send để gửi các thông điệp. Phương thức này chuyển các thông điệp đi và kết thúc ngay lập tức. Message provider nhận thông điệp chuyển tiếp nó đi đến nơi cần đến và sau đó chuyển về các response, nếu có. Khoảng thời gian từ khi chuyển thông điệp đi đến lúc nhận được hồi đáp có thể rất ngắn, nhưng cũng có thể tính theo ngày. Trong kiểu truyền thông điệp này, thông điệp gốc được chuyển đi như là thông điệp một chiều, và bất kỳ hồi đáp nào cũng được chuyển ngược lại theo một chiều. Do đó, kiểu chuyển thông điệp này gọi là one-way messaging.

    c) Intermediate Destinations:
    Khi một messaging provider được dùng, một thông điệp có thể được chuyển đến một hay nhiều điểm đến trung gian trước khi đến nơi nhận cuối. Nơi đến trung gian, gọi là các actor được chỉ định trong đối tượng SOAPHeader. Actor mặc định là nơi đến cuối cùng, vì vậy nếu không có actor nào được chỉ ra, thông điệp sẽ được định hướng đến nơi nhận cuối.

  7. #7
    Tham gia
    05-09-2002
    Location
    Turino
    Bài viết
    743
    Like
    0
    Thanked 22 Times in 5 Posts
    Hay quá đó !

  8. #8
    Tham gia
    17-01-2003
    Location
    Ha Noi
    Bài viết
    247
    Like
    0
    Thanked 0 Times in 0 Posts
    Đồng chí Doremon này cũng nghiên cứu quá kỹ rồi. Bài giới thiệu của đồng chí rất hay mặc dù tôi cũng chưa hiểu hết. Theo tôi nghĩ đồng chí có thể giới thiệu cho bà con trình tự nghiên cứu webservice bằng những quyển sách hoặc ebook nào theo kinh nghiệm của đồng chí để bà con học tập

    Chúc đồng chí thành công với những dự án về webservice của mình. Và có nhiều đóng gớp cho forum này

  9. #9
    Tham gia
    20-09-2002
    Location
    Ha noi
    Bài viết
    29
    Like
    0
    Thanked 0 Times in 0 Posts
    Bài viết của Diamond về Web Services hay và rất hữu ích. Tôi cũng đang tham một công việc sử dụng SOAP và JAVA. Mời Diamond các bạn quan tâm cùng tiếp tục tham gia thảo luận. Có câu hỏi, vấn đề nào liên quan mọi người quan tâm xin hãy đưa ra cùng thảo luận. Có một chủ đề về SOAP nữa ở đây, mời các bạn vô xem http://www.ttvnol.com/forum/t_170185.

    Về câu hỏi của Tiger2003:

    Theo ý kiến của tôi, để nghiên cứu về Web SRV và SOAP, có thể bắt đầu từ trình tự sau:

    1. Học JAVA và XML.
    2. Làm quen vơi nhưng khái niệm về Web SRV.
    http://msdn.microsoft.com/webservice...g/default.aspx
    3. Làm quen với SOAP.
    SOAP Introduction and Tutorial
    http://www.intertwingly.net/stories/...ionToSoap.html
    http://java.sun.com/webservices/docs/1.0/tutorial/
    http://www.intertwingly.net/stories/...ionToSoap.html
    http://java.sun.com/webservices/docs...oc/JAXRPC.html

    SOAP Specifications:
    http://java.sun.com/webservices/docs...oc/JAXRPC.html

    Về Ebooks, tôi có một số quyển, các bạn nào quan tâm mail cho tôi.

  10. #10
    Tham gia
    25-10-2002
    Location
    Can Tho
    Bài viết
    93
    Like
    0
    Thanked 0 Times in 0 Posts
    Thật ra mình nghiên cứu Web Service khi học .NET. Với VS.NET, và documentation kèm theo, các bạn rất dế dàng học WS, nếu trước đó đã có một số kinh nghiệm về Web, kiến thức về XML.
    Mình đến với J2EE là do bất dắt dĩ nhưng bây giờ rất thích nó. Tuy nhiên, hiện mình chưa tìm được bộ công cụ để phát triển WS trên J2EE như VS.NET (JBuilder 8 cũng có nhưng mình không có giấy phép hợp lệ, mình có nghe nói Oracle, IBM cũng có nhưng mình chưa tim được) nên việc phát triển theo SDK của SUN rất khó khăn. Vì thế trước đây mình chỉ làm WS trên .NET chứ chưa cho ra một WS nào trên J2EE nào cả.
    Các bác nào có bộ công cụ nào để phát triển WS trên J2EE Free thì chỉ cho mình với.
    -------------
    Thời gian gần đây mình đang bận bịu với dự án dùng PHP nên ít online với bà con

Trang 1 / 4 1234 LastLast

Bookmarks

Quy định

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •