我正在使用Hibernate处理JSF。我有一个dataTable,其中的值将使用Hibernate(ORM)从数据库中检索,
问题说明
我从不同的表中检索值并将其显示在dataTable
中,
从JSF页面dataTable,点击按钮,我将使用dataTable
在pojo
类中设置<f:setPropertyActionListener >
行值
所以我将使用这些值进一步使用,
工作正常如果我从单个数据库表中检索值
当我从不同的表中检索值并将其显示在dataTable中时,pojo
使用<f:setPropertyActionListener >
显示以下堆栈跟踪,
我不知道该怎么办,对此有何建议?
答案 0 :(得分:0)
您正在使用/必须使用Converter
将数据表从客户端发送的String转换为服务器端的具体Leaverecord-Object。这可以通过
@FacesConverter
注释或Converter
- 接口并在faces-config.xml
中连接的类。 我想,你试图在这里检索一个不同的对象类型,所以前一个转换器就没有采取行动 - JSF试图在POJOs getter方法中放置一个Object
。这种方法需要Leaverecord
我猜。
检查faces-config.xml
是否有
<converter>
<converter-for-class>pojo.YourOtherClassType</converter-for-class>
<converter-class>FittingClassTypeConverter</converter-class>
</converter>
或在类中搜索@FacesConverter(...)
等注释,并为新对象类型添加适当的转换器。
希望有所帮助,否则只需添加评论......: - )
答案 1 :(得分:0)
我得到了一个解决方案,我们可以使用Hibernate不同类型的映射在dataTable
中保存pojo
值。
one-to-many
概念它与其他表相互关联,因此我可以存储从dataTable
到pojo
类的值。