首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Spring 3从Tiles模板调用控制器

问使用Spring 3从Tiles模板调用控制器
EN

Stack Overflow用户
提问于 2010-11-15 21:34:19
回答 1查看 3.8K关注 0票数 2

我刚刚在Spring 3应用程序中设置了Apache 2。

我创建了我的模板:

代码语言:javascript
复制
 <definition name="baseLayout" template="/WEB-INF/jsp/baseLayout.jsp">
      <put-attribute name="title"  value="Template"/>
      <put-attribute name="header" value="/WEB-INF/jsp/header.jsp"/>
      <put-attribute name="menu"   value="/WEB-INF/jsp/menu.jsp"/>
      <put-attribute name="body"   value="/WEB-INF/jsp/body.jsp"/>
      <put-attribute name="footer"   value="/WEB-INF/jsp/footer.jsp"/>
  </definition>

欢迎页面:

代码语言:javascript
复制
  <definition name="welcome" extends="baseLayout">
      <put-attribute name="title"  value="Welcome"/>
      <put-attribute name="body"   value="/WEB-INF/jsp/home.jsp"/>      
  </definition>

以及瓷砖的性能:

代码语言:javascript
复制
welcome.(class)=org.springframework.web.servlet.view.tiles2.TilesView
welcome.url=welcome

我的控制器:

代码语言:javascript
复制
@RequestMapping(value="/welcome", method=RequestMethod.GET)
public ModelAndView home() {
    logger.info("Welcome home yesssssss!");
    ModelAndView mav = new ModelAndView();
    logger.info("Loading Companies");
    mav.addObject("companys", companyService.loadCompanys());
    mav.setViewName("welcome");
    return mav;
}

效果很好。

但是,如何从模板文件中调用另一个控制器,比如menu.jsp,它将调用这样的控制器:

代码语言:javascript
复制
@RequestMapping(value="/menu", method=RequestMethod.GET)
public ModelAndView menu() {
    logger.info("get MEnu");
    ModelAndView mav = new ModelAndView();
    logger.info("Loading menu");
    mav.addObject("menu", menu.get());
    mav.setViewName("menu");
    return mav;
}

有什么想法吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-11-16 12:18:43

为了调用'menu‘控制器,您需要在属性文件中指定'menu’以及相应的url,该url必须映射到控制器(就像您为欢迎所做的那样)。

我是否可以建议使用.htm表示视图,或者使用.do表示表单等?没有它,如果你试图显示一个视图,或者你试图映射一个请求等等,就很容易感到困惑。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4189022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档