3

Liferay 6.1.1 CE GA2プロジェクト サイトを作成しました。Liferay API を使用してそのサイトの作成日を知りたいです。

それで、どんな体でも私を助けることができますか?

前もって感謝します

4

1 に答える 1

4

Liferay はサイトに関する情報を多くのテーブルに保存しますが、サイト識別子は _group テーブルに保存されたグループです。

このテーブルの行の列は、Liferay API から Group インターフェイスにマップされます。http://docs.liferay.com/portal/6.1/javadocs/com/liferay/portal/model/Group.html

残念ながら、このテーブルには作成日が格納されていないため、グループ インターフェイスは役に立ちません。

とにかく、新しいサイトを作成すると、レイアウト セット テーブル (プライベートとパブリック) に 2 つのレイアウト セットが作成され、それらの作成日が保存されることがわかりました。したがって、一種のハックとして、これらのレイアウト セットからの情報を使用して、サイトがいつ作成されたかを知ることができます。

あなたのケースかどうかはわかりませんが、たとえば、LayoutSetLocalServiceUtil クラスをポートレット jsp ページで次のように使用できます。

<%
    long groupId = company.getGroupId();
    LayoutSet sitePrivateLayoutSet = LayoutSetLocalServiceUtil.getLayoutSet(groupId, true);
    Date siteCreationDate = sitePrivateLayoutSet.getCreateDate();
%>

liferay テーマの taglib を次のように初期化する必要があることに注意してください。

<%@ taglib uri="http://liferay.com/tld/theme" prefix="liferay-theme" %>
<liferay-theme:defineObjects />

お役に立てれば!

于 2013-03-30T22:46:18.793 に答える