Srs,
Tenha uma estrutura de classes assim
@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public abstract class Transportadora {}
@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public abstract class TransportadoraPropria extends Transportadora {}
@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public class Filial extends TransportadoraPropria {}
@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public class EmpresaLicenciada extends TransportadoraPropria {}
@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public class Parceiro extends Transportadora {}
Quando a NamedQuery abaixo é executada
“from Transportadora t where Upper(t.nome) like concat(’%’, Upper(:razaoSocial), ‘%’)”
No Oracle eu recebo um erro dizendo que nao existe a tabela Transportadora.
Já no PostgreSQL o erro não acontece e funciona perfeitamente. No caso, traz
Filiais, EmpresaLicenciada e Parceiro.
Alguma configuracao a mais que deve ser feito para a query funcionar no Oracle ?
No caso a versao que tenho aqui é a Oracle 9
Tenho outras queries parecidas porem as classes nao extendem nenhuma aí funciona no Oracle.
Mais uma informação que tenho é que caso a classe abstrata Transportadora for anotada com a anotação
@MappedSuperclass aí no Oracle funciona porem é criado no BD uma tabela “transportadora” coisa que
não pode ocorrer pois a mesma é abstrata.
att