could not initialize proxy - no Session
の意味は何ですか?怠惰なオブジェクトの意味とその理由は何ですか?また、休止状態のlazeプロパティを変更せずに避け、Hibernate.initialize()
を使用しないと、それは私のためには機能しません。はプロキシを初期化できませんでした - セッションおよび遅延オブジェクトなし
1
A
答えて
0
アノテーションで、あなたの方法をマークする必要があります。
他のオブジェクトとの関係を持つデータベースからロードするオブジェクトがある場合、遅延読み込みでは必要なオブジェクトのみをロードでき、関連オブジェクトは必要なときにのみロードされます。
例外は、オブジェクトがデータベースセッションから切断された後に関連オブジェクトにアクセスしようとしたことによるものです(明らかに、ロードするにはdbセッションが必要です)。
状況に対応できる方法がいくつかありますが、最も適切なのはアプリケーションに完全に依存します。
オブジェクトが最初にロードされたトランザクション内で、必要なすべてのデータをロードすることができます(Hibernate.initialise、または単にゲッターを呼び出すだけで動作する場合もあります)。これにより、例外が取り除かれます。
もう1つの方法は、オブジェクトを使用する必要がある場所にIDを渡し、データベースから新しいIDを読み込み、トランザクション内で作業を行うことです。 、多くのIDを渡すことは非常にOOではありませんが、時には最適なオプションです。
たとえば、UIバインディングや「取得」するだけの場所でこのエラーが発生した場合は、遅延セッションのためのdbセッションを提供する「セッションビュー」を検討することができます。
あなたのアプリケーションとそのアーキテクチャについて知らなくても、何が最善の選択肢であるかは分かりません。
これについてさらに議論したい場合は、私にお知らせください。
0
あなたは「遅延ロードが何であるか」を尋ねるに表示されるすべての最初のここで物事のカップル、あります@Transactional
@Transactional
void method(){
Entity e = ... (from database);
e.getLazyField();
}
関連する問題
- 1. 鉛の変換エラー:遅延コレクションの遅延初期化に失敗しました:プロキシを初期化できませんでした - セッションなし
- 2. org.hibernate.LazyInitializationException:遅延コレクションの遅延初期化に失敗しました。プロキシを初期化できませんでした - セッションなし
- 3. Hibernate-ロールのコレクションを遅延して初期化できませんでした。beans.Language.patients、プロキシを初期化できませんでした - セッションなし
- 4. ロールのコレクションを遅延して初期化できませんでした:website.User.purchasedProducts、プロキシを初期化できませんでした - セッションなし
- 5. ロールのコレクションを遅延して初期化できませんでした:プロキシを初期化できませんでした - セッションなし
- 6. 遅延初期化、ORM、およびラムダ
- 7. (org.hibernate.LazyInitializationException)org.hibernate.LazyInitializationException:プロキシを初期化できませんでした - セッションなし
- 8. Hibernate/Spring3:プロキシを初期化できませんでした - セッションなし
- 9. スプリングブート+ jpa +ジャージがプロキシを初期化できませんでした - セッションなし
- 10. LazyInitializationExceptionがプロキシを初期化できませんでした - セッションなし
- 11. Tomcat HTTPステータス500 - プロキシを初期化できませんでした - セッションなし
- 12. Hibernateは、プロキシを初期化できませんでした - 何のセッション
- 13. エラー:Hibernateはプロキシを初期化できませんでした - いいえセッション
- 14. ロールのコレクションを遅延して初期化できませんでした
- 15. com.fasterxml.jackson.databind.JsonMappingException:ロールのコレクションを遅延して初期化できませんでした
- 16. オブジェクトのjsonへの変換中にロールのコレクションを遅延して初期化できませんでした
- 17. プロキシを初期化できませんでした - セッションはありませんか?
- 18. org.hibernate.LazyInitializationException:プロキシを初期化できませんでした - セッションがありません。テストケースの場合JUnit
- 19. ロールのコレクションを遅延して初期化できませんでした:com.pojo.Student.phonenos、セッションもセッションも閉じられていません
- 20. は、プロキシを初期化しないことができませんでした - Javaオブジェクト
- 21. 遅延初期化と初期化
- 22. は、コンテンツを書き込むことができませんでした:プロキシ初期化できませんでした - のページを表示するとき
- 23. Spring JPAはトランザクション内でも遅延プロパティを初期化しません
- 24. プロキシを初期化できませんでした - セッションセッションはありません.LOADとEVICT
- 25. Kotlinクラスプロパティの遅延初期化はコンパイルされません
- 26. WebServiceの呼び出し中にエラーが発生しました - プロキシを初期化できませんでした - セッションなし
- 27. スプリングブート+ジャージーapi + JPA:ロールのコレクションを遅延して初期化できませんでした
- 28. ロールのコレクションを遅延して初期化できませんでしたManyToMany関係
- 29. パラメータでシングルトンを遅延初期化
- 30. 遅延テーブルの初期化
は機能しません –