【发布时间】:2017-07-16 08:39:02
【问题描述】:
模型文件如下所示:
@Entity
public class Person {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
public String id;
public String name;
}
使用的数据库是 postgres,在应用迁移时出现此错误:
[error] o.h.t.h.SchemaUpdate - HHH000388: Unsuccessful: alter table Person add column _ebean_intercept binary(255)
[error] o.h.t.h.SchemaUpdate - ERROR: type "binary" does not exist
虽然在控制器级别它给出了这些错误:
1) Error injecting constructor, java.lang.NoClassDefFoundError: com/avaje/ebean/bean/EntityBean
at play.db.jpa.DefaultJPAApi$JPAApiProvider.<init>(DefaultJPAApi.java:39)
at play.db.jpa.DefaultJPAApi$JPAApiProvider.class(DefaultJPAApi.java:34)
while locating play.db.jpa.DefaultJPAApi$JPAApiProvider
while locating play.db.jpa.JPAApi
for parameter 0 at play.db.jpa.TransactionalAction.<init>(TransactionalAction.java:20)
while locating play.db.jpa.TransactionalAction
我的控制器看起来像:
public class Application extends Controller {
@Transactional
public Result addPerson() {
Person person = Form.form(Person.class).bindFromRequest().get();
JPA.em().persist(person);
return redirect(routes.Application.index());
}
.....
什么可能导致这个问题,“_ebean_intercept”列的概念是什么?如果需要更多信息,请告诉我。
【问题讨论】:
标签: java postgresql playframework