有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java解析Hibernate对象时遇到问题,该对象包含Struts2 xslt结果类型中的集合

我正在编写一个应用程序,它利用一个具有几个多对一和一对多表关系的数据库。我在Eclipse中使用JBOSS工具对数据库进行反向工程,并创建POJO,外键关系的getter和setter如下所示:

@OneToMany(fetch = FetchType.LAZY, mappedBy = "users")
@LazyCollection(LazyCollectionOption.EXTRA)
public Set<Layouts> getLayoutses() {
    return this.layoutses;
}

public void setLayoutses(Set<Layouts> layoutses) {
    this.layoutses = layoutses;
}

在这些情况下,集合要么是空的哈希集,要么是填充了表示数据库中另一个表的POJO的哈希集

问题是转换过程阻塞了Set属性。如果我将FetchType设置为“LAZY”,我会收到一条javax.xml.transform.TransformerException: Error transforming result消息,如果我将其更改为“eanger”,我也不会收到错误消息,但Struts2也不会做出响应(浏览器只是一直在加载)。如果我将集合getter改为“protected”或“private”而不是“public”,那么一切都会顺利进行,当然,除了结果集不包含这些属性这一事实之外

我读到的一切似乎都表明Struts2应该能够处理这些集合,但我能找到的唯一Struts2/Hibernate集成示例处理的是不包含映射外键关系的极其简单的数据

为了让Struts2 xslt结果类型与我的Hibernate持久性对象配合良好,我需要做什么


共 (0) 个答案