III. Tích hợp ứng dụng trong Cổng thông tin
5. Tích hợp đầy đủ Liferay/Portlet
Phương pháp tích hợp bao gồm viết các portlet thuần nhất hoặc các công cụ trong khi chạy khác để truy cập vào ứng dụng mà bạn muốn tích hợp thông qua API đều khiển dữ liệu tầng thấp, và thể hiện giao diện người dùng sử dụng cơ chế giao diện người dùng Liferay thuần nhất. Ví dụ như, ứng dụng email mà gửi đi với Liferay có thế tích hợp bất kì hệ thống mail IMAP (như Outlook hay Google Mail) bằng cách sử dụng giao thức IMAP để chuyển đổi thông tin. Những cơ chế tích hợp sẵn có khác phụ thuộc vào yêu cầu của ứng dụng (như giao diện REST cho tích hợp với Facebook, hoặc giao diện SOAP cho tích hợp với SalesForce.com).
Phương pháp tích hợp này là tốt nhất khi ứng dụng không phải giao diện dựa trên web (như ứng dụng thương mại thừa kế) hoặc có giao diện rất nhỏ không có tính trực giác và ứng dụng không có các API tầng thấp. Chúng yêu cầu ứng dụng sắp tích hợp phải có đầy đủ sự chuẩn bị, và không có một khía cạnh nào phù hợp với tiếp cận.
5.1. Chứng thực và Cấp phép
Liferay có tích hợp hệ thống quản lý chứng thực và người dùng. Đăng nhập người dùng (hoặc tạo ra tài khoản mới) sử dụng xác nhận và chứng nhận, thường là tài khoản và mật khẩu. Thông tin người dùng được lưu trữ trên cơ sở dữ liệu Liferay. Người dùng có thể được quản lý thông qua kênh quản lý Liferay, ví dụ để gán quyền cho người dùng, thêm hay xóa họ ra khỏi hệ thống…
Khi tích hợp một ứng dụng ngoài, thông thường đó là trường hợp ứng dụng có riêng khái niệm của nó về quản lý chứng thực và người dùng. Với những ứng dụng thương mại thì những ứng dụng này thường được tích hợp với hệ thống chứng thực kết hợp với lưu trữ người dùng. Ví dụ, sử dụng OpenSSO để chứng thực và LDAP cho quản lý thư mục người dùng và mật khẩu.
Liferay có hệ thống chúng thực và cấp phép linh động và hoàn toàn có thể tùy biến. Thông qua sơ đồ chứng thực của nó, các hệ thống chứng thực ngoài có thể sử dụng tham số hoặc hoàn toàn thay thế các khái niệm chứng thực được tích hợp trong Liferay. Sơ đồ về bản chất là tập các chứng thực liên tiếp mà phải được duyệt người dùng và chứng nhận thành công trước khi người dùng được chứng thực. Để tác động đến cách Liferay chứng thực người dùng, bạn cần phải chèn (hoặc thay thế) chứng thực tùy chọn của bạn.
Liferay tích hợp hỗ trợ cho nhiều hệ thống chứng thực bên thứ 3 khác nhau nhau, bao gồm chuẩn LDAP (với cài đặt tiền cấu hình cho Apache DS, Fedora DS, Microsoft Active Directory, Novell eDirectory và OpenLDAP), CAS, Facebook, NTLM, OpenID, OpenSSO, và SIteMinder.
5.2. Tìm kiếm
Như với chứng thực, Liferay có thực thi tìm kiếm mặc định sử dụng máy tìm kiếm Lucene. Máy tìm kiếm này lấy về và đánh chỉ mục tất cả nội dung trong Liferay. Có những máy tìm kiếm khác như máy tìm kiếm phổ thông Solr từ dự án Apache, GSA, FAST, Coveo…). Không quan trọng máy tìm kiếm nào được sử dụng, có nhiều cách để tích hợp ứng dụng bên thứ 3 với tìm kiếm Liferay:
• Portlet tìm kiếm:
Một tùy chọn dễ dàng để tạo ra portlet mà cung cấp giao diện người dùng tìm kiếm đơn giản và ủy quyền tìm kiếm nội dung cho ứng dụng bên thứ 3. Tương tự với kiểu tích hợp của IFrame, nó có những ưu và nhược điểm. Như chúng rất dễ dàng để cài đặt nhưng hạn chến ở chỗ kết quả tìm kiếm không được kết hợp với toàn bộ các cổng thông tin tìm kiếm, và sẽ hiển thị hoàn toàn không kết nối với những nội dung khác. Nó cũng rất khó để thực hiện đúng chứng thực người dùng, ví dụ như chỉ
thấy được các kết quả tìm kiếm tồn tại cho người dùng được chỉ định.
• OpenSearch:
Liferay tích hợp chứng năng tìm kiếm sử dụng API OpenSearch. Sử dụng API này, portlet tùy biến của bạn có thể được khai báo rằng chúng được sử dụng trong OpenSearch. Khi việc làm này đã diễn ra, khi người dùng sử dụng các phương tiện tìm kiếm Liferay, kết quả từ cổng thông tin được kết hợp với kết quả từ bất kì hệ thống ngoài nào mà thực thi OpenSearch của bnaj có thể truy cập, và thể hiện trên tập kết quả kết hợp. Ứng dụng của bạn cũng có thể được cung cấp một thể hiện OpenSearch (như Alfresco).
• Bộ máy tìm kiếm:
Như đã mô tả ở trên, bộ máy tìm kiếm Liferay cho phép bạn hoán đổi bộ máy tìm kiếm mặc định Lucene với bộ máy tìm kiếm mà bạn chọn. Liferay tạo ra trình cắm tìm kiếm Solr, mà tự động cấu hình Liferay để sử dụng bộ máy tìm kiếm bên ngoài Solr để đánh chỉ mục và truy vấn. Ứng dụng mà bạn tịch hợp vào cổng thông tin của mình có thể được tích hợp với Solr, như khi những hành động xảy ra trong ứng dụng (một thông tin liên lạc được thêm vào sổ địa chỉ), thông tin có thể được đánh chỉ mục và tồn tại trong tìm kiếm của Liferay.
5.3. Tương tác người dùng
Tương tương người dùng phụ thuộc nhiều vào bản chất của ứng dụng sẽ được tích hợp, nhưng bạn cần phải xem lại tiến độ công việc mà bạn muốn hoàn thành trong cổng thông tin của mình trước khi thiết kế tương tác người dùng. Một tích hợp thành công sẽ cho phép người dùng hoàn thành tiến độ công việc của họ sử dụng giao diện người dùng trực quan và có hiệu quả. Khi nhiều ứng dụng cùng được tích hợp, Liferay cung cấp nền tảng để tạo ra những mô hình tương tác hấp dẫn sử dụng mô hình của nó và các thành phần giao diện người dùng linh hoạt.
• Các portlet có thể tùy biến ở bên ngoài. Những portlet này có thể sử dụng như là tùy biến thông qua kiến trúc trình cắm Liferay để phù hợp với nhu cầu của bạn. Ví dụ, porlet Calendar có thể được dùng để hiển thị dữ liểu từ một hệ thống lịch biểu.
• AlloyUI cung cấp các thành phần giao diện đơn giản và phức tạp để tạo ra các giao diện đa dạng và đầy đủ.
• Các portlet hỗ trợ đầy đủ chuẩn công nghiệp JSR-286. Sử dụng giao tiếp giữa các portlet, các giao diện phức tạp có tính trực quan có thể được xây dựng cùng nhau tạo cho ứng dụng thương mại của bạn có trải nghiệm người dùng liền mạch.
5.4. Hợp tác và hội nhập xã hội
Các tính năng xã hội ngày càng quang trọng để chú ý khi thực thi bất kì ứng dụng thương mại dựa trên nền tảng web nào. Liferay được xây dựng với tư duy xã hội, và cung cấp tích hợp với rất nhiều tùy chọn cho phép những tính năng này trong suốt quá trình tích hợp ứng dụng. Chúng bao gồm:
• Các portlet bên ngoài gói hợp tác. Như đã mô tả từ trước, rất nhiều trong số những portlet có thể được dùng để tích hợp với các nguồn bên ngoài của nội dung và dữ liệu như Microsoft Exchange (thông qua ứng dụng bên ngoài Mail/Calendar) hoặc thông qua RSS tới các ứng dụng Blog.
• Tích hợp luồng hành động thông qua API Activity Tracker. Khi một hành động xảy ra trong ngữ cảnh sử dụng ứng dụng phức hợp (hoặc trong ngữ cảnh ứng dụng tích hợp đơn lẻ), API Activity Tracker của Liferay có thể được gọi để đăng kí hành động được đại diện cho người dùng. Những người dùng khác mà được kết nối với người dùng này có thể thấy những hành động này khi ghét thăm luồng hành động của họ. Hơn thế, tích hợp có thể được tạo thành với hệ thống Social Equity của Liferay, để gửi “point” tới người dùng để thực thi các tác vụ nhất định.
• OpenSocial. Hơn là viết portlet, nếu bạn quen thuộc với các tiện ích (gadget), Liferay có thể lưu trữ trực tiếp các tiện ích lên cổng thông tin thông qua hỗ trợ OpenSocial của Liferay. Các khái niệm, thực thể và hành động của OpenSocial được định nghĩ trong các đặc điểm kỹ thuật của nó được ánh xạ đến các khái niệm tương đương của Liferay. Các API hướng xã hội của OpenSocial cho phép nhiều công việc phức tạp trên ứng dụng của bạn được hoàn thành.
5.5. Các kỹ thuật tích hợp nâng cao
Liferay thậm chí còn cung cấp nhiều tùy chọn tích hợp khi những thứ cơ bản không hoạt động. Ví dụ, nhiều hệ thống dữ liệu doanh nghiệp được tích hợp sử dụng vài thể thức của kênh nhắn tin như ESB hay thậm chí kết hợp kênh tin nhắn của riêng Liferay với kiến trúc hướng web. Những giải pháp nhắn tin này xử lý khả năng của lỗi mạng, định dạng trao đổi dữ liệu của những ứng dụng khác nhau, và thay đổi không thể
tránh được đối với những hệ thống thương mại lâu dài. Liferay có thể tích hợp với những hệ thống này, và ủy thác dữ liệu thương mại vào môi trường Liferay của bạn cho nhiều xử lý.