我正在通过 Play Framework 2.0 开发一个网络应用程序。
因为我需要访问 DB2 数据库,所以我在应用程序的 application.conf 文件中添加了以下行:
db.mydb.driver=com.ibm.db2.jcc.DB2Driver
db.mydb.url="jdbc:db2://host:port/databaseName"
db.mydb.user=user
db.mydb.password=pass
db.mydb.jndiName=databaseName
我已成功连接到此数据库,但出现以下异常:
[info] play - datasource [jdbc:db2://host:port/databaseName] bound to JNDI as databaseName
[info] play - database [databaseName] connected at jdbc:db2://host:port/databaseName
[warn] application - play_evolutions table already existed
[error] application -
! @6a8ib4hd7 - Internal server error, for request [GET /] ->
play.api.UnexpectedException: Unexpected exception [SqlSyntaxErrorException: DB2
SQL Error: SQLCODE=-204, SQLSTATE=42704, SQLERRMC=DB2ADMIN.PLAY_EVOLUTIONS, DRI
VER=4.12.55]
at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$3$$anon
fun$1.apply(ApplicationProvider.scala:134) ~[play_2.9.1.jar:2.0]
at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$3$$anon
fun$1.apply(ApplicationProvider.scala:112) ~[play_2.9.1.jar:2.0]
at scala.Option.map(Option.scala:133) ~[scala-library.jar:0.11.2]
at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$3.apply
(ApplicationProvider.scala:112) ~[play_2.9.1.jar:2.0]
at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$3.apply
(ApplicationProvider.scala:110) ~[play_2.9.1.jar:2.0]
at scala.Either$RightProjection.flatMap(Either.scala:277) ~[scala-librar
y.jar:0.11.2]
Caused by: com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-2
04, SQLSTATE=42704, SQLERRMC=DB2ADMIN.PLAY_EVOLUTIONS, DRIVER=4.12.55
at com.ibm.db2.jcc.am.hd.a(hd.java:676) ~[db2jcc4.jar:na]
at com.ibm.db2.jcc.am.hd.a(hd.java:60) ~[db2jcc4.jar:na]
at com.ibm.db2.jcc.am.hd.a(hd.java:127) ~[db2jcc4.jar:na]
at com.ibm.db2.jcc.am.mn.c(mn.java:2621) ~[db2jcc4.jar:na]
at com.ibm.db2.jcc.am.mn.d(mn.java:2609) ~[db2jcc4.jar:na]
at com.ibm.db2.jcc.am.mn.a(mn.java:2085) ~[db2jcc4.jar:na]
为了解决这个问题,我尝试在 application.conf 文件中设置以下行来禁用 Evolutions:
evolutions=disabled
evolutions.enable=false
但我总是遇到上述异常。
谁能帮我解决这个问题?
谢谢
最佳答案
OK...终于找到问题的根源了...
就像我说的那样,我正在使用 Play Framework 2.0 并且正在处理此版本 Play 附带的表单教程项目...
事实证明,禁用 Evolutions 的命令既不是:
进化=禁用 进化=禁用
...而是:
evolutionplugin=禁用
谢谢
关于java - Play Framework 和 DB2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10416457/