Tác giả: Nguyễn Anh Khoa
Mục đích: Trong phần này, chúng ta sẽ tạo 1 web service cộng trừ 2 số thập phân dùng Axis2 trong Eclipse và consume Service với mô hình MVC sử dụng JSP và Servlet trong Eclipse.
Yêu cầu: phải cấu hình hoàn tất axis2 trong Eclipse
1. Tạo Application cộng trừ hai số:
*Tạo Java Project:
Chọn File -> New -> Project
Đặt tên cho project là Calculator
Click Finish.
Tạo class để implement cộng trừ hai số.
Chọn File -> New -> Class
Đặt tên cho class và package.
Click Finish.
Tạo 2 phương thức là add() và substract như hình vẽ bên dưới.
Đến đây đã hoàn thành việc tạo application cho Web Service.
2. Tạo Web Service:
Chọn File -> New -> Other -> Web Services -> Web Service
Web Service type : chọn Bottom-up Java bean Web Service.
Bottom-up Web Service: Tạo implementation trước rồi tool sẽ tạo file WSDL cho mình.
Service Implementation: click Browse và gõ vào tên class dùng cho Web Service.
Chọn đúng tên class với package name. Ở đây là Calculator và tên package là sample.service.
Click OK.
Configuration:
Nếu Web service runtime là Apache Axis thì click vào và chọn lại là Apache Axis 2
Service Project: Tên của project chứa Web Service.
Click vào để đổi tên Project và kiểu là Dynamic Web Project.
Tên project không cần phải là Project đang có và bạn nên gõ tên Project mới chỉ để chứa các Web Service, lát nữa tool sẽ tự tạo Project cho mình. Ở đây tên Project là MyServices
Click OK.
Click Next.
Check Generate a default web services.xml file. Click Next
Click Start server. Nếu server của bạn đã start thì sẽ không co bước này.
Sau khi click đợi thông báo Currently the server is started xuất hiện rồi mới click Next.
Click Finish
Trong cửa sổ Project Explorer có project MyServices vừa được tạo.
Trong Web content ta có thể thấy tool đã add Axis vào project.
Chọn Run -> Build Project. Tool thường để chế độ mặc định là Automatically Build và bạn nên tắt chế độ này đi.
Run Project.
Click Finish
Kết quả trong web browser như sau:
Web Service được deploy
Bạn có thể tùy chỉnh Web Browser nào sẽ khởi động khi run Project như sau:
Click vào Services bạn sẽ thấy Service Calculator của mình với 2 phương thức Add và Substract.
Click vào Calculator.
Đây là file định nghĩa cho Web Service.
Chúc mừng bạn đến đây bạn đã tạo 1 Web Service thành công với Axis2 và Eclipse.
Copy lại URL và để đâu đó để dùng cho việc consume Web Service.
* Test Web Service:
Bạn có thể test Web Service xem thử Web Service đã thực hiện đúng chức năng bạn đã implement chưa bằng cách modify lại URL như sau:
3. Tạo Web Service Client để consume Web Service
Chọn File -> New -> Other -> Web Services -> Web Service Client
Click Next.
Paste URL của file WSDL đã copy ở trên vào Service definition
Configuration:
Nếu Server runtime và Web Service runtime không đúng giá trị như trong hình thì bạn click vào và sửa lại giá tị.
Client Project: tương tự như khi tạo Web Service như trên, ta nên tạo 1 Dynamic Web Project mới để thực hiện bài Demo này. Click vào và đổi lại tên Project: CalculatorService_Consumer. Bạn cũng có thể dùng lại project khác đang có để consume.
Click Next
Click Finish để hoàn thành việc tạo Project cho Web Service consumer.
Project CalculatorService_Consumer được tạo.
Bây giờ chúng ta cần tạo 1 trang JSP và 1 servlet để trực tiếp sử dụng Web Service.
1. Tạo trang JSP
Chọn File -> New -> Other -> Web -> JSP. Click Next
Nhập tên file là home và chọn location cho file là Web Content trong Project CalculatorService_Consumer.
Nhập nội dung cho file home.jsp như hình bên dưới:
2. Tạo Servlet:
Chọn File -> New -> Other -> Web -> Servlet. Click Next
Nhập tên Package và tên Class cho Servlet.
Click Next.
Click Next
Click Finish
Mở file Controller.java vừa tạo sửa lại nội dung hàm doGet như sau:
Mở file web.xml trong WebContent\WEB-INF.
Trong tag <welcome-file-list> add thêm dòng này vào:
<welcome-file>home.jsp</welcome-file>
Lưu lại file, build project và run.
Kết quả trên browser như sau:
*Chúc mừng bạn!!!
Bạn đã tạo 1 Web Service dùng Axis2 trong Eclipse và consume thành công!