Java 加载装置时为notmodified枚举键入mistmach
我正在使用@ApplicationStart job用一些值填充dev db,但在用以下命令清除它之后,我遇到了奇怪的行为:Java 加载装置时为notmodified枚举键入mistmach,java,hibernate,playframework,Java,Hibernate,Playframework,我正在使用@ApplicationStart job用一些值填充dev db,但在用以下命令清除它之后,我遇到了奇怪的行为: Fixtures.deleteDatabase() 我的一些模型有一个字段是枚举,每次尝试从yaml读取对象时,它都会在其中一个带有枚举的模型上停止,并引发异常,例如: play.exceptions.JavaExecutionException: Parameter value [OPEN] was not matching type [enumerations.O
Fixtures.deleteDatabase()
我的一些模型有一个字段是枚举,每次尝试从yaml读取对象时,它都会在其中一个带有枚举的模型上停止,并引发异常,例如:
play.exceptions.JavaExecutionException: Parameter value [OPEN] was not matching type [enumerations.OrderStatus]
at play.mvc.ActionInvoker.invoke(ActionInvoker.java:229)
at Invocation.HTTP Request(Play!)
Caused by: java.lang.IllegalArgumentException: Parameter value [OPEN] was not matching type [enumerations.OrderStatus]
at org.hibernate.ejb.AbstractQueryImpl.registerParameterBinding(AbstractQueryImpl.java:360)
at org.hibernate.ejb.QueryImpl.setParameter(QueryImpl.java:435)
at org.hibernate.ejb.QueryImpl.setParameter(QueryImpl.java:72)
at play.db.jpa.JPQL.bindParameters(JPQL.java:169)
at play.db.jpa.JPQL.find(JPQL.java:46)
at models.Order.find(Order.java)
at controllers.Application._prepare(Application.java:52)
...
我不是在修改枚举。“一路”都是一样的。
我做错了什么
ps.Enum并没有映射到db,我认为这可能是问题的根源,但从架构的角度看,您能建议如何正确地执行它吗?我几乎是hibernate/jpa的新手
Upd1
这通常发生在加载时,这里是yaml中的一个模型,它在这里崩溃(正如您在这里看到的一样):
此处的“userStatus”是一个枚举,可能包含ACTIVE、Banked和其他值
我只找到了一个解决方案——模型的trop表,并让hibernate重新创建它(它们)。但有时由于关系,更容易删除整个数据库,这是非常注释;(您能给我们看一下您的.yml文件吗?我们需要yml文件。另外,当您删除或加载对象时会出现错误?抱歉,我感到困惑。您能给我们看一下您的.yml文件吗?我们需要yml文件。另外,当您删除或加载对象时会出现错误?抱歉,我感到困惑。
models.users.GenUser(usr3):
name: V
phoneNumber: "1234567890"
email: v@mail.com.not
login: v
password: "123"
userStatus: ACTIVE