1 つのサブクラスにのみ存在する属性によってフィルター処理する必要があるスーパークラス タイプの ReadAllQuery があります。私は単一テーブルの継承を使用しているため、属性は DB 内のすべてのサブクラス オブジェクト行に存在しますが、コード内の 1 つのサブクラス ドメイン オブジェクトにのみマップされます。ただし、このクエリを試すと、Eclipselink (2.4.0) で例外が発生します: Invalid query key [subclassAttribute].
参考までに、生成したいSQLは次のようになります。
SELECT *
FROM superclass
WHERE
(subclass_discriminator = 'A' AND attribute_a = 1)
OR
(subclass_discriminator = 'B' AND attribute_b = 1)