私は、エンティティの何百もの既存のプロジェクトでのHibernate Searchを統合する問題を抱えているが、実体の少なくとも半分を構成キーとして@IdClass注釈を使用するを使用して合成の鍵。 @IdClassアノテーションを使用して問題を解決できますか?にHibernate Searchと@IdClass
また、私はこの記事を読んでHibernate search and composed keyが、私は私の問題を解決するために管理していません。
エンティティクラス:
@Entity
@Table(name="FAKVS_DB")
@IdClass(value=PK_FAKVS_DB.class)
@Audited
@Indexed
public class FAKVS_DB implements Serializable {
@Id
@Column(name="Key_FAM", length=10, nullable=false)l
private String keyFam;
@Id
@Column(name="Komponentennr", nullable=false)
private Integer komponentenNr;
@Id
@Column(name="Hinweis", nullable=true, length=4)
private String hinweis;
//getters and setters
}
とキーで構成:
私は、次の例を持っている
public class PK_FAKVS_DB implements Serializable {
private String keyFam;
private Integer komponentenNr;
private String hinweis;
//getters and setters
}
発生するエラーは、次のとおりです。
HSEARCH000058: HSEARCH000212: An exception occurred while the MassIndexer was transforming identifiers to Lucene Documents
java.lang.ClassCastException: package.entities.module.fi.pk.PK_FAKVS_DB cannot be cast to java.lang.Integer
at org.hibernate.type.descriptor.java.IntegerTypeDescriptor.unwrap(IntegerTypeDescriptor.java:36)
at org.hibernate.type.descriptor.sql.IntegerTypeDescriptor$1.doBind(IntegerTypeDescriptor.java:63)
at org.hibernate.type.descriptor.sql.BasicBinder.bind(BasicBinder.java:90)
at org.hibernate.type.AbstractStandardBasicType.nullSafeSet(AbstractStandardBasicType.java:286)
at org.hibernate.type.AbstractStandardBasicType.nullSafeSet(AbstractStandardBasicType.java:281)
at org.hibernate.loader.Loader.bindPositionalParameters(Loader.java:1995)
at org.hibernate.loader.Loader.bindParameterValues(Loader.java:1966)
at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1901)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1862)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:1839)
at org.hibernate.loader.Loader.doQuery(Loader.java:910)
もしI @IdClを使用することはできませんお尻の注釈は、あなたは何が選択肢であるか教えていただけますか?
ありがとうございます。
返信@Sanneに感謝します。私はあなたがHibernate Searchのプロジェクトリーダーとして働いていることを知りました。近い将来、Hibernate Searchが "@IdClass"アノテーションでも動作するかどうかについてのアイデアはありますか? –