调用notFound()时,404和500错误视图(404.html和505.html)不会呈现

时间:2012-05-31 15:50:13

标签: playframework playframework-1.x

我把它缩小到我添加路线的时候:

/ {userid} Application.blah

在函数(Application.blah)中,我以为我是通过使用notFoundIfNull(用户)来处理它的

我的问题是每当我在网站上输入随机网址时,我都会回复文字 在生产环境中“找不到”而不是呈现的404.html页面

1 个答案:

答案 0 :(得分:0)

嗯,在控制器里面使用这个.Application.java:

public static void blah (String userid)
{
    User test=null;
    try{
        test = User.findById(userid);
    } catch(Exception e)
    {
        //lookup exception!
    }
    notFoundIfNull(test);
}

我的route.conf包含:

GET     /{userid}           Application.blah

我能够查看包含此内容的/apps/views/errors/404.html:

#{if !play.mode.name() == 'DEV'}
  ...insert production 404 here...
#{/if}

如果您的格式符合此格式,那么问题可能与您在制作404中调用的内容有关。在我的403页面中,我发现如果我调用$ {response.reason},它只会渲染整个页面这里提到的403响应:How do I obtain the 'reason' for a forbidden()?。祝你好运!