LiferayドキュメントまたはWebコンテンツの構造とテンプレートをポートレットプラグインのWARファイルに含めて、標準のようにユーザーが利用できるようにする方法はありますか?
ユースケースは、提供しているカスタムドキュメントライブラリ構造を利用するポートレットを作成している場合です。ただし、この構造を独自のインストール手順(構造専用のLARを提供するなど)で別個のものとして配布するのではなく、プラグインがインストールされるたびにカスタム構造を使用できるようにするだけです。
ポートレットのWEB-INF/classesディレクトリにportal.propertiesファイルを追加することで目標を達成できます。このファイルには、次の行が含まれている必要があります。
application.startup.events=com.yourcompany.whatever.YourCustomStartupAction
このカスタム起動アクションは、com.liferay.portal.kernel.events.SimpleActionから拡張されたクラスである必要があります。その中で、ポートレットが開始された瞬間に、すべてのLiferayサービスユーティリティを活用してLiferayで何かを行うことができます。Liferayドキュメントライブラリを操作するために使用する必要のあるクラスは、具体的にはDLAppLocalServiceUtilです。このutilクラスには、ドキュメントライブラリ内のファイル/フォルダを操作するために必要なすべてのメソッドがあります。
構造、テンプレート、記事などのWebコンテンツ関連のものについては、JournalStructureLocalServiceUtil、JournalTemplateLocalServiceUtil、JournalArticleLocalServiceUtilを使用してください。
質問が正しかったことを願っています;)
ポートレットがデプロイされたときに、DLFolderServiceを介してフォルダーStructureを作成できます。
サーバーの起動時にメソッドを実行するには、CustomActionを使用する必要があると思います。チェックしてください:ここ