CriteriaBuilder Erro

Pessoal estou com o seguinte problema.

Estou montando uma query em 3 tabelas com 3 condições

porem ele esta gerando esta query

Query: ReadAllQuery(referenceClass=Menu sql="SELECT t1.ROW_ID, t1.TB_LEVEL_ROW_ID, t1.TENAT_ID, t1.TB_MODULE_ROW_ID, t1.TB_SUBMODULE_ROW_ID FROM tb_module t0, tb_submodule t2, tb_menu t1 WHERE (((t1.TB_MODULE_ROW_ID = t0.ROW_ID_MODULE.t0.ROW_ID_MODULE) AND (t1.TB_SUBMODULE_ROW_ID = t2.ROW_ID_SUBMODULE.t2.ROW_ID_SUBMODULE)) AND (t1.TENAT_ID = ?)) ORDER BY t0.ROW_ID_MODULE DESC")

meu codigo do criteria

CriteriaBuilder builder = getEm().getCriteriaBuilder();
			
			CriteriaQuery<Menu> cquery = builder.createQuery(Menu.class);
			Root<Menu> rootMenu = cquery.from(Menu.class);
			Root<Module> rootModule = cquery.from(Module.class);
			Root<SubModule> rootSubModule = cquery.from(SubModule.class);
			
			Predicate cond1 = builder.equal(rootMenu.get(Menu_.tbModuleRowId), rootModule.get(Module_.idModule)); 
			Predicate cond2 = builder.equal(rootMenu.get(Menu_.tbSubmoduleRowId), rootSubModule.get(SubModule_.rowId));
			Predicate cond3 = builder.equal(rootMenu.get(Menu_.tenatId), t);
			
			cquery.where(cond1,cond2, cond3);
			cquery.orderBy(builder.desc(rootModule.get(Module_.idModule)));
			
			List<Menu> bean = getEm().createQuery(cquery).getResultList();

mostra o seguinte erro pra mim

Internal Exception: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.ROW_ID_MODULE) AND (t1.TB_SUBMODULE_ROW_ID = t2.ROW_ID_SUBMODULE.t2.ROW_ID_SUBM' at line 1

nao entendi qual o erro nem no banco de dados ele roda.

alguem pode ajudar?

Agradeço desde ja!

abs


Tens duas vezes [b]t0.ROW_ID_MODULE     [/b]

Tens duas vezes t0.ROW_ID_MODULE