问题标签 [struts2-s2hibernate]
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.
java - 依赖注入失败 - 使用完全休眠插件的 struts2 休眠
我正在尝试使用 struts2 完整休眠插件 ( http://code.google.com/p/full-hibernate-plugin-for-struts2 ) 在 struts2 示例中使用休眠。
我已将所有罐子放在我的 lib 文件夹中:
这是我的动作类的代码:
我应该配置了完整的休眠插件来将休眠会话注入到我的动作类中,这个配置在 struts.xml 中:
但是我的操作类在尝试访问 hibernateSession 变量时总是失败,它始终为空。所以依赖注入似乎失败了。
任何想法为什么?请帮忙,非常感谢。还要询问您是否需要查看任何其他配置文件。
hibernate - 使用 Struts2 休眠 - 使用完整休眠插件或其他方法关闭会话?
我正在使用 Struts 2.2.1.1 和 Hibernate 3.6.2.Final。我还将 C3P0 用于在 Tomcat 7.0.11 上运行的连接池。
我遇到的问题是我的 Hibernate 会话没有被关闭,并且我很快超过了“hibernate.c3p0.max_size”属性中配置的最大打开连接数。
我认为这是因为我的休眠会话已打开但从未关闭。我正在从存储在 ServletContext 中的 SessionFactory 打开 Sessions。我尝试在我的 Action 类的 finally{} 块中关闭会话,但这会引发 org.hibernate.LazyInitializationException 异常。
我做了一些研究,发现了Full Hibernate Plugin方法和Open Session in View方法。
我假设这是一个常见问题,我想了解一下最常用的解决方案。
我注意到的另一件事是 Full Hibernate Plugin 支持 Struts 2.0.9+ 到 2.1.6,但我使用的是 2.2.1.1。不确定这是否会成为问题,或者网站是否尚未更新以列出较新版本。
非常感谢任何输入。
java - Struts2 + Full Hibernate Plugin --> 会话已关闭?
与这个问题相关(答案并没有真正切中要害):
使用 Struts2 休眠 - 使用完整休眠插件或其他方法关闭会话?
我有相同的设置:Struts 2.2.3 和 struts2-fullhibernatecore-plugin-2.2.2-GA 。我没有更改 Struts2 和插件的默认值。我使用的是 MySQL,没有额外的连接池,一般来说没有什么特别的。
我在我的操作中使用以下代码:
这仅在大约每 10 次左右出现以下异常,这在我的代码中不会发生,但可能在插件提交事务之后发生。
这是我的代码逻辑中的问题还是与插件有关的问题?如果是后者,配置更改是否有帮助?我想按原样使用插件,我只是担心它不能可靠地工作,或者我对数据库东西的理解太原始并且我的代码需要重写;-)。
hibernate - Hibernate 和 Struts2 java.lang.NullPointerException w/CRUD 演示
我有一个项目,我同时使用 Hibernate 和 Struts2,而且我对它们都是新手。
我在使用 Hibernate 和 Struts2 组合解决 CRUD 过程时遇到了麻烦。我想以特定方式执行此操作,但遇到了麻烦。为了复制我在主项目之外遇到的问题,我从本教程下载了 WAR 并成功运行: http ://struts.apache.org/2.x/docs/crud-demo-i.html
然后我通过进行以下更改向它介绍了 Hibernate:
1) 首先,我将真实项目中的 JAR 添加到这个项目中,以确保我运行所有相同版本的所有内容。关键是我要起诉 Hibernate 3、Struts2 和 FullHibernateCore 插件来链接它们。有关更多详细信息,这是我正在使用的 JAR:
2)添加hibernate.cfg.xml如下:
3) 更新了 com.aurifa.struts2.tutorial.model.Department 和 com.aurifa.struts2.tutorial.model.Employee 并带有持久性注释。
4)创建com.rwblackburn.struts2.tutorial.dao.InitHibernate,并执行它以创建初始数据库并使用与演示相同的数据填充它:
5) 创建了实现 EmployeeDao 的 com.rwblackburn.struts2.tutorial.dao.EmployeeHibernateDao
6) 创建了实现 DepartmentDao 的 com.rwblackburn.struts2.tutorial.dao.DepartmentHibernateDao
7) 更新了 EmployeeDaoService 和 DepartmentDaoService 以使用新的休眠 DAO,而不是演示中的“NoDB”版本
现在,InitHibernate 运行得很好,所以我知道至少有这么多工作并且数据库本身很好。但是,当我尝试在浏览器中加载项目时,index.action 页面会出现此错误:
当我进行调试跟踪时,我可以确认 DepartmentHibernateDao 中的 Session 和 Transaction 变量实际上为空。
经过大量搜索后,我发现了这个线程: Struts2 + Full Hibernate Plugin --> Session is Closed?
这似乎与我遇到的问题相同。但是,即使我将 Struts 版本降级到 2.1.6,我仍然遇到问题,这是我的新库:
此外,我通过在一些休眠会话调用之前添加“if (session == null)”检查来实现该线程中列出的准修复。例如:
第二个如果我添加以避免“org.hibernate.SessionException:会话已关闭!” 基于上述线程。
这让我通过了“java.lang.NullPointerException”和“org.hibernate.SessionException:会话已关闭!” 有时,但这是不一致的,如果我不断刷新页面,它最终会回来。
这是这个新问题的堆栈跟踪(你可以看到我上面的方法中的一些打印行):
我可能只是在我使用会话的一种方法中错过了上述会话检查。然而,在这一点上,这似乎不可能是答案,我要么做错了什么,要么某处缺少某些东西。
如果他们需要,我可以通过电子邮件向任何人发送此测试应用程序的 WAR 文件(使用 Struts 2.1.6)。任何帮助将不胜感激。
谢谢你
PS:我确实首先在插件支持论坛上发布了这个,但没有得到回应,所以希望 SO 能够帮助我(code.google.com/p/full-hibernate-plugin-for 上的 iseu #36 -struts2/问题)
hibernate - 无法使用休眠将对象保存到数据库
我是 sturts2 和休眠框架的新手。我正在制作测试网络应用程序。我有一个模型类“UserDetails”一个DAO 类一个DAO 和动作类的实现。将对象保存到数据库时,出现以下错误:
UserDetails.class
UserDetailsDaoImpl - 实现类
动作类是
当我按下保存按钮时,会发生以下错误
可能有什么问题?提前致谢。
hibernate - Struts2 与 Hibernate 3 集成失败
我想在 Struts2 中使用 Hibernate。加载 SessionFactory 时发生以下错误。
当我在 psvm 的普通类中获取会话工厂时,没有给出错误,但是当只运行 jsp 页面或 Tomcat 时,会抛出上述错误。
我在网上搜了一下。据说是因为有些库不匹配。。
这表示要添加该页面中列出的一些罐子。要找到它们,还提供了一个链接。但是没有找到罐子。
还有另一个页面说full-hibernate-plugin-for-struts2但我找不到任何有用的库。它只有war文件(普通类)和一些没有struts或hibernate库的web项目。
我用
NetBeansIDE 7.0.1
雄猫 7
请任何人知道如何解决这个问题或任何工作库集?
hibernate - struts2-fullhibernatecore-plugin-2.2.2-GA 不工作
我在带有 Hibernate 的演示 strut2 项目中使用 struts2-fullhibernatecore-plugin-2.2.2-GA。我尽力而为,但无法使其发挥作用。我正在使用所有最新的罐子。
我错过了什么吗?
请帮忙
错误日志
我项目中的图书馆
当我访问页面时出现错误
我的客户DAOImpl.java
**已编辑 *********************
当注入 Session 和 Transaction 时,问题出在上面的代码中。我想知道这可能是 struts2-fullhibernatecore-plugin-2.2.2-GA 不支持的问题
因为插件网站http://code.google.com/p/full-hibernate-plugin-for-struts2/提到只有支持的版本是
这个插件兼容 Hibernate Validator 3.1.0 和 4.0.2(从 2.2 版本开始)。
是不是这个问题。有没有人在上面提到的版本中使用过这个插件?
还有一个问题:我们可以在生产环境中使用这个插件吗?
hibernate - 完整的 Hibernate 插件仅适用于 Hibernate3。无论如何与Hibernate4?
为了学习目的,我一直在为我的 CRUD 演示项目使用struts2-fullhibernatecore-plugin-2.2.2-GA 。以下是我得到的错误,并且不同的休眠依赖项试图使其工作。见下文
错误
我从这个线程的答案中了解到 点击这里
比我开始不同的 maven 依赖来检查使用插件的休眠版本并发现
不适用于以下版本
工作到这个版本
问题:显然不想使用 Hibernate3 那么有没有办法可以将最新的 hibernate4+ 与 struts2-fullhibernatecore-plugin-2.2.2-GA 一起使用?
问题: struts2中hibernate使用最广泛的DI是什么。如果上面的插件不起作用,我应该选择Spring 还是 google juice ?除了viewpattern之外,没有看到任何其他可行的管理休眠会话的解决方案,但是说它的反模式并且有很多缺点。
hibernate - Struts2 休眠插件
我正在寻找一个与struts2配合良好的hibernate插件,它可以使用hibernate(JPA)查询数据并在jsp中显示它而不会违反诸如hibernate会话关闭之类的情况。
我正在使用最新的 struts2,Hibernate (JPA)。
使用 Hibernate 的 Spring DAO 或 JPA 更好吗?我更喜欢JPA。
将 Full HIbernate Plugin 与最新的 struts2 和 Hibernate 一起使用是否可行?
请帮忙。
谢谢。
java - Java Hibernate 连接泄漏
使用 Hibernate 和 Struts2,整个流程如下:
hibernate.cfg.xml
作为:
对于 DAO 的扩展AbstractSimpleGenericDao
:
然后在我的 DAO 类中扩展DAO之上,例如:
然后在我的 struts Action 类中,实例化 DAO 并检索列表:
如果我正在调用此abc
Action 类,通过重复单击指定的菜单链接,它会导致连接泄漏,计为打开的连接,我可以使用 jProfiler 看到,并且永远不会关闭。同时,它也在泄漏连接。
使用 jProfiler 的所有打开的泄漏连接的 StackTrace :
为什么 Hibernate 会泄露这些连接?
是不是这样,Hibernate 将连接保持在会话中并重用相同的连接,因此,如果我同时发出并发请求,如果会话连接被占用,它会泄漏连接。这只是我假设。我没有任何想法。