2012-02-05 19 views
0

JSFとJPAを使用してeコマースJavaエンタープライズアプリケーションを開発しています。 アイテムをバスケットに追加すると、データベースに追加されたアイテムが表示されますが、データベースから取得されたバスケットアイテムのリストは表示されません。 2回目のアクセスで更新されたvaluseが表示されます。それは値をキャッシュしているようです。JPA、キャッシュ関連で永続化した後にUIでリフレッシュしない値

キャッシングなしで値を常にリフレッシュしたいと思います。誰がどのように知っていますか?

答えて

1

バスケットに何かを追加するときにキャッシュをクリアすることができます。バスケットを担当するエンティティを変更しないように調整することもできます。

EclipseLinkを使用している場合。

あなたはバスケットエンティティに対してこの注釈を使用することができます

の1-

@Cache(alwaysRefresh=true) 

2-もしくは、あなたがのEclipseLinkを使用していない場合は、私はあると思います

em.getEntityManagerFactory().getCache().evictAll(); 

ですべてのキャッシュを更新することができますご使用のプラットフォーム上の同じソリューション

1

ありがとうございます! 私は解決策を見つけました:persistence.xmlのShared cache modeをNoneに設定しました

関連する問題