Menu

Liferay 7: Tạo một portlet mới như thế nào?


English version
Ở bài viết trước, mình đã lược dịch lại những tính năng mà Liferay 7 cải tiến và bổ sung. Trong đó, Liferay Workspace là một tính năng mới, một cách tổ chức code mới được Liferay khuyến khích lập trình viên sử dụng. Trong bài viết này, mình sẽ tạo một portlet theo cấu hình mặc định của Liferay (tức là sử dụng Liferay Workspace), bài viết tiếp theo mình sẽ hướng dẫn cách cấu hình Liferay 7 để bạn có thể tạo ra các portlet theo phong cách cũ (phiên bản Liferay 6).

Cài đặt môi trường

Tải các thành phần cần thiết

Trước hết, ta hãy tải Liferay 7 và cài đặt môi trường lập trình, hãy xem phiên bản 7 có khác gì không nhé. Các thành phần cần tải về và liên kết như sau:
  • Liferay Portal 7.0.2 GA3: Bạn có thể tải về tại đây.
  • Liferay IDE 3.1.0 M1: Bản có thể tải về tại các địa chỉ (Windows x64, Linux x64 hoặc các phiên bản khác tại đây). Lưu ý, bạn có thể tải riêng Liferay IDE và tích hợp vào bản Eclipse IDE của mình, nhưng nếu bạn mới làm quen với Liferay thì tốt nhất tải bản tích hợp (Liferay IDE + Eclipse IDE) để đỡ mất thời gian cấu hình.

Cấu hình

Giải nén hai tệp tin thu được ở bước trên và thực hiện một số cấu hình cần thiết.

Cấu hình kết nối CSDL

Cấu hình kết nối cơ sở dữ liệu: phần này được thực hiện tương tự với phiên bản 6.2 (bạn có thể xem tại đây). Bạn tạo file portal-ext.properties trong thư mục {liferay-portal-home}/tomcat-8.0.32/webapps/ROOT/WEB-INF/classes/. Với nội dung như sau:

Ở đây mình sử dụng cơ sở dữ liệu PostgreSQL, mình đã tạo sẵn một cơ sở dữ liệu tên là lportal7 trên máy local. Nếu bạn sử dụng các cơ sở dữ liệu khác thì có thể tham khảo ở đây.
Lưu ý, Liferay 7 phiên bản CE chỉ hỗ trợ các CSDL mã nguồn mở như MySQL, Postgress, ... (chi tiết tại đây)

Cấu hình eclipse và portal

Tạo Liferay Server: Mở IDE Eclipse vừa giải nén ở trên. Bạn chọn New > chọn Server / Server như hình:

Bạn nhấn vào nút Next và chọn Liferay, Inc. và chọn  Liferay 7.x như hình dưới:


Nhấn vào nút Next để chuyển sang bước tiếp theo
Tại bước này, bạn đặt tên cho Server ở ô "Name" và chọn đường dẫn đến thư mục portal vừa giải nén ở bước trên. Tiếp theo chọn JRE runtime cho phù hợp (phiên bản 1.8) và nhấn Finish để kết thúc việc cài đặt.
Bước cuối cùng là bạn bật (start) server vừa tạo. Sau khi khởi động xong, bạn mở trình duyệt web và truy cập vào địa chỉ http://localhost:8080

    Tạo portlet mới

    Sau khi hoàn thành các bước cài đặt trên, với vai trò là một lập trình viên, mình sẽ tạo một project đầu tiên theo phong cách của Liferay 7.
    Để tạo mới một portlet, trên giao diện IDE Eclipse, chọn File --> New --> Liferay Module Project. Một cửa sổ hiện ra như sau:
    Bạn cần nhập tên của project, chọn công cụ build và mẫu project. Công cụ build project có 2 loại là gradle và maven, bạn có thể chọn công cụ tuỳ thích. Mẫu project có nhiều loại, tuỳ thuộc vào từng dự án mà bạn chọn loại phù hợp (mình sẽ giới thiêu chi tiết ở các bài khác), để cho đơn giản mình chọn mẫu mvc-portlet và nhấn nùt Next để chuyển sang bước tiếp.

    Ở bước này, bạn cần đặt tên cho lớp xử lý chính và tên gói. Ngoài ra, bạn có thể cung cấp thêm các thuộc tính (các thuộc tính này sẽ được giới thiệu sau). Nhấn Finish để kết thúc việc tạo mới một portlet.
    Portlet được tạo và bạn sẽ thấy cấu trúc của nó như hình dưới:
    Cấu trúc của portlet sử dụng công cụ build Gradle và Maven cũng khá tương tự nhau. Phân java code và resource tách biệt nhau nên sẽ dễ dàng hơn cho việc quản lý code.
    Nhìn chi tiết hơn một chút, chúng ta không thấy các file cấu hình portlet như portlet.xml, liferay-portlet.xml và liferay-display.xml, phải chăng đây là sự lược giảm của Liferay 7 so với các phiên bản trước?
    Trước hết, hãy xem nội dung của lớp TestPortlet,

    So với phiên bản trước, ta có thấy một phần mới đó là phần chú thích @Component (dòng 12 đến 24). Nếu để ý kỹ hơn, ta có thể thấy các cặp khoá và giá trị của phần property chính là các cấu hình trong các file portlet.xml, liferay-portlet.xml và liferay-display.xml. Như vậy, Liferay 7 thay vì sử dụng các file cấu hình thì chuyển trực tiếp các cấu hình vào trong java code.

    Triển khai portlet

    Tiếp theo là việc triển khai portlet vừa tạo lên máy chủ. Trong giai đoạn phát triển thì việc này hết sức đơn giản. Bạn chỉ cần click chuột phải vào máy chủ Liferay 7.x vừa tạo ở bước trên. Chọn "Add or Remove..." và chọn portlet muốn triển khai là được. Portlet của bạn sẽ được triển khai lên máy chủ một cách tự động. 
    Truy cập vào ứng dụng trên trình duyêt và thực hiện kéo portlet của bạn vào trang. Bạn nhấn vào nút "+" ở góc trên bên phải như hình:
    Bạn chọn mục "Sample" và kéo portlet vào vị trí theo ý bạn. Lúc này, nội dung của portlet sẽ hiện lên trên màn hình.

    Kết luận

    Đây là bài viết đơn giải giới thiệu về Liferay 7 cho người mới làm quen với Liferay. Bạn có thể tại project ví dụ tại đây.

    Không có nhận xét nào:

    Đăng nhận xét