org.hibernate.QueryException: implicit polymorphism not supported for scroll() queries的解决方案:
这个问题的解释是:多态不支持游标移动查询,这个问题的原因是因为在应用程序中运行的该映射文件被其它的映射继承,构成了“隐式多态”。
解决方法有两种:
第一种:将需要查询的实体(该实体作为父类被继承),改为它的其中一个子类(关系比较密切的子类),再进行查询.
第二种:在映射文件中加入“ polymorphism="explicit" ”该语句的意思为取消多态中子类与父类的继承关系。如下:
<class name="ContributionIdea" table="T_ContributionIdea" dynamic-update="false" dynamic-insert="false" polymorphism="explicit">
<id name="id" column="TID" type="integer">
<generator class="identity"/>
</id>
<property name="contributionID" column="ContributionID" type="integer"/>
<property name="auditUserID" column="AuditUserID" type="integer"/>
<property name="stateID" column="StateID" type="integer"/>
<property name="stateRemark" column="StateRemark" type="string"/>
<property name="auditIdea" column="AuditIdea" type="string"/>
<property name="auditAuthorIdea" column="AuditAuthorIdea" type="string"/>
<property name="planDate" column="PlanDate" type="timestamp"/>
<property name="finishDate" column="FinishDate" type="timestamp"/>
</class>