0

GlassFishv3 で netbeans を使用して Web アプリを開発しています。

時々、アプリに新しい機能を追加すると、glassfish が愚かなエラーでしつこく始まります。多くの時間を無駄にしてパニックに陥った後、glassfish を再起動してアプリケーションを再度実行すると、突然エラーがすべてなくなり、サイトが表示されます正しく行動し始めます。(または、実際の間違いを犯した場合は、GF から合理的で説明的なエラーを受け取ります。)

[編集: 質問の残りの部分は、私自身の間違いであることが明らかになりました。]

しかし、問題はそれだけではありません。最近、(JSF)ページにコメントを書き込む機能を追加しました。ユーザーがコメントを送信した後、それをデータベースに追加して同じページにリダイレクトするため、ページが新しいコメントで更新されることを願っていますが、そうではありません!

基礎となる Mysql データベースは、新しいコメントが追加されたことを示していますが、ページには新しいコメントが表示されません! 私はすべてを試しました (たとえば、ブラウザーのキャッシュを削除する、別のブラウザーを使用する) が、ページに新しいコメントが表示されるのは、GF を再起動した後だけです!

何が問題なのか分かりますか?これは Glassfish のバグでしょうか?

私が使用しているもの: JSF2、EJB3.1、JPA、MySql

4

2 に答える 2

0

返信ありがとうございます。

はい、Balus と Pascal が述べたように、問題は私自身の論理にあり、幸いにも Glassfish にはありませんでした。

無能は私の側にありました、私は認めて謝罪します;)

実際、問題は JPA 領域にありました。コメントを追加した後、JPA エンティティをマージして更新するのを忘れていました。そのため、データベースにコメントが追加されましたが、JPA エンティティには変更が反映されませんでした。

ちなみに、参考までに、プロジェクトがビルドされない、または GF にデプロイされない (奇妙なエラー メッセージが表示される) という問題が時々ありますが、これは常に GF を再起動することで解決されます (より具体的に、 GF);

おそらく私のミスか、netbeans6.8 のデプロイメントのバグか、まれに GF のせいである可能性があります。

于 2010-02-20T16:03:18.637 に答える
0

どうやらコメントのリストが新しいコメントで更新されていないようです。データ読み込みロジックが正しいかどうかを確認します。おそらく、リクエストスコープのBeanではなく、セッションスコープのBeanのコンストラクターに入れました。挿入 (およびコミット) 後に DB からリストをリロードしていない可能性があります。GF を再起動する代わりに、Web ブラウザーを再起動して (すべてのタブ/インスタンスを閉じて)、ページを再度開いてみてください。それが機能する場合、古い/再ロードされていないデータは、実際にセッション スコープから表示されたばかりです。それでも問題が解決しない場合、問題はおそらく JPA 領域にあり、新しいコメントが実際に永続化およびコミットされているかどうか、および/またはリストがキャッシュからではなく DB から実際に要求されているかどうかをデバッグします。

于 2010-02-19T21:11:51.980 に答える