2010-08-11 32 views
8

Xin lỗi, hãy bỏ qua câu hỏi về newbie của anh ấy. Nhưng tôi thực sự cần một sự khởi đầu trên cái này. Tôi muốn truy cập một dịch vụ web trong dự án Java EE của mình. Webservice này cung cấp tệp WSDL. Vì vậy, tôi hiểu rằng tôi có thể sử dụng điều này để xây dựng mã Java từ nó để truy cập vào dịch vụ web. Bây giờ tôi đã đọc rằng Apache CXF là một khung làm việc tốt mà tôi có thể sử dụng. Nhưng sự khác biệt với JAX-WS là gì?Dịch vụ web: JAX-WS, CXF, WSDL ... Đó là tất cả những gì về?

Ai đó có thể giải thích điều này cho tôi không?

Trả lời

12

JAX-WS là Đặc điểm kỹ thuật (được cung cấp bởi Sun Oracle) để xác định Dịch vụ web bằng cách sử dụng chú thích.

Apache CXF là một khuôn khổ mà thực hiện JAX-WS để tạo Web Services Định nghĩa và Java Proxy (từ một định nghĩa Web Service)

Apache Axis 2 cũng là một khuôn khổ mà bây giờ hỗ trợ JAX-WS (lên đến JAX -WS 2). Đó là một cải tiến từ Apache Axis. CXF hỗ trợ lên đến JAX-WS 1.2.

Hướng dẫn ngắn có thể được tìm thấy here.

5

JAX-WS là API (hoặc đặc điểm kỹ thuật) và CXF là triển khai API đó. Ngoài ra còn có triển khai tham chiếu có sẵn here

+3

Apache CXF có giải thích tương tự về mối quan hệ: [Tại sao CXF] (http://cxf.apache.org/docs/why-cxf.html) –

1

Các câu trả lời khác là chính xác, nhưng với CXF hoặc Metro, bạn sẽ nhận được một chồng dịch vụ web triển khai và đó là các tính năng bổ sung ngoài api JAX-WS. Đó là lý do tại sao JAX-WS RI cũng có nhiều tính năng hơn so với JAX-WS.

Tôi nghĩ bài viết này giải thích chi tiết này rất chi tiết.

http://www.predic8.com/axis2-cxf-jax-ws-comparison.htm

3

CXF là tốt nhưng bạn không cần nó để giải quyết vấn đề của mình. Bạn có thể sử dụng wsimport, là một phần của JDK, để tạo các lớp từ WSDL để truy cập dịch vụ web.

Các vấn đề liên quan