org.hibernate.exception.SQLGrammarException:无法准备语句-找不到表“ USER_DETAIL”; SQL语句:

时间:2019-01-20 21:20:48

标签: java hibernate jpa jpql

调用User login()方法时标题出现错误。 UserDetail实体看起来像这样:

@Entity
@Table(name = "user_detail")
@NamedQueries({ @NamedQuery(name = NamedQueryConstants.USER_FIND_ALL, query = "SELECT u FROM UserDetail u"),
    @NamedQuery(name = NamedQueryConstants.USER_FIND_BY_USER_NAME, query = "SELECT u FROM UserDetail u WHERE u.userName = ?1") })
public class UserDetail implements Serializable {
private static final long serialVersionUID = 1L;

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "user_id")
private Long userId;

private String password;

@Column(name = "user_email_id")
private String userEmailId;

@Column(name = "user_name")
private String userName;

下面是StackTrace:

  

2019-01-21 02:12:37 INFO标准输出:71-休眠:选择userdetail0_.user_id作为user_id1_21_,userdetail0_.last_activity_date作为last_act2_21_,userdetail0_.online_status作为online_s3_21_21,userdetail0_.password_de_0 _._ pass__5_pass__date_5作为密码4。 ,userdetail0_.user_email_id作为user_ema6_21_,userdetail0_.user_name作为user_nam7_21_来自user_detail userdetail0_,其中userdetail0_.user_name =?

     

02:12:38,036警告[org.hibernate.engine.jdbc.spi.SqlExceptionHelper](默认任务4)SQL错误:42102,SQLState:42S02

     

02:12:38,037错误[org.hibernate.engine.jdbc.spi.SqlExceptionHelper](默认任务4)找不到表“ USER_DETAIL”; SQL语句:

     

选择userdetail0_.user_id如user_id1_21_,userdetail0_.last_activity_date如last_act2_21_,userdetail0_.online_status如online_s3_21_,userdetail0_.password_change_date如password4_21_,userdetail0_.password如password5_21_,userdetail0_.user_email_id如user_ema6_21_,userdetail0_.user_name从user_detail userdetail0_其中userdetail0_ user_nam7_21_ .user_name =? [42102-193]

     

2019-01-21 02:12:38 INFO标准输出:71-发生持久性异常#-   org.hibernate.exception.SQLGrammarException:无法准备语句

     

2019-01-21 02:12:38错误stderr:71-javax.persistence.PersistenceException:org.hibernate.exception.SQLGrammarException:无法准备语句

     

2019-01-21 02:12:38错误stderr:71-在org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1692)

     

2019-01-21 02:12:38错误stderr:71-在org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1602)

     

2019-01-21 02:12:38错误stderr:71-在org.hibernate.jpa.internal.QueryImpl.getSingleResult(QueryImpl.java:560)

     

2019-01-21 02:12:38错误stderr:71-在com.itsys.erp.server.dal.impl.GenericJpaDAO.findSingleByProperty(GenericJpaDAO.java:251)

     

2019-01-21 02:12:38错误stderr:71-在com.itsys.erp.server.commonservices.usermgmt.impl.UserManagementServiceImpl.checkUserCredentials(UserManagementServiceImpl.java:29)

     

2019-01-21 02:12:38错误stderr:71-在com.itsys.erp.server.commonservices.usermgmt.slsbadapter.UserManagementServiceSlsb.checkUserCredentials(UserManagementServiceSlsb.java:39)

     

2019-01-21 02:12:38错误stderr:71-在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)

     

2019-01-21 02:12:38错误stderr:71-在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

     

2019-01-21 02:12:38错误stderr:71-在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

     

2019-01-21 02:12:38错误stderr:71-在java.lang.reflect.Method.invoke(Method.java:498)

     

2019-01-21 02:12:38错误stderr:71-在org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)

     

2019-01-21 02:12:38错误stderr:71-在org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)

     

2019-01-21 02:12:38错误stderr:71-在org.jboss.invocation.InterceptorContext $ Invocation.proceed(InterceptorContext.java:509)

     

2019-01-21 02:12:38错误stderr:71-在org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)

     

...    ...

     

2019-01-21 02:12:39错误stderr:71-由以下原因引起:org.hibernate.exception.SQLGrammarException:无法准备语句

     

2019-01-21 02:12:39错误stderr:71-在org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:106)

     

2019-01-21 02:12:39错误stderr:71-在org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42)

     

2019-01-21 02:12:39错误stderr:71-在org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:111)

     

2019-01-21 02:12:39错误stderr:71-在org.hibernate.engine.jdbc.internal.StatementPreparerImpl $ StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:182)

     

2019-01-21 02:12:39错误stderr:71-在org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareQueryStatement(StatementPreparerImpl.java:148)

     

.....

     

2019-01-21 02:12:39错误stderr:71-...还有158个

虽然我可以成功地对上述User login()JPQL查询执行Junit测试,但是从JSF调用login()方法时,仍然遇到上述错误。 我正在JSF中注入EJB服务并使用Wildfly 11 App Server。 造成错误的原因可能是什么?

0 个答案:

没有答案
相关问题