1

Liferay ポータルを開発しています。ポータルの管理者側とクライアント側を処理するポートレットが 1 つあります。問題は、クライアントが管理者ページ (ポートレットを含む) を表示できないことです。また、ポータル用のカスタム データベースを作成しました (Service Builder を使用して Liferay データベースに独自のテーブルを含めました)。ここで、クライアント ポートレットを使用して情報を取得できるように、同じデータベースを使用したいと考えています。

何か案は?

Liferay 6.1 と Tomcat および Eclipse 用の Liferay SDK プラグインを使用しています。

4

3 に答える 3

0

同じテーブル/エンティティを共有する 2 つのポートレットがある場合、service.jar を tomcat-7.0.27\lib\ext にコピーできます。これらの 2 つのポートレットは実行時にこの .jar にアクセスできます。

于 2013-05-16T06:37:48.260 に答える
0

プラグイン プロジェクト内のすべてのポートレットは、そのプラグインによって作成されたサービス ビルダー サービスを共有します (最終的に 1 つの war ファイルになり、ランタイム コンテキストを共有するため)。したがって、両方のポートレットを同じプラグインに入れるだけで、両方がそのプラグインのサービス ビルダー サービス/テーブルにアクセスできます。これが一般的に使用されるアプローチであることがわかると思います。あなたが言及した許可と可視性の問題は、この組織の影響を受けません。

このようにすると、展開がシンプルになります。プラグインの war を展開するだけで完了です。

ポートレットを別々のプラグインにする必要があるという制御できない理由がある場合、それは難しくなります。yannicuLar のアプローチは 1 つの方法です。

于 2013-05-15T14:46:25.837 に答える