java - NucleusUserException: Cannot access field on entity extending mapped superclass -
i running nucleususerexception while querying google datastore instance. querying field exists on mappedsuperclass on class extends it. here abstract class contains field interested in:
@entity @mappedsuperclass @jsonignoreproperties({ "password" }) public abstract class abstractuser implements user { @persistent protected string emailaddress; public void setemailaddress(string email) { this.emailaddress = email; } public string getemailaddress() { return this.emailaddress; } @id @generatedvalue(strategy = generationtype.identity) private long key; //other stuff. } the concrete instance looks this:
@entity public class client extends abstractuser { //things clients have. } my query failing looks this:
list existinguserswithemail = manager .createquery( "select c client c c.emailaddress = :mail") .setparameter("mail", request.getemailaddress()) .getresultlist(); the exception this:
cannot access field emailaddress on type org.workouthound.user.client org.datanucleus.exceptions.nucleususerexception: cannot access field emailaddress on type org.workouthound.user.client @ org.datanucleus.query.compiler.javaquerycompiler.gettype(javaquerycompiler.java:552) @ org.datanucleus.query.compiler.javaquerycompiler.gettype(javaquerycompiler.java:529) @ org.datanucleus.query.symbol.symboltable.gettype(symboltable.java:118) @ org.datanucleus.query.expression.primaryexpression.bind(primaryexpression.java:118) @ org.datanucleus.query.expression.dyadicexpression.bind(dyadicexpression.java:85) @ org.datanucleus.query.compiler.javaquerycompiler.compilefilter(javaquerycompiler.java:299) @ org.datanucleus.query.compiler.jpqlcompiler.compile(jpqlcompiler.java:75) @ org.datanucleus.store.query.abstractjpqlquery.compileinternal(abstractjpqlquery.java:246) @ org.datanucleus.store.query.query.setimplicitparameter(query.java:690) @ org.datanucleus.jpa.jpaquery.setparameter(jpaquery.java:428) @ org.workouthound.rest.client.userresources.emailisregistered(userresources.java:55) @ org.workouthound.rest.client.userresources.createclient(userresources.java:33) i new datanucleus , google data store. attempted follow tutorial outlined here have missed something. please let me know additional information necessary.
update:
if change field name email getters, setters , query, works...why?
Comments
Post a Comment