Warn seguido de Error sempre nas execuções de query

1 resposta
0

Ola galera!

Estou com um problema nas minhas consultas utilizando hibernate e oracle. Vou descrever o cenário:

Estou migrando uma aplicação que estava rodando em Jboss 4 para Jboss 5, eu retirei as bibliotecas do hibernate que a aplicação usava devido o Jboss 5 já ter as mesmas (Foi a unica mudança para rodar no jboss 5).

A aplicação está rodando normalmente, porém sempre que executo queries com clausulas where por exemplo, obtenho as seguintes linhas no log:

2012-07-24 10:16:58,993 WARN  [org.hibernate.util.JDBCExceptionReporter] (http-0.0.0.0-8080-5) SQL Error: 907, SQLState: 42000
2012-07-24 10:16:58,993 ERROR [org.hibernate.util.JDBCExceptionReporter] (http-0.0.0.0-8080-5) ORA-00907: missing right parenthesis

um exemplo completo com o printi do sql:

2012-07-24 10:16:58,968 INFO  [STDOUT] (http-0.0.0.0-8080-5) Hibernate: 
    select
        * 
    from
        ( select
            chamada0_.ctgrid as ctgrid136_,
            chamada0_.CTGRARQUIVO as CTGRARQU2_136_,
            chamada0_.CTGRBACKUP as CTGRBACKUP136_,
            chamada0_.CTGRCAMINHO as CTGRCAMI4_136_,
            chamada0_.CTGRCNNUMEROA as CTGRCNNU5_136_,
            chamada0_.CTGRCNNUMEROB as CTGRCNNU6_136_,
            chamada0_.CTGRDURACAO as CTGRDURA7_136_,
            chamada0_.CTGRFIM as CTGRFIM136_,
            chamada0_.CTGRINICIO as CTGRINICIO136_,
            chamada0_.CTGRMAQUINA as CTGRMAQ10_136_,
            chamada0_.CTGRNUMA as CTGRNUMA136_,
            chamada0_.CTGRNUMB as CTGRNUMB136_,
            chamada0_.CTGRNUMEROATENDIMENTO as CTGRNUM13_136_,
            chamada0_.CTGRNUMEROA as CTGRNUM14_136_,
            chamada0_.CTGRNUMEROB as CTGRNUM15_136_,
            chamada0_.CTGROBSERVACOES as CTGROBS16_136_,
            chamada0_.CTGRPROTOCOLO as CTGRPRO17_136_,
            chamada0_.CTGRTIPOCHAMADA as CTGRTIP18_136_,
            chamada0_.CTGRULTIMOACESSO as CTGRULT19_136_ 
        from
            Planeta.CT_GR_CHAMADA chamada0_,
            Planeta.CT_GR_CTI cti1_ 
        where
            chamada0_.ctgrid=cti1_.CTGRCHAMADAID(+) 
            and (
                chamada0_.CTGRINICIO between to_date('11-07-2012 00:00', 'dd-mm-yyyy hh24:mi') and to_date('11-07-2012 23:59', 'dd-mm-yyyy hh24:mi')
            ) 
            and (
                cti1_.CTGRNOMEANTENDENTE like ?||'%'
            ) 
        order by
            chamada0_.CTGRINICIO desc ) 
    where
        rownum <= ?
2012-07-24 10:16:58,992 INFO  [STDOUT] (http-0.0.0.0-8080-5) Hibernate: 
    select
        * 
    from
        ( begin planadmapl.pc_gravacao.Pr_Altera_Optimizer_Mode(?); end; ) 
    where
        rownum <= ?
2012-07-24 10:16:58,993 WARN  [org.hibernate.util.JDBCExceptionReporter] (http-0.0.0.0-8080-5) SQL Error: 907, SQLState: 42000
2012-07-24 10:16:58,993 ERROR [org.hibernate.util.JDBCExceptionReporter] (http-0.0.0.0-8080-5) ORA-00907: missing right parenthesis

Alguém pode me ajudar a conseguir executar sem essas 2 linhas (warn e error)?

Desde já agradeço!

1 Resposta

0

Pessoal, segue mais informações:

Notei que o erro só ocorre quando o hibernate gera a seguinte consulta:

select
        * 
    from
        ( begin planadmapl.pc_gravacao.Pr_Altera_Optimizer_Mode(?); end; ) 
    where
        rownum <= ?

Sempre que essa query é gerada pelo hibernate as 2 linhas citadas no primeiro post ocorre, sabem o que pode ser?

Criado 24 de julho de 2012
Ultima resposta 24 de jul. de 2012
Respostas 1
Participantes 1