tomee-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Leonardo K. Shikida" <shik...@gmail.com>
Subject Re: strange qbe query for tomee 1.6.0 stable (OpenJPA 2.3.0-nonfinal-1540826)
Date Thu, 19 Feb 2015 10:17:47 GMT
actually, I thought joincolumn here would be the FK name, not the
referenced PK name in the other table

[]

Leo

On Wed, Feb 18, 2015 at 7:01 AM, Romain Manni-Bucau <rmannibucau@gmail.com>
wrote:

> Hi
>
> not sure it is fixed but wonder if your joincolumn shouldnt be id?
>
>
> Romain Manni-Bucau
> @rmannibucau
> http://www.tomitribe.com
> http://rmannibucau.wordpress.com
> https://github.com/rmannibucau
>
>
> 2015-02-18 9:44 GMT+01:00 Leonardo K. Shikida <shikida@gmail.com>:
> > Hi
> >
> > I have a query like this
> >
> >     public List<E> qbe(E example) {
> >         OpenJPACriteriaBuilder cb = (OpenJPACriteriaBuilder)
> > entityManager.getCriteriaBuilder();
> >         CriteriaQuery<E> q = cb.createQuery(clazz);
> >         Root<E> entity = q.from(clazz);
> >
> >         q.where(cb.qbe(entity, example)); // query by example
> >         q.select(entity);
> >
> >         TypedQuery<E> tq = entityManager.createQuery(q);
> >         return tq.getResultList();
> >     }
> >
> > for entities like this
> >
> > @Entity
> >
> @Table(name="APPUSER",uniqueConstraints=@UniqueConstraint(columnNames={"username"}))
> > public class User implements Serializable{
> >     /**
> >      *
> >      */
> >     private static final long serialVersionUID = 4411272750939441365L;
> >
> >     @Id
> >     @GeneratedValue(strategy = GenerationType.AUTO)
> >     private Long id;
> > (...)
> >
> > and this
> >
> > @Entity
> > public class PasswordRotationJob implements Serializable{
> >
> > (...)
> >     @ManyToOne
> >     @JoinColumn(name="userId")
> >     private User submitter;
> >
> > The QBE query seems to assume a wrong column name
> >
> > Caused by: org.apache.openjpa.lib.jdbc.ReportingSQLException: ORA-00904:
> > "T1"."USERID": invalid identifier
> >  {prepstmnt 1347119244 SELECT t0.id,(...), t1.id, (...), t2.id, (...)
> > FROM PasswordRotationJob
> > t0, APPUSER t1, (...) WHERE (...) AND t0.userId = t1.userId(+) (...)}
> > [code=904, state=42000]
> >
> > Is this a bug? If so, was it addressed in TomEE 1.7.1?
> >
> > TIA
> >
> > Leo
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message