Sangcheol Hwang 2013-01-17
upgrade play2.1-RC2
@bc9e0d94030de5d2e54f26900abe0ad399bb4523
.gitignore
--- .gitignore
+++ .gitignore
@@ -18,3 +18,5 @@
 *.iml
 uploads
 RUNNING_PID
+*.db
+
app/controllers/Application.java
--- app/controllers/Application.java
+++ app/controllers/Application.java
@@ -20,7 +20,7 @@
 
 public class Application extends Controller {
 
-	@Cached(key = "index")
+//	@Cached(key = "index")
     public static Result index() {  
     	UserApp.isRememberMe();
     	
app/controllers/IssueLabelApp.java
--- app/controllers/IssueLabelApp.java
+++ app/controllers/IssueLabelApp.java
@@ -19,6 +19,8 @@
 import java.util.ArrayList;
 import java.util.HashMap;
 
+import static play.data.Form.form;
+
 public class IssueLabelApp extends Controller {
 
     public static Result labels(String userName, String projectName) {
app/controllers/MilestoneApp.java
--- app/controllers/MilestoneApp.java
+++ app/controllers/MilestoneApp.java
@@ -8,6 +8,8 @@
 
 import java.util.*;
 
+import static play.data.Form.form;
+
 public class MilestoneApp extends Controller {
 
     public static class MilestoneCondition {
app/controllers/ProjectApp.java
--- app/controllers/ProjectApp.java
+++ app/controllers/ProjectApp.java
@@ -27,6 +27,8 @@
 import com.avaje.ebean.ExpressionList;
 import com.avaje.ebean.Page;
 
+import static play.data.Form.form;
+
 /**
  * @author "Hwi Ahn"
  */
app/controllers/SearchApp.java
--- app/controllers/SearchApp.java
+++ app/controllers/SearchApp.java
@@ -5,6 +5,8 @@
 import play.mvc.*;
 import views.html.search.*;
 
+import static play.data.Form.form;
+
 public class SearchApp extends Controller {
 
     public static class ContentSearchCondition {
app/controllers/SiteApp.java
--- app/controllers/SiteApp.java
+++ app/controllers/SiteApp.java
@@ -20,6 +20,7 @@
 import views.html.site.projectList;
 
 import com.avaje.ebean.Page;
+import static play.data.Form.form;
 
 public class SiteApp extends Controller {
 
app/controllers/UserApp.java
--- app/controllers/UserApp.java
+++ app/controllers/UserApp.java
@@ -33,6 +33,8 @@
 import org.codehaus.jackson.node.ObjectNode;
 import play.libs.Json;
 
+import static play.data.Form.form;
+
 public class UserApp extends Controller {
 
 	public static final String SESSION_USERID = "userId";
@@ -44,7 +46,7 @@
 
 	public static User anonymous = new User();
 
-	@Cached(key = "loginForm")
+//	@Cached(key = "loginForm")
 	public static Result loginForm() {
 		return ok(login.render("title.login", form(User.class)));
 	}
@@ -57,8 +59,12 @@
 		return redirect(routes.Application.index());
 	}
 
-	@Cached(key = "login")
+//	@Cached(key = "login")
 	public static Result login() {
+		Form<User> userForm = form(User.class).bindFromRequest();
+		if(userForm.hasErrors()) {
+			return badRequest(login.render("title.login", userForm));
+		}
 		User sourceUser = form(User.class).bindFromRequest().get();
 
 		Factory<SecurityManager> factory = new IniSecurityManagerFactory("classpath:shiro.ini");
app/models/User.java
--- app/models/User.java
+++ app/models/User.java
@@ -29,7 +29,6 @@
 import com.avaje.ebean.Page;
 
 import controllers.UserApp;
-import sun.security.x509.UniqueIdentity;
 
 @Table(name = "n4user")
 @Entity
@@ -50,7 +49,7 @@
     public String password;
     public String passwordSalt;
 
-    @Email(message = "user.wrongEmail.alert") @Required
+    @Email(message = "user.wrongEmail.alert") 
     public String email;
 
     public String avatarUrl;
app/models/task/Card.java
--- app/models/task/Card.java
+++ app/models/task/Card.java
@@ -46,7 +46,7 @@
     public String body;
     public Date dueDate;
 
-    private static Finder<Long, Card> find = new Finder<Long, Card>(Long.class,
+    public static Finder<Long, Card> find = new Finder<Long, Card>(Long.class,
             Card.class);
 
     public static Card findById(Long id) {
app/utils/Mailer.java
--- app/utils/Mailer.java
+++ app/utils/Mailer.java
@@ -1,6 +1,7 @@
 package utils;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.Iterator;
@@ -17,7 +18,7 @@
 import org.apache.commons.mail.MultiPartEmail;
 
 import play.Application;
-import scala.actors.threadpool.Arrays;
+//import scala.actors.threadpool.Arrays;
 
 public class Mailer {
     private final String smtpHost;
app/views/board/postList.scala.html
--- app/views/board/postList.scala.html
+++ app/views/board/postList.scala.html
@@ -1,4 +1,4 @@
-@(title:String, project:Project, page:Page[Post], param:BoardApp.SearchCondition)
+@(title:String, project:Project, page:com.avaje.ebean.Page[Post], param:BoardApp.SearchCondition)
 
 @import utils.TemplateHelper._
 
app/views/issue/issueList.scala.html
--- app/views/issue/issueList.scala.html
+++ app/views/issue/issueList.scala.html
@@ -1,4 +1,4 @@
-@(title: String, currentPage: Page[Issue], param:support.SearchCondition, project:Project)
+@(title: String, currentPage: com.avaje.ebean.Page[Issue], param:support.SearchCondition, project:Project)
 
 @import helper._
 @implicitFieldConstructor = @{ FieldConstructor(twitterBootstrapInput.render) } 
app/views/pagination.scala.html
--- app/views/pagination.scala.html
+++ app/views/pagination.scala.html
@@ -1,4 +1,4 @@
-@(page:Page[_ <: play.db.ebean.Model], pageNum:Int, divId:String)
+@(page:com.avaje.ebean.Page[_ <: play.db.ebean.Model], pageNum:Int, divId:String)
 
 @{
     var currentPageNum = page.getPageIndex + 1
app/views/project/projectList.scala.html
--- app/views/project/projectList.scala.html
+++ app/views/project/projectList.scala.html
@@ -1,4 +1,4 @@
-@(message: String, currentPage: Page[Project], filter:String, state:String)
+@(message: String, currentPage: com.avaje.ebean.Page[Project], filter:String, state:String)
 
 @home(message, utils.MenuType.PROJECTS) {
   <div class="page">
app/views/search/contentsSearch.scala.html
--- app/views/search/contentsSearch.scala.html
+++ app/views/search/contentsSearch.scala.html
@@ -1,4 +1,4 @@
-@(title: String, project: Project, filter: String, resultIssues: Page[Issue], resultPosts: Page[Post])
+@(title: String, project: Project, filter: String, resultIssues: com.avaje.ebean.Page[Issue], resultPosts: com.avaje.ebean.Page[Post])
 @import utils.TemplateHelper._
 
 @main(title, project, utils.MenuType.NONE) {
app/views/search/issueContentsSearch.scala.html
--- app/views/search/issueContentsSearch.scala.html
+++ app/views/search/issueContentsSearch.scala.html
@@ -1,4 +1,4 @@
-@(project: Project, resultIssues: Page[Issue])
+@(project: Project, resultIssues: com.avaje.ebean.Page[Issue])
 @import utils.TemplateHelper._
 
 @for(issue <- resultIssues.getList()){
app/views/search/postContentsSearch.scala.html
--- app/views/search/postContentsSearch.scala.html
+++ app/views/search/postContentsSearch.scala.html
@@ -1,4 +1,4 @@
-@(project: Project, resultPosts: Page[Post])
+@(project: Project, resultPosts: com.avaje.ebean.Page[Post])
 @import utils.TemplateHelper._
 
 @for(post <- resultPosts.getList()){
app/views/site/paginationForUserList.scala.html
--- app/views/site/paginationForUserList.scala.html
+++ app/views/site/paginationForUserList.scala.html
@@ -1,4 +1,4 @@
-@(page:Page[_ <: play.db.ebean.Model], pageNum:Int, divId:String)
+@(page:com.avaje.ebean.Page[_ <: play.db.ebean.Model], pageNum:Int, divId:String)
 
 @{
     var currentPageNum = page.getPageIndex + 1
app/views/site/projectList.scala.html
--- app/views/site/projectList.scala.html
+++ app/views/site/projectList.scala.html
@@ -1,4 +1,4 @@
-@(message: String, currentPage: Page[Project], filter:String)
+@(message: String, currentPage: com.avaje.ebean.Page[Project], filter:String)
 
 @siteMngMain(message) {
   <div class="row-fluid">
app/views/site/userList.scala.html
--- app/views/site/userList.scala.html
+++ app/views/site/userList.scala.html
@@ -1,4 +1,4 @@
-@(message: String, currentPage: Page[User])
+@(message: String, currentPage: com.avaje.ebean.Page[User])
 
 @siteMngMain(message) {
   <div class="row-fluid">
conf/application.conf
--- conf/application.conf
+++ conf/application.conf
@@ -15,7 +15,7 @@
 # ~~~~~
 # Define the Global object class for this application.
 # Default to Global in the root package.
-# global=Global
+ application.global=Global
 
 # Database configuration
 # ~~~~~ 
@@ -24,10 +24,10 @@
 #
 # H2 Configuration
  db.default.driver=org.h2.Driver
- db.default.url="jdbc:h2:mem:nforge;MODE=PostgreSQL;DB_CLOSE_DELAY=-1"
-# db.default.url="jdbc:h2:file:nforge;MODE=PostgreSQL"
- db.default.user=sa
- db.default.password=sa
+# db.default.url="jdbc:h2:mem:nforge;MODE=PostgreSQL;DB_CLOSE_DELAY=-1"
+ db.default.url="jdbc:h2:file:nforge;MODE=PostgreSQL"
+# db.default.user=sa
+# db.default.password=sa
 
 # MySQL Configuration
 # db.default.driver=com.mysql.jdbc.Driver
@@ -49,18 +49,18 @@
 # You can expose this datasource via JNDI if needed (Useful for JPA)
 # db.default.jndiName=DefaultDS
 
-# Evolutions
-# ~~~~~
-# You can disable evolutions if needed
-# evolutionplugin=disabled
- applyEvolutions.default=true
-
 # Ebean configuration
 # ~~~~~
 # You can declare as many Ebean servers as you want.
 # By convention, the default server is named `default`
 #
-ebean.default="models.*"
+ ebean.default="models.*"
+ 
+# Evolutions
+# ~~~~~
+# You can disable evolutions if needed
+# evolutionplugin=disabled
+# applyEvolutions.default=true
 
 # Logger
 # ~~~~~
project/Build.scala
--- project/Build.scala
+++ project/Build.scala
@@ -1,14 +1,17 @@
 import sbt._
 import Keys._
-import PlayProject._
-import com.github.play2war.plugin._
+import play.Project._
 
 object ApplicationBuild extends Build {
 
-    val appName         = "nforge4"
-    val appVersion      = "1.0-SNAPSHOT"
+  val appName         = "nforge4"
+  val appVersion      = "1.0-SNAPSHOT"
 
-    val appDependencies = Seq(
+  val appDependencies = Seq(
+    // Add your project dependencies here,
+    javaCore,
+    javaJdbc,
+    javaEbean,
       // Add your project dependencies here,
       "mysql" % "mysql-connector-java" % "5.1.18",
       "postgresql" % "postgresql" % "9.1-901.jdbc4",
@@ -21,10 +24,10 @@
       // svnkit-dav
       "sonia.svnkit" % "svnkit-dav" % "1.7.5-1",
       // javahl
-	    "org.tmatesoft.svnkit" % "svnkit-javahl" % "1.3.5",
-	    "net.sourceforge.jexcelapi" % "jxl" % "2.6.10",
-	  // shiro
-	    "org.apache.shiro" % "shiro-core" % "1.2.1",
+      "org.tmatesoft.svnkit" % "svnkit-javahl" % "1.3.5",
+      "net.sourceforge.jexcelapi" % "jxl" % "2.6.10",
+    // shiro
+      "org.apache.shiro" % "shiro-core" % "1.2.1",
       // commons-codec
       "commons-codec" % "commons-codec" % "1.2",
       // apache-mails
@@ -32,25 +35,25 @@
       "commons-lang" % "commons-lang" % "2.6",
       "org.apache.tika" % "tika-core" % "1.2",
       "commons-io" % "commons-io" % "2.4",
-      "com.github.julienrf" %% "play-jsmessages" % "1.2.1"
-//      "org.jacoco" % "org.jacoco.core" % "0.6.1-SNAPSHOT",
-//      "org.jacoco" % "org.jacoco.report" % "0.6.1-SNAPSHOT"
-      
-    )
-    val projectSettings = Play2WarPlugin.play2WarSettings ++ Seq(
+      "com.github.julienrf" %% "play-jsmessages" % "1.4-SNAPSHOT"    
+  )
+
+    val projectSettings = Seq(
       // Add your own project settings here
       resolvers += "jgit-repository" at "http://download.eclipse.org/jgit/maven",
       resolvers += "svnkit-repository" at "http://maven.tmatesoft.com/content/repositories/releases/",
       resolvers += "scm-manager release repository" at "http://maven.scm-manager.org/nexus/content/groups/public",
-      resolvers += "julienrf.github.com" at "http://julienrf.github.com/repo/",
+      resolvers += "julienrf.github.com" at "http://julienrf.github.com/repo-snapshots/",
       templatesImport += "models.enumeration._",
-      lessEntryPoints <<= baseDirectory(_ / "app" / "assets" / "stylesheets" ** "nforge.less"),
+      lessEntryPoints <<= baseDirectory(_ / "app" / "assets" / "stylesheets" ** "nforge.less")
         //      jacoco.settings:_*,
-      Play2WarKeys.servletVersion := "3.0"
+//      Play2WarKeys.servletVersion := "3.0"
       // Or Play2WarKeys.servletVersion := "2.5"
     )
 
-    val main = PlayProject(appName, appVersion, appDependencies, mainLang = JAVA).settings(projectSettings: _*
-//        parallelExecution in jacoco.Config := false
-    )
+  val main = play.Project(appName, appVersion, appDependencies).settings(
+    projectSettings: _*
+    // Add your own project settings here      
+  )
+
 }
project/build.properties
--- project/build.properties
+++ project/build.properties
@@ -1,1 +1,1 @@
-sbt.version=0.11.3
+sbt.version=0.12.2-RC2
(No newline at end of file)
project/plugins.sbt
--- project/plugins.sbt
+++ project/plugins.sbt
@@ -2,13 +2,7 @@
 logLevel := Level.Warn
 
 // The Typesafe repository
-resolvers ++= Seq(
-    "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/",
-    "Play2war plugins release" at "http://repository-play-war.forge.cloudbees.com/release/"
-)
+resolvers += "Typesafe repository" at "http://repo.typesafe.com/typesafe/releases/"
 
 // Use the Play sbt plugin for Play projects
-addSbtPlugin("play" % "sbt-plugin" % "2.0.4")
-
-addSbtPlugin("com.github.play2war" % "play2-war-plugin" % "0.7.4")
-
+addSbtPlugin("play" % "sbt-plugin" % "2.1-RC2")
(No newline at end of file)
Add a comment
List