Bonjour,

Je suis entrain d utiliser hibernate 5.4 pour communiquer avec la base de donnée postgresql.
Afin de lancer une requête sql avec une expression regulière, j ai essayé d etendre mon dialect avec cette classe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
public class Custom_dialect extends PostgreSQL82Dialect {
	   public Custom_dialect () {
		   super();
	      registerFunction( "regexp", new SQLFunctionTemplate(StandardBasicTypes.BOOLEAN, "?1 REGEXP ?2") );
 
	   }
	}
En excutant mon code, j 'ai eu cette erreur:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Exception in thread "AWT-EventQueue-0" org.hibernate.hql.internal.ast.QuerySyntaxException: unexpected AST node: ( near line 1, column 45 [from pos.patisserie.dto.Agent A where regexp('s', 'a')]
	at org.hibernate.hql.internal.ast.QuerySyntaxException.convert(QuerySyntaxException.java:74)
	at org.hibernate.hql.internal.ast.ErrorCounter.throwQueryException(ErrorCounter.java:91)
	at org.hibernate.hql.internal.ast.QueryTranslatorImpl.analyze(QueryTranslatorImpl.java:268)
	at org.hibernate.hql.internal.ast.QueryTranslatorImpl.doCompile(QueryTranslatorImpl.java:190)
	at org.hibernate.hql.internal.ast.QueryTranslatorImpl.compile(QueryTranslatorImpl.java:142)
	at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:115)
	at org.hibernate.engine.query.spi.HQLQueryPlan.<init>(HQLQueryPlan.java:76)
	at org.hibernate.engine.query.spi.QueryPlanCache.getHQLQueryPlan(QueryPlanCache.java:150)
	at org.hibernate.internal.AbstractSessionImpl.getHQLQueryPlan(AbstractSessionImpl.java:302)
	at org.hibernate.internal.AbstractSessionImpl.createQuery(AbstractSessionImpl.java:240)
	at org.hibernate.internal.SessionImpl.createQuery(SessionImpl.java:1894)
	at pos.patisserie.dap.Agendao.listAgent(Agendao.java:64)
	at pos.patisserie.views.LISTuser$1.actionPerformed(LISTuser.java:166)
Est que vous pouvez m'aider ou m'orienter pour corriger ce pb.

Merci d'avance