Consulta com Native Query retornando erro

Bom dia

Tem como fazer consulta com nativeQuery em duas base de dados diferente ?

tenho o método:

public List<MinhaClasse> retornaChamado(){
		Query query = em.createNativeQuery("select * from DataBase1..tabela1 inner join DataBase2..tabela2 on DataBase1..tabela1.id = DataBase2..tabela2.id_tabela1"); 
		return query.getResultList();
	}

me retorna o erro:

Exception in thread "main" java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to br.com.exemplo.modelo.MinhaClasse

se vc fizer isso no console do seu banco de dados funciona?

opá iae DaniloAndrade blz,

funciona sim cara, só mudei o nome do banco e das tabelas

sabe como resolver isso ? pois tá fod.

e qual objeto vc quer retornar?

Preciso juntar duas tabelas uma em cada DataBase

o objeto MinhaClasse

quando

select * from DataBase1..tabela1 inner join DataBase2..tabela2 on DataBase1..tabela1.id = DataBase2..tabela2.id_tabela1

e faz join entre tabela as colunas retornadas no select serão um jução das tabelas do join provavelmente por isso ta dando ClassCastException, ai nesse caso vc tem que decidir qual tabele ser retornada e colocar no select

ex:

select tabela1.* from DataBase1..tabela1 inner join DataBase2..tabela2 on DataBase1..tabela1.id = DataBase2..tabela2.id_tabela1

Esse post mostra como utilizar native query: JPA Consultas e Dicas.

Precisa colocar um cast no getResultList(), assim:

return (List<MinhaClasse>)query.getResultList();

DaniloAndrade deu certo era isso mesmo, fiz assim:

public List<Object[]> retornaChamado(){
		Query objResult = em.createNativeQuery("select DataBase1..Tabela1.id, DataBase1..Tabela1.nome, DataBase2..Tabela2.estatos, DataBase2..Tabela2.descricao from DataBase1..Tabela1 inner join DataBase2..Tabela2 on DataBase1..Tabela1.id = DataBase2..Tabela2.id_tabela1"); 
		return objResult.getResultList();
	}

e numa classe main por exemplo fico:

EntityManager em = new JPAUtil().getEntityManager();
		ChamadoDAO dao = new ChamadoDAO(em);
		em.getTransaction().begin();

List<Object[]> chamados = dao.retornaChamado();
		for (Object[] chamado : chamados) {
			Integer id = (Integer)chamado[0];
			String nome = (String)chamado[1];
			String estatos = (String)chamado[2];
			String descricao = (String)chamado[3];
			System.out.println(id);
			System.out.println(nome);
			System.out.println(estatos);
			System.out.println(descricao);
			System.out.println();
		}

em.getTransaction().commit();
		em.close();

Tive que tratar todos os dados um de cada.