0

Groupクエリを実行する必要があるポートレット プロジェクトがあります。私はプロジェクトを作成していませんが、Eclipse Liferay SDK プラグインで作成されました。

を追加しましたDynamicQueryFactoryUtil.forClass(Group.class)が、実行時に失敗します。インターフェース Group の実装である GroupImpl.class が見つからないことについて不平を言っています。プロジェクトの依存関係に portlet-impl が含まれていません (GroupImpl.class が含まれています)。

すべきかどうかわかりません:

  • そのjarをコンパイル用の依存関係に含めます
  • その jar をポートレット jar に含めます

または、私は何か間違ったことをしており、グループのクエリはすぐに利用できます。

PS: 私は Liferay に関してかなり初心者です...

PS2: Liferay 6.1です。

4

1 に答える 1

2

Liferay が適切なクラスを取得できるようにするには、 の初期化に正しいクラスローダーを提供する必要がありますDynamicQuery。この場合、モデルの実装にアクセスできるため、ポータルのクラスローダーです。

 DynamicQueryFactoryUtil.forClass(Group.class, PortalClassLoaderUtil.getClassLoader())
于 2012-09-18T12:54:08.913 に答える