Note that there are some explanatory texts on larger screens.

plurals
  1. POError Missing parameter in call definition: String
    text
    copied!<p>I'm new with play 2.0. I created a signup form and now I try to create a search form. But I was caught by this <code>error: " Missing parameter in call definition: String In /home/thangnk/Task/conf/routes at line 17. "</code> . </p> <p>Here is my code :</p> <p>CONTROLLER --- Search.java </p> <pre><code>package controllers; import java.util.ArrayList; import java.util.List; import models.Task; import play.*; import play.data.Form; import play.db.ebean.Model.Finder; import play.mvc.*; import views.html.*; public class Search extends Controller{ static Form&lt;Task&gt; myform = form(Task.class); public static Result search(){ return ok(search.render()); } public static Result searchByusername(String username){ Form&lt;Task&gt; filledForm = myform.bindFromRequest(); username=filledForm.get().username; return ok(result_search.render(username)); } } </code></pre> <p>MODELS --- Task.java</p> <pre><code>package models; import java.util.*; import javax.persistence.Entity; import javax.persistence.Id; import play.data.validation.Constraints.Email; import play.data.validation.Constraints.MaxLength; import play.data.validation.Constraints.MinLength; import play.data.validation.Constraints.Required; import play.db.ebean.Model; import play.db.ebean.Model.Finder; @Entity public class Task extends Model { @Id public static Long id; // @Required // @MinLength(6) // @MaxLength(12) public String password; @Email public String email; // @MinLength(6) public String username; public Task() { } public Task(Long id, String username, String email, String password) { this.email = email; this.username = username; this.id = id; this.password = password; } public static Finder&lt;Long, Task&gt; find = new Finder(Long.class, Task.class); public static List&lt;Task&gt; all() { return find.all(); } public static void create(Task task) { task.save(); } public static void delete(Long id) { find.ref(id).delete(); } public static List&lt;Task&gt; searchByusername(String name) { return find.where().like("username", "%" + name + "%").findList(); } } </code></pre> <p>ROUTES <i></p> <pre><code>GET / controllers.Application.index() GET /tasks controllers.Application.tasks() POST /tasks controllers.Application.newTask() POST /tasks/:id/delete controllers.Application.deleteTask(id:Long) # POST /showuser controllers.Application.showUser() # Search GET /search controllers.Search.search() POST /result_search/:String controllers.Search.searchByusername(username:String) -------// This error mark at line "username : String" ---------------------------------- # Map static resources from the /public folder to the /assets URL path GET /assets/*file controllers.Assets.at(path="/public", file) </code></pre> <p></i></p> <p>TERMINAL ----</p> <pre><code>[error] {file:/home/thangnk/Task/}Task/compile:sources: in /home/thangnk/Task/conf/routes - PlayException: Compilation error [Missing parameter in call definition: String] [error] application - ! Internal server error, for request [GET /search] -&gt; sbt.PlayExceptions$RoutesCompilationException: Compilation error [Missing parameter in call definition: String] at sbt.PlayCommands$$anonfun$52.apply(PlayCommands.scala:433) ~[na:na] at sbt.PlayCommands$$anonfun$52.apply(PlayCommands.scala:423) ~[na:na] at sbt.Scoped$$anonfun$hf3$1.apply(Structure.scala:474) ~[na:na] at sbt.Scoped$$anonfun$hf3$1.apply(Structure.scala:474) ~[na:na] at scala.Function1$$anonfun$compose$1.apply(Function1.scala:41) ~[scala-library.jar:0.11.3] at sbt.Scoped$Reduced$$anonfun$combine$1$$anonfun$apply$11.apply(Structure.scala:295) ~[na:na] </code></pre> <p>Hope u guys help me solved it and help me to complete this form.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload