2012-02-28 10 views
1

liferayポータルからすべてのユーザーグループを取得する必要がありますが、UserGroupServiceUtilのapiには特定のユーザーのユーザーグループを取得する方法しかありません。私が必要とする方法がpersistence/UserGroupUtil - findAll()に見つかりました。しかし、私はそれを使用しようとすると、私は例外を取得:スレッドにバインドLiferayの休止状態の例外

んHibernateのSession、およびコンフィギュレーションは、ここでは、非トランザクション1の 作成することはできません。

私は必要な方法で階級にファサードを書く必要があることを発見しました - *ServiceImpl

私はこれを行う方法を理解できません。手伝ってもらえますか?あなたがメソッドをpersistence.findall呼び出すことserviceImpl内部の一つの方法を作成する必要が

おかげ

答えて

2

何UserGroupLocalServiceUtilから

getUserGroups(long companyId) 

についてご案内いたします。

指定された会社のすべてのユーザーグループを返します。 ThemeDisplayからポートレット要求から会社IDを取得できます。

+0

私が知る限り、会社は必須フィールドではありません。私たちはそれを使用しません。だから、私は他の方法ですべてのユーザーグループを取得する必要があります。 – user1237475

+0

liferayのすべてが一部の企業に接続されています。データベースを調べます。 1つのliferayインスタンスで複数のポータルインスタンスを使用しない限り、通常は1つの企業しかありません(疑問に思う) –

+0

私はテストユーザーを作成し、空の "組織"フィールドを持っています。 "会社"が何か他のものであれば、これは助けになるかもしれませんが、私はコントロールパネルからは見えません - 組織、コミュニティなどのみ "会社"はどこにありますか? – user1237475

0

..

例: - あなたがサービスを構築する際

public List<Student>getStudents() throws SystemException{ 
    return studentPersistence.findAll(); 
} 
+0

serviceImplを作成するにはどうすればよいですか? – user1237475

0

seviceImplクラスが自動的に生成されますされますビルダー.....

+0

、サービスビルダーはどこにありますか?私はnetbeans 7.1を使用しています。私はここにサービスビルダーは見ません。たぶんあなたは私にマニュアルを表示したり、検索を開始して仕事をすることができますか? – user1237475

0

ライフ・ポートレットをプロジェクトに追加するのと全く同じです。サービス・ビルダーには、ライフ・サービスを選択する必要があります。それはあなたが望む列名をデータベースから提供することができるという点でservice.xmlを作成します。その後、大規模なサービス...関連するすべてのクラスが自動的に作成されます。

http://docs.oracle.com/cd/E19316-01/820-7050/ghrxe/index.html

このリンクはuが

+0

私はポータルパックプラグインをインストールし、サービスビルダーを見つけました。リンクありがとうございました。それは便利です。 – user1237475