在spring roo中添加自定义页面

时间:2011-04-16 14:47:38

标签: spring-roo

我有一个关于春天的问题。

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

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

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

任何人都可以告诉我这件事吗?任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:6)

首先编辑您的{project_root}/src/main/webapp/WEB-INF/spring/webmvc-config.xml并为新页面添加新的mvc:view-controller定义。类似的东西:

<mvc:view-controller path="/custompage" />

然后打开{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>

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

然后使用{project_root}/src/main/webapp/WEB-INF/views/menu.jspx修改menu:item和新url="/custompage"

我认为它应该有用。

答案 1 :(得分:6)

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

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