`
zxt1985
  • 浏览: 21229 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

关于sitemesh不装饰struts2中action返回页面解决方案。

阅读更多
有时候在做struts2的返回页面时,不想让sitemesh装饰action所返回的某个特定的页面,比如:错误页面或者我们自己写的404页面。因为sitemesh是根据url来判断是否装饰的,如果你提交上去的action已经装饰了,那么这个action返回回来的result页面,自然就也会被装饰,因为此时地址栏的url没有变化。如果我们此时不想装饰返回的某个页面时,可以有以下解决方案:(有关sitemesh配置文件我就不做说明了,网上一大堆,呵呵^_^..以下是部分配置说明)
struts.xml部分配置:
<action name="toIndex" class="indexAction" method="toIndex">
		    <result name="index">/main.jsp</result> 
		    <result name="error">/error.jsp</result>
        </action>

我们不想对上面的error.jsp做装饰,那么我们要在error.jsp页面上加一句meta:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
  <head>
    <!-- 不让sitemesh装饰此页面 :content="none"表示在decorators.xml里面的name="none"的装饰器 -->
    <meta name="decorator" content="none"/>
    <title>异常页面</title>
      </head>

然后再在decorators.xml中配置一下:
<?xml version="1.0" encoding="UTF-8"?>
<decorators defaultdir="/layout">
<decorator name="none">
    	<pattern>/error.jsp*</pattern>
    </decorator>
</decorators>

注意:上面的name="none"要和error.jsp页面中的meta "content"属性值一样。好了,配置完了,试试吧,肯定不会再被装饰了,^_^。。。
除了上面的解决方案之外,根据网友的提示,貌似在action中设置result的type="redirect"也可以,不过我没试,有兴趣的可以试试,呵呵。。谢谢大家,第一次发稿,请多指教。。
4
0
分享到:
评论
2 楼 helongno1 2013-01-22  
我按照你的方法,怎么试都出不来,为什么呀?
1 楼 baojyy1 2012-06-15  
太感谢了  

相关推荐

    Struts2核心jar包(2)

    7. **sitemesh-2.3.jar**:SiteMesh是一个页面布局和装饰框架,用于统一Web应用的页面样式。它可以将公共头部、底部等元素应用于所有页面,提高应用的视觉一致性。 8. **ognl-2.6.11.jar**:OGNL(Object-Graph ...

    北大青鸟struts2.0培训基础教程

    2. **成熟社区支持**:Struts2拥有活跃的开发者和用户社区,提供丰富的文档和解决方案。 3. **配置方式多样**:Struts2支持XML和Annotation两种配置方式,使得配置更加灵活。 4. **Action与Servlet API解耦**:...

    北大青鸟struts2教程

    Struts2是一个流行的Java web应用程序框架,用于构建MVC(模型-...总之,Struts2通过其强大的功能和优化的架构,解决了Struts1.x的不足,提高了开发效率和代码质量,为Java web开发提供了一个高效且灵活的解决方案。

    Struts2框架开发详解

    Struts2允许开发者根据项目需求定制自己的解决方案,而丰富的插件和社区资源则提供了大量现成的解决方案,降低了开发难度和维护成本。 接下来,我们会对Web基础技术进行简要介绍,包括B/S和C/S系统的区别,JSP和...

    struts2工作原理.docx

    Struts2是一个强大的MVC(Model-View-Controller)框架,它为Java Web应用程序提供了结构化和可扩展的开发方式。...这使得Struts2能够适应各种复杂的项目需求,提供了一种高效且易于维护的Java Web开发解决方案。

    struts2 PPT教程

    Struts2的主要目标是提供一个更加灵活和强大的解决方案,以解决Struts1.x版本中存在的问题,如表现层技术单一、与Servlet API耦合严重、不易测试等。 在Struts1.x中,表现层技术主要局限于JSP,与Servlet API耦合...

    Struts2+Spring2+Hibernate3

    例如,Struts2的displaytag、sitemesh等标签,可以轻松实现数据展示和页面布局。在描述中提到的"Struts2标签",就是指这些用于简化视图层开发的组件,它们能够帮助开发者快速创建动态、交互式的用户界面。 Spring...

    SSH核心笔记

    Spring框架是一个开源的轻量级Java SE/EE全栈解决方案,它提供了一整套的企业级应用开发解决方案。Spring框架的核心特性包括依赖注入(Dependency Injection, DI)、面向切面编程(Aspect-Oriented Programming, AOP...

    Webwork教程

    - **Struts2**在WebWork的基础上进行了扩展,增加了更多的功能模块,如Action、Result等,并且引入了更为强大的依赖注入机制。 3. **学习价值:** - 学习WebWork可以帮助开发者更好地理解Struts2的工作原理,因为...

    各个框架技术的网址

    在IT领域,特别是软件开发与Web应用开发中,框架(Framework)扮演着至关重要的角色,它们为开发者提供了结构化、模块化的解决方案,大大提升了开发效率和代码质量。根据所提供的文件信息,我们可以归纳出一系列与...

Global site tag (gtag.js) - Google Analytics