2

我试图创建一个控制器继承来检查它是如何Interceptions工作的。

默认控制器ieApplication.java是这样的:

@Before
static void display(){
    System.out.println("Interception method \"Before\" invoked!!!");
}

public static void index() {
    System.out.println("Inside index!!!");
    render();
}

我创建了一个名为的新控制器App.java,它是这样的:

@With(Application.class)

public class App extends Controller {

public static void welcome(String txtName){
    render(txtName);
}

}

这是 index.html 文件:

#{extends 'main.html' /}
#{set title:'Home' /}

<form action="@{App.welcome()}" method="get">
Enter your name: <input type="text" name="txtName">
<input type="submit" value="Submit">
</form>

这是Welcome.html文件:

#{extends 'main.html' /}
#{set title:'Home' /}

Welcome ${txtName?:'Guest'}

我在路由文件中添加了这个条目:

GET     /InterceptionDemo                       controllers.App.welcome

当我输入名称并单击其中的按钮index.html时,出现错误:

The template App/welcome.html does not exist.

我正在尝试使用App.java控制器,但它不工作。该welcome.html文件存在于也存在的views/Application文件夹下index.html

请让我知道如何使它工作......这只是一个垃圾应用程序,它试图开始使用 Play 框架继承。

谢谢。

4

2 回答 2

2

您想将 welcome.html 从 移动views/Applicationviews/App

于 2013-02-02T18:43:35.107 回答
2

试过你的例子,它工作得很好。将 Welcome.html 文件放在错误的目录中,并得到与您相同的错误。但随后创建了 views/App 目录并将其放置在那里,它就可以工作了。

于 2013-02-02T18:43:59.287 回答