[Hibernate] Uso de filter-def com sql-query

0 respostas
C

Ola pessoas…

Estou tentando usar o filter-def do hibernate com o sql-query, mas, ao dar o uniqueresult (pois o filtro seria a chave), a session não usou o filter e volta todos os registros.

Alguem tem alguma informação sobre isso, de não ser possível??

Codigos:

Mapping do Hibernate:
<hibernate-mapping package="com.mb.hibernate.jde">
	<class name="hbmUDC">
		<id name="codigo"
				column="drky"
				type="string">
		</id>
					
<property name="descricao"
			column="drdl01"
			type="string"
			not-null="false"
			length="30" />
<filter name="codigo" condition=":codigo = codigo"/>			
</class>
<sql-query name="UDC.Cobranca">
	<return class="hbmUDC" >
		<return-property name="codigo" column="drky"/>
		<return-property name="descricao" column="drdl01"/>
	</return>
SELECT DISTINCT TRIM(DRKY) DRKY, TRIM(DRDL01) DRDL01 FROM F0005 
WHERE DRSY='42' AND DRRT='FR' AND TRIM(DRDL02) = 'CTWEB'
ORDER BY DRDL01
</sql-query>
.... (N's sql-query)
<filter-def name="codigo">
    <filter-param name="codigo" type="string"/>
</filter-def>
</hibernate-mapping>


Busca no Java:
hbmUDCDAO udcDao = new hbmUDCDAO();
udcDao.setConfigurantionFileName(get_driver(ambiente));
session = udcDao.createNewSession();
session.enableFilter("codigo").setParameter("codigo", codigo);
Query q = session.getNamedQuery(namedQuery);
return (String)q.uniqueResult();

Abraços…

Criado 25 de agosto de 2006
Respostas 0
Participantes 1