Reputation: 647
I am trying to run my first play application but seems I am wrong somewhere. I get Compilation error play.api.templates.HtmlFormat.Appendable does not take parameters In D:\PlayProjects\HelloJava\app\views\index.scala.html
index.scala.html
@(message: String)(level:Int, list:Seq[String])
@main("Welcome to Play Framework") {
<div class="well">
<h1>@message</h1>
@listContainer{
<h@level>Level @level </h@level>
}(level, list){ //this curly brace is error point
<div>footer</div>
}
</div>
}
listContainer.scala.html
@(header:Html)(level:Int , items:Seq[String]) (footer:Html)
<h@level>Here we go ! </h@level>
<div style="margin-left:@{5*level}%">
@header
<ul id="list@level" style="margin-left: @{5*level}%" >
@items.map {item =>
<li>@item</li>
}
</ul>
@footer
</div>
Compilation Results:
classes...
[error] D:\PlayProjects\HelloJava\app\views\index.scala.html:9: play.api.templat
es.HtmlFormat.Appendable does not take parameters
[error] }(level, list){
[error] ^
[error] D:\PlayProjects\HelloJava\app\views\listContainer.scala.html:12: not fou
nd: value footer
[error] @footer
[error] ^
[error] two errors found
[error] (compile:compile) Compilation failed
[error] application -
! @6nl63boe5 - Internal server error, for (GET) [/] ->
play.PlayExceptions$CompilationException: Compilation error[play.api.templates.H
tmlFormat.Appendable does not take parameters]
at play.PlayReloader$$anon$1$$anonfun$reload$2$$anonfun$apply$14$$anonfu
n$apply$16.apply(PlayReloader.scala:304) ~[na:na]
at play.PlayReloader$$anon$1$$anonfun$reload$2$$anonfun$apply$14$$anonfu
n$apply$16.apply(PlayReloader.scala:304) ~[na:na]
at scala.Option.map(Option.scala:145) ~[scala-library.jar:na]
at play.PlayReloader$$anon$1$$anonfun$reload$2$$anonfun$apply$14.apply(P
layReloader.scala:304) ~[na:na]
Upvotes: 0
Views: 1020
Reputation: 647
I found the answer after fiddling with my code :D
@(header:Html)(level:Int , items:Seq[String])(footer:Html)
I removed the space between "Seq[String])" and (footer:HTML) which fixed the issue. Guess there shouldn't be any space between parameter definition.
Upvotes: 1