hibernate hsql getting error没有节点的数据类型:org.hibernate.hql.ast.tree.IdentNode

时间:2013-08-13 17:39:08

标签: java hibernate hsqldb

我的hsql中出现错误

No data type for node: org.hibernate.hql.ast.tree.IdentNode 
 +-[IDENT] IdentNode: 'OrderLocation' {originalText=OrderLocation}

My Mapping类就像这样

<class name="core.classes.lab.LabOrder" table="lab_order">

        <id name="Order_ID" type="int" column="labOrder_ID">
            <generator class="increment" /> 
        </id>

        <many-to-one name="TestID" class="core.classes.lab.TestDescription"
            fetch="join">
            <column name="TestID" not-null="true" />
        </many-to-one>

        <property name="OrderLocation" column="labOrder_Location"
            type="string" />
        <property name="OrderStatus" column="labOrder_Status" type="string" />
        <property name="DueDate" column="labOrder_DueDate" type="java.util.Date" />
        <property name="OrderPriority" column="labOrder_Priority"
            type="int" />
        <property name="OrderRemarks" column="labOrder_Remarks" type="string" />

        <property name="OrderCreateDate" column="labOrder_CreateDate"
            type="java.util.Date" />
        <property name="OrderCreateUser" column="labOrder_CreateUser"
            type="int" />
        <property name="OrderLastUpdate" column="labOrder_LastUpdate"
            type="java.util.Date" />
        <property name="OrderLastUpdateUser" column="labOrder_LastUpdateUser"
            type="int" />
    </class>

和我这样的hsql查询

Select e from LabOrder as e,TestDescription as t where e.TestID =t.TestID and t.isSpecimenAvailable = true

任何人都可以告诉我为什么我会收到这样的错误请帮助我谢谢

3 个答案:

答案 0 :(得分:2)

Select e from ....中做什么 e ? 请尝试将其更改为e.OrderLocation*

查看this link示例。

答案 1 :(得分:2)

一个花了我一些时间来调试的问题是一个适用于Hibernate 3.x的查询,就像这样:

SELECT a FROM Actor A

当我升级到Hibernate 4.x时,我收到类似于上面的错误消息。问题出乎意料地是首都A。

答案 2 :(得分:1)

确保正确编写查询,例如

if (returndata[4] == 1) 
    {
        alert("1");
    }

语法:

select user from User user;