Quelle est la bonne méthode pour valider une requête jpa par programmation. Hibernate valide toutes les requêtes nommées basées sur des annotations sur des entités. Mais comment puis-je appeler cette routine de validation sur des requêtes jpa créées par programme, pour vérifier les erreurs?JPA/Hibernate: validation basée sur le code des requêtes jpa
@Entity public class Foo { @Id public int id; public String name; }
main(...) { Query q = getEntityManager().createQuery("select e from " + Foo.class.getName() + " e where e.name = 'x' "); // validate q here }
Je veux juste valider mes requêtes générées par programme, tout comme Hibernate le fait pour @namedquery. Si une erreur est trouvée, le programme doit bien sûr s'éteindre. Où je fais le contrôle n'est pas la question ici, le comment est. – H2000
@KlausMeier - si vous regardez ici: https://www.hibernate.org/hib_docs/v3/api/org/hibernate/Session.html#createQuery(java.lang.String), vous verrez que le createQuery () peut lancer une exception. Cela pourrait déjà être valide pour vous. Alimenter une requête cassée et voir ce qui se passe? –