在spring roo中添加自定义页面

Tet*_*rax 5 spring-roo

我有一个关于spring roo的问题.

如何在Web应用程序中添加自定义页面?如果我使用标准的Servlet,这似乎是非常基本和简单的,但我很难在Spring roo中做到这一点.我想要的只是主页面(带有菜单等)的链接,链接到我的自定义页面.

我试图向应用程序添加一个新的Servlet,将其路径映射设置为/ custompage.但是当我访问http:// localhost:8080/myapp/custompage时,它显示资源不可用.

我也无法在主页面中添加链接,我试图直接编辑menu.jspx并且它失败了.

任何人都可以告诉我这个吗?任何帮助将不胜感激.

Con*_*ner 6

首先编辑{project_root}/src/main/webapp/WEB-INF/spring/webmvc-config.xmlmvc:view-controller为新页面添加新定义.就像是:

<mvc:view-controller path="/custompage" />
Run Code Online (Sandbox Code Playgroud)

然后打开{project_root}/src/main/webapp/WEB-INF/views/views.xml并添加以下定义:

  <definition extends="public" name="custompage">
    <put-attribute name="body" value="/WEB-INF/views/custompage.jspx"/>
  </definition>
Run Code Online (Sandbox Code Playgroud)

并将您添加custompage.jspx到该{project_root}/src/main/webapp/WEB-INF/views/文件夹.

然后编辑{project_root}/src/main/webapp/WEB-INF/views/menu.jspx和新menu:itemurl="/custompage".

我认为它应该有效.


小智 6

最简单的方法是让Roo为你做.使用controller class --class ~.web.CustomPageController --preferredMapping /custompage和Roo将为您创造一切.

确保在结果控制器中只有你需要的东西,因为如果每个请求有多个映射,它将无法工作(我认为1.1.4中的默认值是简单的'get'有一个模糊的映射)