0

我是 Play framework 2 的新手,我正在尝试实现一个 Java 类支持的简单标记。但我无法工作,因为我收到编译错误

浏览器上的编译错误非法启动简单表达式在 \app\views\tags\security.scala.html 第 3 行。

标记文件views/tags/security.scala.html

@(roles:String)(body:Html)
@import helpers.SecurityHelper._
@if(restricted (@session().get("roles"),@roles)==true){
@body
}

Helper类代码包helpers;

public class SecurityHelper {
    public static boolean restricted(String userRoles, String ressourceRoles) {
        String[] roles = userRoles.split("_");
        boolean b = false;
        for (int i = 0; i < roles.length; i++) {
            if (roles[i].indexOf(ressourceRoles) != -1) {
                b = true;
            }
        }
        return b;
    }
}

我想如何使用它:在我的另一个模板中,我将标签称为如下:

@security("job-view"){
Welcome
}

我无法弄清楚问题,有什么建议吗?谢谢

4

1 回答 1

1

也许你需要写下 html 文件的第一行:

@(roles:String, body:Html)(implicit session: Session)

而不是 if 语句中的“@session”,“session”就足够了

但我需要更多关于错误的信息

于 2013-05-13T20:10:14.403 回答