J'ai essayé d'obtenir les données de la fonction PostgresSQL, j'ai utilisé cet exemple hereJPA 2.1 Erreur: Aucun @NamedStoredProcedureQuery a été trouvé avec ce nom:
Ci-dessous la classe de mise en correspondance avec les données IN/OUT:
@XmlType(name="AccountRR")
@NamedStoredProcedureQuery
(
name="getAccountMapping",
procedureName="accountFunction",
parameters = {
@StoredProcedureParameter(name="in_route", mode=ParameterMode.IN, type=String.class),
@StoredProcedureParameter(name="in_round", mode=ParameterMode.IN, type=String.class)
},
resultSetMappings={"AccountRouteRoundMapping"}
)
@SqlResultSetMapping
(
name = "AccountRouteRoundMapping",
entities =
{
@EntityResult
(
entityClass = AccountRouteRound.class,
fields =
{
@FieldResult(name = "name", column = "name"),
@FieldResult(name = "address_1", column = "address_1"),
@FieldResult(name = "address_2", column = "address_2")
[....]
}
)
}
)
public class AccountRouteRound {.............}
Ci-dessous la classe où j'appelle createNamedStoredProcedureQuery
public static List<Account> getAccount(....)
{
em.getTransaction().begin();
StoredProcedureQuery spq = em.createNamedStoredProcedureQuery("getAccountMapping");
List CustomerRRDList = spq.getResultList();
em.getTransaction().commit();
}
J'ai reçu cette erreur:
**Caused by: java.lang.IllegalArgumentException: No @NamedStoredProcedureQuery was found with that name : getAccountMapping**
Où dois-je insérer l'annotation? Qu'est-ce qui ne va pas ?
Merci
Avez-vous oublié l'annotation '@ Entity'? – Kayaman
J'ai essayé avec et sans '@ Entity' – sanfrareau