0

我正在使用带有 GlassFishv3 的 netbeans 开发一个 Web 应用程序。

每隔一段时间,当我在我的应用程序中添加一个新功能时,glassfish 就会开始抱怨愚蠢的错误,在浪费了很多时间和恐慌之后,我重新启动 glassfish 并再次运行我的应用程序,然后突然间所有错误都消失了,我的网站开始正确行动。(或者如果我犯了一个真正的错误,我会从 GF 收到一个合理的描述性错误。)

[编辑:问题的其余部分被发现是我自己的错误。]

但问题还不止于此。最近,我添加了在(JSF)页面中写评论的能力,在用户提交他们的评论后,我将它添加到数据库并重定向到同一页面,以便希望页面刷新新评论,但它不会!

底层的Mysql数据库显示已经添加了新评论,但是页面只是不会显示新评论!我已经尝试了所有方法(例如删除浏览器缓存,使用不同的浏览器),但只有在重新启动 GF 之后,页面才会显示新评论!

你知道问题可能是什么吗?这可能是 Glassfish 虫子吗?

我使用的是:JSF2、EJB3.1、JPA、MySql

4

2 回答 2

0

显然评论列表没有用新评论刷新。验证数据加载逻辑是否正确。也许您已经将它放在会话范围 bean 而不是请求范围 bean 的构造函数中。插入(和提交)后,您可能还没有从数据库重新加载列表。尝试重新启动网络浏览器(关闭所有选项卡/实例)并重新打开页面,而不是重新启动 GF。如果它有效,那么旧的/未重新加载的数据确实刚刚从会话范围中显示出来。如果这不能解决问题,那么问题可能更多地出在 JPA 领域,如果新评论实际上被持久化和提交和/或如果列表实际上是从数据库而不是从缓存请求的,等等。

于 2010-02-19T21:11:51.980 回答
0

感谢您的回复,

是的,正如 Balus 和 Pascal 提到的,问题在于我自己的逻辑,幸运的是不在 Glassfish。

我承认并道歉,我无能;)

确实问题出在 JPA 领域,添加评论后我忘记合并刷新我的 JPA 实体;因此,尽管在数据库中添加了评论,但我的 JPA 实体不会反映这些更改。

顺便说一句,仅供参考,我仍然偶尔会遇到我的项目没有构建和/或没有部署到 GF 中的问题(同时发出奇怪的错误消息),这总是通过重新启动 GF 来解决(更具体地说,通过重新启动默认GF);

这可能是我的错误,或者 netbeans6.8 的部署错误,或者在不太可能的情况下,GF 的错误。

于 2010-02-20T16:03:18.637 回答