我正在尝试将我的自定义视图和控制器添加到一个非常基本的 roo 生成的项目中。
通过使用 Spring Tool Suite (STS, Spring 3.1),我创建了一个新项目,然后运行以下 3 个命令:
persistence setup --database MYSQL --provider HIBERNATE --userName *** --password *** --databaseName ***
entity jpa --class com.demoing.domain.Customer --testAutomatically
field string --fieldName firstName --notNull
field string --fieldName lastName --notNull
controller scaffold --class com.demoing.controller.CustomerController --entity com.demoing.domain.Customer
生成这些后,可以在服务器上启动应用程序。
但是,当我添加一个新的 .jspx 文件(如 home.jspx)时,应用程序会在转到特定链接时显示“找不到资源”。我在 src/main/webapp/WEB-INF/views/home.jspx 中的其他视图旁边添加了 jspx
我在 views.xml 中添加了视图的定义并手动创建了一个控制器,如下所示:
package com.demoing.domain;
import javax.servlet.http.HttpServletRequest;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
@Scope(value = "session")
@RequestMapping("/home")
public class HomeController {
@RequestMapping(produces="text/html")
public String home(HttpServletRequest request, Model uiModel ){
return "home";
}
}
以及视图定义:
<definition name="home" extends="public">
<put-attribute name="body" value="/WEB-INF/views/home.jspx" />
</definition>
我想要的只是显示一个全新的空白页面。但是,当我转到“项目/主页”时,它会显示“找不到资源”。
我真的不明白我错过了什么,我希望对这些事情有更多经验的人可以帮助我。