当前位置: 首页 > 知识库问答 >
问题:

QueryException:如果属性不作为列存在,则无法解析属性

孔欣可
2023-03-14

获取以下异常:

原因:org.hibernate.queryException:无法解析属性:primaryAddress:com.hcentive.user.ContactInfo在org.hibernate.persister.entity.abstractPropertyMapping.PropertyException(abstractPropertyMapping.java:62)~[hibernate-Core-5.1.0.final.jar:5.1.0.final]在umber(AbstractEntityPersister.java:1805)~[Hibernate-Core-5.1.0.final.jar:5.1.0.final]在org.hibernate.persister.entity.BasicEntityPropertyMapping.toColumns(BasicEntityPropertyMapping.java:46)~[Hibernate-Core-5.1.0.final.Jar:5.1.0.Final]在org.hibernate.persister.entity.AbstractEntityPersister.ToColumns]在或.getColumns(CriteriaQueryTranslator.java:510)~[Hibernate-core-5.1.0.final.jar:5.1.0.final]在org.hibernate.loader.criteria.criteria.criteriaaquerytranslator.getColumnsusingProject(criteriaquerytranslator.java:469)~[hibernate-core-5.1.0.final.jar:5.1.0.final]在-core-5.1.0.final.jar:5.1.0.final]在org.hibernate.loader.criteria.criteria.criteriajoinwalker.(criteriajoinwalker.java:106)~[hibernate-core-5.1.0.final.jar:5.1.0.final]在org.hibernate.loader.criteria.criteria.criteriajar:5.1.0.final]在org.hibernate.loader.criteria.criteriajar:5.1.0.finalth.jar:5.1.0.final]在org.hibernate.internal.sessionimpl.list(Sessionimpl.java:1773)~[hibernate-core-5.1.0.final.jar:5.1.0.final]在org.hibernate.internal.criteriaimpl.list(criteriaimpl.ja弗吉尼亚州:363)

同时对datatable中的地址列进行排序,该列定义为:

{
                            "mData": function (customer) {
                                var address = customer.userProfile.contactInfo.primaryAddress;
                                return address ? address.displayString : "";

                            },
                            "aTargets": [4],
                            "sName": "userProfile.contactInfo.primaryAddress",
                            "sClass": "wrapWord100"
                         },

primaryAddress作为getter出现在ContactInfo.java实体中

public Address getPrimaryAddress() {
    for (Address add : addresses) {
        if (null != add && AddressTypeEnum.Primary.toString().equals(add.getType())) {
            return add;
        }
    }
    return null;
}
private Set<Address> addresses = new HashSet<Address>();

此错误可能是因为“主地址”不作为列出现在“ContactInfo”中。如何解决这个问题。

    @Entity
    @Table(name = "CONTACT_INFO")
    public class ContactInfo extends Persistent {

    private Set<Address> addresses = new HashSet<Address>();

    @Valid
        public Address getPrimaryAddress() {
            for (Address add : addresses) {
                if (null != add && AddressTypeEnum.Primary.toString().equals(add.getType())) {
                    return add;
                }
            }
            return null;
        }
}

共有1个答案

方德宇
2023-03-14
"mData": function (customer) {
                                var address = customer.userProfile.contactInfo.addresses;
                                return address ? address.displayString : "";

                            },
                            "aTargets": [4],
                            "sName": "userProfile.contactInfo.addresses",
                            "sClass": "wrapWord100"
                         },
 类似资料:
  • 有人知道为什么我会得到这个错误吗: @entity@table(name=“salidas_procesionales”,catalog=“sahe”)公共类SalidasProcesionales实现java.io.serializable{ 我已经删除了长度的构造函数。

  • 我正在尝试从当前用户那里获取特定租金的列表。 控制器中的代码: account\u id是外键。 运行后,我发现错误: 我做错了什么?

  • 我想写一个简单的不存在的地方子句HQL查询。我不熟悉Hibernate,我有一些小问题。 我的查询如下所示: 我想选择所有包含IDUser当天购买的门票的天数。所有这些都与id为IDFest的节日相关。 我的堆栈跟踪: 映射类: Day.java Festivals.java 门票。Java语言

  • 我得到这个错误的原因很奇怪。我将解释这个错误是按时间顺序排列的,以便更容易理解。 这是我的JPA查询,在我添加po之前,它一直工作得很好。it的customer\u id。 商店订单构造器 错误: 我很困惑为什么我调用的表中的一列不被识别。我已经玩了一段时间了,但感觉就像在追我的尾巴。 -------更新------- 我注意到表中的其他BigInt变量在构造函数中很长。因此,我将customer

  • 如果属性和属性存在,thymeleaf中是否有一种简单的方法来显示属性属性的内容?如果我的html页面中有属性“error”和属性“summary”,我想显示它: 如果没有属性“error”,将引发以下错误: 目前,我正在使用以下方法,这似乎太复杂了。 有没有更简单的方法来实现这一点?

  • 问题内容: 我正在使用Hibernate 从表的列中获取值。 但是当我得到结果时,它会引发异常 org.hibernate.QueryException:无法解析属性:com.contaque.hibernateTableMappings.contaque_recording_log的文件名 我的食用豆是: 我从那里获取hibernate-session的hibernateUtil类: 我从表中获