This is exactly what I do : adding a test to check if we have property name defined at the level of @Entity otherwise use simpleName()
Charles Moulliard Senior Enterprise Architect Apache Camel Committer ***************************** blog : http://cmoulliard.blogspot.com twitter : http://twitter.com/cmoulliard Linkedlin : http://www.linkedin.com/in/charlesmoulliard Apache Camel Group : http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm On Wed, Dec 9, 2009 at 3:37 PM, Claus Ibsen <claus.ib...@gmail.com> wrote: > On Wed, Dec 9, 2009 at 3:26 PM, Charles Moulliard <cmoulli...@gmail.com> > wrote: > > Not really > > > > The following part of the JPA consumer code by example will use the > > entityType defined at the endpoint and in consequence will generate the > > wrong sql query. > > > > protected QueryFactory createQueryFactory() { > > if (query != null) { > > return QueryBuilder.query(query); > > } else if (namedQuery != null) { > > return QueryBuilder.namedQuery(namedQuery); > > } else if (nativeQuery != null) { > > return QueryBuilder.nativeQuery(nativeQuery); > > } else { > > Class<?> entityType = endpoint.getEntityType(); > > if (entityType == null) { > > return null; > > } else { > > return QueryBuilder.query("select x from " + > > entityType.getName() + " x"); > > } > > } > > } > > > > Try replacing entityType.getName() with entityType.getSimpleName() and > add those annotations that willem suggested with the same simple name. > Then I think it would NOT use the fully qual name. > > > > Regards, > > > > Charles Moulliard > > Senior Enterprise Architect > > Apache Camel Committer > > > > ***************************** > > blog : http://cmoulliard.blogspot.com > > twitter : http://twitter.com/cmoulliard > > Linkedlin : http://www.linkedin.com/in/charlesmoulliard > > > > Apache Camel Group : > > http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm > > > > > > On Wed, Dec 9, 2009 at 3:22 PM, Willem Jiang <willem.ji...@gmail.com> > wrote: > > > >> Hi Charles, > >> > >> Does the Entity annotation do the trick ? > >> eg. > >> > >> @Entity(name="AtivityDefinitin") > >> public class ActivityDefinition { > >> ... > >> } > >> > >> Willem > >> > >> > >> Charles Moulliard wrote: > >> > >>> done : https://issues.apache.org/activemq/browse/CAMEL-2273 > >>> > >>> > >>> Charles Moulliard > >>> Senior Enterprise Architect > >>> Apache Camel Committer > >>> > >>> ***************************** > >>> blog : http://cmoulliard.blogspot.com > >>> twitter : http://twitter.com/cmoulliard > >>> Linkedlin : http://www.linkedin.com/in/charlesmoulliard > >>> > >>> Apache Camel Group : > >>> http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm > >>> > >>> > >>> On Wed, Dec 9, 2009 at 2:59 PM, Claus Ibsen <claus.ib...@gmail.com> > >>> wrote: > >>> > >>> Hi Charles > >>>> > >>>> You are welcome to create a JIRA ticket and try to fix that issue. > >>>> > >>>> I guess you can find out how to change those JPA queries to NOT use > >>>> fully qual names but just the local name. > >>>> > >>>> > >>>> On Wed, Dec 9, 2009 at 2:49 PM, Charles Moulliard < > cmoulli...@gmail.com> > >>>> wrote: > >>>> > >>>>> Hi, > >>>>> > >>>>> I'm stuck with the following problem. The following components : > >>>>> - camel-bam, > >>>>> - camel-jpa, > >>>>> - camel-example-etl, > >>>>> - ... > >>>>> > >>>>> have been designed with JPA specification 1.0 but our implementation > >>>>> uses > >>>>> Hibernate JPA. Unfortunately, Hibernate has added some extensions. > >>>>> > >>>>> A good example is the fully qualified name which is used by camel jpa > >>>>> consumer/producer or in all our select c from > Customer.getClass.getName. > >>>>> > >>>>> The JPA specification does not support this > >>>>> > >>>>> ******* > >>>>> 4.3.1 Naming > >>>>> > >>>>> Entities are designated in query strings by their entity names. The > >>>>> entity name is defined by the name > >>>>> element of the Entity annotation (or the entity-name XML descriptor > >>>>> element), and defaults to > >>>>> the unqualified name of the entity class. Entity names are scoped > >>>>> within the persistence unit and must be > >>>>> unique within the persistence unit. > >>>>> ****** > >>>>> > >>>>> and in consequence, switching from Hibernate to EclipseLink JPA, > >>>>> OpenJPA, > >>>>> ... is not possible today. > >>>>> > >>>>> Any suggestion are welcome to identify the best approach to improve > our > >>>>> components ? > >>>>> > >>>>> Regards, > >>>>> > >>>>> Charles Moulliard > >>>>> Senior Enterprise Architect > >>>>> Apache Camel Committer > >>>>> > >>>>> ***************************** > >>>>> blog : http://cmoulliard.blogspot.com > >>>>> twitter : http://twitter.com/cmoulliard > >>>>> Linkedlin : http://www.linkedin.com/in/charlesmoulliard > >>>>> > >>>>> Apache Camel Group : > >>>>> http://www.linkedin.com/groups?home=&gid=2447439&trk=anet_ug_hm > >>>>> > >>>>> > >>>> > >>>> -- > >>>> Claus Ibsen > >>>> Apache Camel Committer > >>>> > >>>> Author of Camel in Action: http://www.manning.com/ibsen/ > >>>> Open Source Integration: http://fusesource.com > >>>> Blog: http://davsclaus.blogspot.com/ > >>>> Twitter: http://twitter.com/davsclaus > >>>> > >>>> > >>> > >> > > > > > > -- > Claus Ibsen > Apache Camel Committer > > Author of Camel in Action: http://www.manning.com/ibsen/ > Open Source Integration: http://fusesource.com > Blog: http://davsclaus.blogspot.com/ > Twitter: http://twitter.com/davsclaus >