JPA 1.0 erreur: Le nom n'est pas une entité reconnue ou d'un identificateur. Connu des noms d'entité: []
Je suis arriver exception suivante alors que j'essaie d'exécuter de simples JPA 1.0 code.
Ce qui peut être la cause?
5453 DevPQRWDPBSSPersist WARN [P=351601:O=0:CT] openjpa.Enhance - This configuration disallows runtime optimization, but the following listed types were not enhanced at build time or at class load time with a javaagent: "[class com.XYZ.PQR.bss.client.db.data.markerentry, class com.XYZ.PQR.bss.client.db.data.Serviceproduct, class com.XYZ.PQR.bss.client.db.data.Agreementterms, class com.XYZ.PQR.bss.client.db.data.Offeringattribute, class com.XYZ.PQR.bss.client.db.data.marker, class com.XYZ.PQR.bss.client.db.data.OfferingpriceadjustmentrelPK, class com.XYZ.PQR.bss.client.db.data.Serviceoffering, class com.XYZ.PQR.bss.client.db.data.Offeringassociation, class com.XYZ.PQR.bss.client.db.data.OfferingpriceserviceofferingrelPK, class com.XYZ.PQR.bss.client.db.data.Offer, class com.XYZ.PQR.bss.client.db.data.Offeringpriceadjustmentrel, class com.XYZ.PQR.bss.client.db.data.Offeringfamily, class com.XYZ.PQR.bss.client.db.data.Offeringpriceserviceofferingrel, class com.XYZ.PQR.bss.client.db.data.Serviceproductattribute, class com.XYZ.PQR.bss.client.db.data.Offeringprice, class com.XYZ.PQR.bss.client.db.data.Agreement]".
6563 DevPQRWDPBSSPersist TRACE [P=351601:O=0:CT] openjpa.jdbc.SQL - <t 1183336072, conn 944453707> executing prepstmnt 152307988 SELECT so.* from DB2INST1.SERVICEOFFERING so where so.ISDELETED = 0 and so.id in (select oa.SERVICEOFFERINGID from DB2INST1.OFFERINGATTRIBUTE oa where oa.SERVICEOFFERINGID = so.id AND oa.name = ? and oa.STRINGVALUE = ? and oa.ISDELETED = 0) [params=(String) productbundleid, (String) attrValue]
7281 DevPQRWDPBSSPersist TRACE [P=351601:O=0:CT] openjpa.jdbc.SQL - <t 1183336072, conn 944453707> [718 ms] spent
Exception in thread "P=351601:O=0:CT" <openjpa-1.2.1-SNAPSHOT-r422266:686069 nonfatal user error> org.apache.openjpa.persistence.ArgumentException: An error occurred while parsing the query filter "SELECT OBJECT(attr) FROM Offeringattribute attr WHERE attr.serviceofferingid IN (:OfferingIds) AND attr.isdeleted = 0". Error message: The name "Offeringattribute" is not a recognized entity or identifier. Known entity names: []
at org.apache.openjpa.kernel.exps.AbstractExpressionBuilder.parseException(AbstractExpressionBuilder.java:118)
at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getClassMetaData(JPQLExpressionBuilder.java:180)
at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.resolveClassMetaData(JPQLExpressionBuilder.java:150)
at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateMetaData(JPQLExpressionBuilder.java:225)
at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateMetaData(JPQLExpressionBuilder.java:195)
at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.getCandidateType(JPQLExpressionBuilder.java:188)
at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder.access$600(JPQLExpressionBuilder.java:69)
at org.apache.openjpa.kernel.jpql.JPQLExpressionBuilder$ParsedJPQL.populate(JPQLExpressionBuilder.java:1756)
at org.apache.openjpa.kernel.jpql.JPQLParser.populate(JPQLParser.java:56)
at org.apache.openjpa.kernel.ExpressionStoreQuery.populateFromCompilation(ExpressionStoreQuery.java:153)
at org.apache.openjpa.kernel.QueryImpl.newCompilation(QueryImpl.java:658)
at org.apache.openjpa.kernel.QueryImpl.compilationFromCache(QueryImpl.java:639)
at org.apache.openjpa.kernel.QueryImpl.compileForCompilation(QueryImpl.java:605)
at org.apache.openjpa.kernel.QueryImpl.compileForExecutor(QueryImpl.java:667)
at org.apache.openjpa.kernel.QueryImpl.getOperation(QueryImpl.java:1492)
at org.apache.openjpa.kernel.DelegatingQuery.getOperation(DelegatingQuery.java:123)
at org.apache.openjpa.persistence.QueryImpl.execute(QueryImpl.java:243)
at org.apache.openjpa.persistence.QueryImpl.getResultList(QueryImpl.java:293)
at com.XYZ.PQR.bss.client.offering.impl.OfferingServiceImpl.getOfferingsByStringAttribute(OfferingServiceImpl.java:661)
at com.XYZ.PQR.bss.marker.impl.testAks.testAPI(testAks.java:38)
at com.XYZ.PQR.bss.marker.impl.testAks.main(testAks.java:24)
<properties>
<property name="openjpa.ConnectionDriverName" value="com.XYZ.db2.jcc.DB2Driver"/>
<property name="openjpa.ConnectionURL" value="jdbc:db2://xyz.com:50000/ABC"/>
<property name="openjpa.ConnectionUserName" value="usr"/>
<property name="openjpa.ConnectionPassword" value="pwd"/>
<property name="openjpa.jdbc.Schema" value="sch123"/>
<property name="openjpa.Log" value="SQL=TRACE" />
</properties>
Qui serveur d'application utilisez-Vous ? Je pense que l'application n'a pas été entièrement déployé, car il existe aucune entité JPA contexte. Coller plein de trace de pile.
merci pour la réponse.J'ai posté toute trace de la pile
Est-il de l'application autonome ?
ses un webbase application.Mais pour les tests unitaires j'ai écrit une méthode main.J'ai fait de l'entrée en persistent.xml comme le montrent ci-dessus
merci pour la réponse.J'ai posté toute trace de la pile
Est-il de l'application autonome ?
ses un webbase application.Mais pour les tests unitaires j'ai écrit une méthode main.J'ai fait de l'entrée en persistent.xml comme le montrent ci-dessus
OriginalL'auteur akp | 2010-10-12
Vous devez vous connecter pour publier un commentaire.
La première ligne de la trace vous avertit que votre entités ont pas été renforcée au moment de la construction ou à la classe de charge temps avec un javaagent.
Et tandis que ma compréhension est que l'exécution de l'enhancer est pas n'est pas strictement nécessaire, la partie suivante de la trace est encore un indice qui OpenJPA n'est pas au courant de toute entité:
On dirait que quelque chose n'allait pas et/ou que OpenJPA ne pas utiliser les les mécanismes de secours. Recherchez un précédent avertissement dans les journaux. Ou de l'installation le temps de construction d'amélioration.
Les ressources suivantes pourraient vous aider:
OriginalL'auteur Pascal Thivent
Lire ce très soigneusement http://openjpa.apache.org/build-and-runtime-dependencies.html
Vous devez ajouter geronimo-* les bibliothèques de Votre projet, si c'est une application autonome.
est-il un problème persistant.xml.J'ai transmis la configuration de persistent.xml dans le post original
Tout d'abord, utilisez Derby au lieu de db2 pour les tests. Si vous familiariser avec maven suivre ce tutoriel log.illsley.org/2010/05/15/....
en fait je suis nouveau sur le projet de mon entreprise.Le projet utilise JPA, et j'ai de modifier la morue.Aucun autre développeur est familier avec JPA et j'ai 1 jour de délai.En fait application JPA api sont développés-je besoin pour utiliser les Api, mais les api ne sont pas de travail, je suppose un problème de configuration.À la recherche worward pour votre aide
Je dois avoir l'ensemble de votre environnement pour vous aider.
OriginalL'auteur baklarz2048
J'étais confronté à ce problème de façon intermittente avec un héritage JPA 1.0 de l'application web. C'était en raison de requêtes à l'avant de l'Entité de mise en valeur.
Si tout est encore coincé avec une JPA 1.0 de l'application et de la rencontre ce problème de façon intermittente, essayez d'ajouter les éléments suivants à
persistence.xml
:<property name="openjpa.MetaDataRepository" value="Preload=true" />
D'Ouvrir JPA Documentation, Chapitre 6.2: Référentiel De Métadonnées:
Cette option n'était pas disponible avec
openjpa-1.2.1
(2009), mais a été introduit par le tempsopenjpa-1.2.3
a été publié (2013).OriginalL'auteur vallismortis