クライアント拡張機能
Liferay セルフホスト型 Liferay SaaS Liferay PaaS
Liferay 7.4
Liferayの外観や操作性を変更したり、Liferay外部の関数を呼び出したりしてLiferayの機能を拡張したい場合は、クライアント拡張機能を使用する必要があります。 クライアント拡張機能を使用すると、Liferayに直接コードをデプロイすることなく、Liferayの機能を拡張できます。 クライアント拡張機能は、自社でホストしている環境でも、Liferay Cloud上でホストしている環境でも、あらゆるLiferay環境にデプロイできます。 これらはまた、Liferay Cloud を使用して Liferay をカスタマイズするための主要な方法であり、 Liferay オブジェクト などの組み込み構成と併用されます。
OSGi モジュール や テーマ などの他の Liferay 拡張機能は Liferay 自体の機能を変更または追加しますが、クライアント拡張機能は Liferay の API とのみインターフェースします。 この疎結合により、クライアント拡張機能はより柔軟になり、バージョン間でほとんど変更されないAPIのみに依存するため、アップグレード後の環境にも容易に適用できるようになります。 クライアント拡張機能はLiferayの外部で実行され、オブジェクトと統合されるため、接続のための追加コードは一切不要です。そのため、任意のプログラミング言語やテクノロジーを使用してクライアント拡張機能を作成することもできます。

クライアント拡張機能を使用すると、
- Liferayのコードへの依存を避けつつ、カスタムJavaScriptやCSSを適用する
- Liferayページの カスタム要素 にリモートでホストされているアプリケーションを埋め込む
- 同じ構成やオブジェクトを複数の環境に適用するには、 それらをクライアント拡張機能 に変換します。
- Liferayの外部で実行されているカスタムサービスや関数(例:RESTエンドポイント)を、任意のプログラミング言語や技術を使用して呼び出す
クライアント拡張機能の種類
Liferay Workspace を使用してクライアント拡張機能を開発およびデプロイします。 クライアント拡張機能は ヘッドレス API を介して Liferay と通信します。
クライアント拡張機能の分類は以下のとおりです。
すべてのタイプのクライアント拡張機能の完全なリファレンスについては、 クライアント拡張機能リファレンス を参照してください。
フロントエンドクライアント拡張機能
フロントエンドクライアント拡張機能は、特定のページに表示するリソースを提供します。 テーマのリソースやカスタムHTML要素をクライアント拡張機能で提供できるようになりました。 ほとんどのフロントエンドクライアント拡張機能は、Liferayインスタンスに 個の静的リソース を提供します。
具体的なタイプの詳細については、 Liferay の外観と操作性のカスタマイズ を参照してください。
構成クライアント拡張機能
設定クライアント拡張機能は、Liferayインスタンス内の機能を変更するための具体的な設定を提供します。
これらは、 マイクロサービス クライアント拡張機能 などの他のクライアント拡張機能と併用できます。 例えば、OAuthユーザーエージェントクライアント拡張機能を使用して、ユーザーがトリガーするアクションイベントと連携するクライアント拡張機能を認証することができます。
具体的なタイプの詳細については、 Configuration As Code を参照してください。
マイクロサービスクライアント拡張機能
マイクロサービスクライアント拡張機能は、Liferay内でトリガーされるAPIエンドポイント(オブジェクトアクションやワークフローアクションなど)を提供します。 これらのアクションイベントがAPIを呼び出すと、Liferayの外部で任意の関数を別の マイクロサービスとして実行できます。
具体的な種類については、 マイクロサービスの統合 を参照してください。
バッチクライアント拡張機能
バッチ クライアント拡張機能は、 オブジェクト定義 や ワークフロー定義 などのデータ エンティティを Liferay インスタンスに提供します。 バッチエンジンフレームワーク を介してデータをエクスポートすることにより、バッチクライアント拡張機能を作成します。
この特定のタイプに関する詳細については、 データのインポート/エクスポート を参照してください。
ここから先はどこへ行くべきか
クライアント拡張機能の作成方法を段階的に分かりやすく学ぶには、以下の学習パスに従ってください。最も簡単に実装できるクライアント拡張機能から始まり、そこから徐々に高度なものへと進んでいきます。
それが終わったら、オブジェクトとクライアント拡張機能を使用して本格的なアプリケーションを作成する方法を確認してみるのも良いでしょう。