問題タブ [guice-persist]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
737 参照

guice - guice-persistは@Finderアノテーションをサポートしていますか

Guice-persistは、ファインダーメソッドの概念を持つwarp-persistに基づいていました。

http://code.google.com/p/google-guice/wiki/GuicePersist

に基づいていた

http://code.google.com/p/warp-persist/

guice-persistにはwarp-persistと同様の@Finderのアノテーションがあることがわかりますが、ドキュメントはありません。

0 投票する
1 に答える
5713 参照

java - Hibernate/JPAが起動時にDBスキーマに対して検証されない

何らかの理由で、Hibernateはエンティティを存在しないテーブルにマッピングするなどの問題をキャッチしていません。私のpersistence.xmlファイルは次のようになります...

0 投票する
1 に答える
1359 参照

hibernate - Guice を使用してプロパティを XML ファイルに挿入/解決し、persistence.xml ファイルを構成する方法は?

私は guice-persist を使用しています。Spring で行うように、Java プロパティ ファイルから persistence.xml ファイルにプロパティを挿入またはリゾルバする方法があるかどうかを知りたいです。例えば:

そうでない場合、プロパティ ファイルからこのプロパティを挿入するために、guice-persist ライブラリを使用して EntityManager を構成するにはどうすればよいですか?

ありがとう!

0 投票する
1 に答える
789 参照

transactions - GuiceとJerseyを使用してGETリクエストで読み取り専用トランザクションを構成するには?

Guice、Guice Persist、Hibernate、Jersey を使用しています。@GET アノテーションが付けられたメソッドを除いて、すべてのリソース メソッドに @Transactional アノテーションが付けられています。これは、transaction-per-request スコープを構成する正しい方法ですか?

0 投票する
4 に答える
2687 参照

jpa - Guice Persist (Guice 3.0) を Wicket 1.5 で使用するにはどうすればよいですか?

Guice Persist (Guice 3.0) を Wicket 1.5 で使用する方法を知りたいです。

これを行う方法を説明する「hello world」タイプの例を見つけることができませんでした。そのような素晴らしい例をリンク/提供できれば、答えとして喜んで受け入れられます。

それまでの間、「hello world」タイプの例を自分で作成して、進行中のコードをここに投稿します。コードを適切に機能させるためのヘルプも回答として受け入れられます。


依存性注入に Guice を使用する、Wicket Examplesの 'hello world' guice の例と非常によく似た単純な wicket プロジェクトをセットアップしました。このプロジェクトを拡張して、「Hello World」の代わりに JPA と Guice Persist も使用するようにしたいと考えています。データベースからユーザーを取得して、そのユーザー名を表示したいと考えています。Guice persistに関する Guice wiki の指示を使用して、これを達成しようとしています。

更新:だから、ちょっとうまくいった。このWebApplication.init()ようにServetModuleをgetComponentInstantiationListeners().add(new GuiceComponentInjector(this, new MyServletModule()));挿入し、ウィケットフィルターの前に、web.xmlファイルの上部にGuiceFilterも追加しました。

アプリケーションを実行するとすべてが機能しますが、廃止されたメソッドの使用に関するこの警告が表示されます。これをさらに調べます。

警告: 非推奨の API を使用しようとしています (具体的には、熱心に作成されたシングルトン内で @Inject ServletContext を使用しようとしています。後方互換性のためにこれを許可していますが、複数のインジェクター (ServletModule を使用) がある場合、予期しない動作が発生する可能性があることに注意してください)。 ) 同じ JVM で実行されています。詳細については、 http: //code.google.com/p/google-guice/wiki/Servlets にある Guice のドキュメントを参照して ください。

ディレクトリツリー

WicketApplication.java

ホームページ.java

ホームページ.html

MyServletModule.java

IService.java

JpaService.java

ユーザー.java

web.xml

persistence.xml

pom.xml

0 投票する
1 に答える
576 参照

entitymanager - guice-persist によるセッションの自動クリア

私は、guice-persist の下で tomcat と hibernate で実行されている guice-servlet を持つ環境を使用しています。私が遭遇した問題は、1 つのリクエストで em.getReference() を使用すると、読み込まれたプロキシ オブジェクトがエンティティ マネージャーのキャッシュに残り、DB からオブジェクトが完全に読み込まれると予想される別のリクエストに表示される可能性があることです。

以前は、デフォルトの動作である EJB3 環境で休止状態を使用していました。エンティティ マネージャのキャッシュは、新しいリクエストごとにクリアされます。guice-persist がリクエストごとにセッションをクリアする方が安全な動作ではないでしょうか? または、少なくとも JpaPersistModule の設定として指定しますか?

EJB3 の動作を担当する hibernate SessionImpl "autoClear" には特別なフラグがあります。新しいエンティティ マネージャーが JpaPersistModule によって作成されているときにフラグを有効にする方法はありますか?

0 投票する
2 に答える
2066 参照

java - 現在のguice-persist UnitOfWorkをコミットする方法は?

UnitOfWorkハイバネートの上に Guice-persist を使用してバックグラウンド タスク メソッド (Quartz が運用) を使用しています。バックグラウンド タスクは、現在のトランザクションをタスクの途中でコミットする必要があるサービスを呼び出し、別のトランザクションを続行します。現在の UnitOfWork をコミットして新しいものを作成するにはどうすればよいですか?

UnitOfWork このサービスも Guice によって管理されますが、シングルトンであり、そのまま呼び出し元にアクセスすることはできません。

理想的には、サービス署名を変更したくありません。回避策は、呼び出し元が にUnitOfWorkパラメーターとして2 つを与えることfoo()ですが、これは少しハッキングされているようです。

編集:将来の仲間の読者が使いやすくするために、ColinD によって提供されたソリューションの私の実装を次に示します。これは法案にうまく適合します:

0 投票する
2 に答える
504 参照

hibernate - JPA2 + Hibernate + Guice-persist:バージョンの動作

私はHibernate3.6Final、Guice-persist、JPA2を使用しています。

とても良いです、私はすべてを構成しました、そして私の豆は@Version private Long version;ゲッターとセッターで、を持っています。

すべてのフィールドにequalsとハッシュコードを実装しました。

私のdaosaveメソッドは:

しかし、私が次のようなことをした場合:

次に、名前を変更してもう一度保存しようとすると、「StaleObjectstateException行が...によって更新または削除されました」というメッセージが表示されます...

オブジェクトを保存するときにエンティティマネージャにバージョンを更新させるために何をしなければならないのか、そしてなぜpersistがこれを行わなかったのかを知りたいです。

前もって感謝します。

0 投票する
1 に答える
3334 参照

gwt - Guice-Persist: クローズされた EntityManager で操作を実行しようとしています

永続化用と webapp 自体 (gwt) 用の 2 つのモジュールを持つ maven によって管理されるアプリがあります。

永続化モジュールでの私のテストは魅力のように機能しますが、webapp で同じメソッドを複数回実行すると、java.lang.IllegalStateException: Attempting to execute an operation on a closed EntityManager..

guice-persist を使用してエンティティ マネージャーを DAO に挿入し、すべての DAO メソッドに@Transactional注釈を付けています。

私の webapp では、次のように記述します。 public class ScuvServletModule extends ServletModule {

を削除するとPersistFilter、動作しますが、トランザクションクローズ例外またはそのようなものがランダムにスローされます。

何か助けはありますか?

0 投票する
2 に答える
2087 参照

hibernate - Guice-Persist-「このスレッドで作業はすでに開始されています。その間にend()をバランスよく呼び出すことなく、UnitOfWork.begin()を2回呼び出したようです。」

私たちのアプリケーションは、Guice-PersistとGuice-Servletを広範囲に使用するJava-GWTアプリケーションです。Warp-persistが最初に使用したものと同様のGuice-Persistのsession-per-HTTPRequest機能の使用で問題が発生したことはありません。

ドキュメントに従って、PersistFilterクラスを介してWebアプリをフィルタリングしています。ここのGuiceドキュメントによると、persistence.xmlファイルにはtransaction-type="RESOURCE_LOCAL"があります。

奇妙な理由で、PROD環境にエラーが表示されています

「このスレッドでの作業はすでに開始されています。その間にend()をバランスよく呼び出すことなく、UnitOfWork.begin()を2回呼び出したようです。」

ここに画像の説明を入力してください

ネストされた作業単位がGuice-Persistでサポートされていないという問題があるようです。リンク

また、最近、休止状態の3.6.3.Finalから4.1.4.Finalに移行しました。彼がguiceと何らかの非互換性を持っているかどうかはわかりません...

この時点で、なぜこれが起こるのかについて、私たちは完全に暗闇の中にいます。