我正在使用带有GlassFishv3的netbeans开发一个Web应用程序。
每隔一段时间,当我在我的应用程序中添加一个新功能时,glassfish开始唠叨愚蠢的错误,经过大量的时间浪费和恐慌,我重新启动glassfish并再次运行我的应用程序,然后突然错误全部消失我的网站开始正常运作。 (或者如果我犯了一个真正的错误,我会收到GF的合理和描述性错误。)[编辑:问题的其余部分被揭露是我自己的错误。]
但问题不止于此。最近,我添加了在(JSF)页面中编写注释的功能,在用户提交注释后,我将其添加到数据库并重定向到同一页面,以便希望页面刷新新注释,但它不会!
底层的Mysql数据库显示已添加新评论,但该页面不会显示新评论!我已尝试过所有内容(例如删除浏览器缓存,使用不同的浏览器),但只有在重新启动GF后,页面才会显示新评论!
你知道问题是什么吗?这可能是一个Glassfish错误吗?
我正在使用的是:JSF2,EJB3.1,JPA,MySql
答案 0 :(得分:0)
显然评论列表没有用新评论刷新。验证数据加载逻辑是否正确。也许你已经将它放在会话范围bean的构造函数中而不是请求范围的bean中。也许你没有在插入(和提交)后从DB重新加载列表。而不是重新启动GF,尝试重新启动webbrowser(关闭所有选项卡/实例)并重新打开页面。如果它有效,那么旧的/未重新加载的数据确实刚刚从会话范围中显示出来。如果这不能解决问题,则问题可能在JPA区域中更多,如果新注释实际上是持久和提交的,则调试,和/或如果实际上是从DB请求列表而不是从缓存等请求。
答案 1 :(得分:0)
感谢回复,
是的,正如Balus和Pascal所提到的,这个问题在我自己的逻辑中存在,幸运的是不在Glassfish中。
无能为力,我承认并道歉;)
确实问题出在JPA领域,我忘了 合并 和 刷新 我的JPA实体添加评论后;所以尽管在数据库中添加了 comments ,但我的JPA实体不会反映这些变化。
顺便说一下,仅供参考,我仍然偶尔会遇到我的项目无法构建和/或不部署到GF(发出奇怪的错误消息)的问题,这总是通过重新启动GF来解决(更具体地说,通过重新启动GF中的默认域;
这可能是我的错误,或netbeans6.8的部署错误,或者在不太可能的情况下,GF的错误。