0
と埋め込まelementcollection上のクエリ私はこのような埋め込まれた要素のコレクションを持つエンティティ持っている:私は通過したときにように私はJPA CriteriaBuilderフレームワークを使用して基準を書きたいと思いJPA基準ビルダー
...
@Embedded
@ElementCollection(targetClass = ProviderResponse.class)
@JoinTable(
name = "provider_response",
joinColumns = @JoinColumn(name = "id")
)
@AttributeOverrides({
@AttributeOverride(name = "provider", column = @Column(name = "provider")),
@AttributeOverride(name = "response", column = @Column(name = "response"))
})
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public Set<ProviderResponse> getProviderResponses() {
return providerResponses;
}
...
をそれはProviderResponse
と比較するには、を持つすべてのエンティティをproviderResponses
要素コレクションに返します。
ProviderResponse
は、単に2つの列挙クラスの化合物クラス、Provider
およびResponse
です。
私は述語を作成しようとしています:
Predicate providerResponse = builder.equal(root.<Set<ProviderResponse>>get("providerResponses"), compProviderResponse);
これは
「パラメータ値ProviderResonseが期待されるタイプ[java.util.Setと一致しませんでした」と言って動作していない私はこれを理解しかし、私が望む比較をどうやって行うのかは分かりません。
誰か助けてもらえますか?