从Play!2.04向2.1 升级的一些事

本文仅适合从Play2.04向2.1升级,有问题请绕道。

刚刚完成对一个项目从Play2.04向2.1升级。虽然之前也做过几次,但都比较简单。记下来,说不定有用呢。

基本的升级官网有,也可以看我前面的日志http://somefuture.iteye.com/blog/1980134。主要包括修改project/plugins.sbt、project/Build.scala、project/build.properties文件。

这些都完成后,根据项目情况还需要做很多事情。

比如编译的时候提示页面有问题,如not found: value flash等。

这些问题的出现经过我努力查找,以为是没引入变量所致,所以进行了如下尝试http://somefuture.iteye.com/blog/1984955,但是这样做并没有改变错误依旧。后来做了几个尝试,感觉起作用的做法应该是

val appDependencies = Seq(
      // Add your project dependencies here,
      jdbc,javaCore, javaJdbc,javaJpa,filters,
      "org.hibernate" % "hibernate-entitymanager" % "3.6.9.Final"
    )

 加入了红色的那一行。

有兴趣的可以看看这些帖子:【【【【【【【

http://www.manning-sandbox.com/thread.jspa?messageID=132415

http://stackoverflow.com/questions/15335581/migration-problems-from-play-2-04-to-play-2-1

http://stackoverflow.com/questions/10888407/can-i-call-session-in-template-view-on-play-framework

http://stackoverflow.com/questions/9629250/how-to-avoid-passing-parameters-everywhere-in-play2/9632085#9632085

】】】】】】】

然后是定时任务。好像04的Akka.system().scheduler().scheduleOnce()和10的不一样。

这个方面可以了解下:

【【【【【【【

http://doc.akka.io/docs/akka/2.1.2/project/migration-guide-2.0.x-2.1.x.html

http://doc.akka.io/docs/akka/snapshot/java/scheduler.html

http://stackoverflow.com/questions/15430712/play-framework-2-1-scheduling-async-tasks-java

】】】】】】】

做法就是用

import scala.concurrent.duration.Duration;

 代替

import akka.util.Duration;

 因为后面这个类没有了。然后为scheduleOnce()添加一个对象参数。

完了就是修改form,因为form()不属于Controller了,还是属于Form了。这个比较简单了,就是费些时间。

猜你喜欢

转载自somefuture.iteye.com/blog/1985143