0 0

sitemesh 配置多个装饰页面的问题3

decorators.xml

<?xml version="1.0" encoding="ISO-8859-1"?>

<decorators defaultdir="/decorators">
     <!-- Any urls that are excluded will never be decorated by Sitemesh -->
      <excludes>
        <pattern>/fckeditor/*</pattern>
      </excludes>
      <decorator name="view" page="frame2.jsp">
        <pattern>/document_view.jsp</pattern>
        <pattern>/docitem_view.jsp</pattern>
      </decorator>
      <decorator name="frame" page="frame.jsp">
        <pattern>/*</pattern>
      </decorator>

      <decorator name="panel" page="panel.jsp"/>
      <decorator name="printable" page="printable.jsp"/>
      <decorator name="black" page="black.jsp"/>
      <decorator name="nopanelsource" page="nopanelsource.jsp"/>
      <decorator name="badpanelsource" page="badpanelsource.jsp"/>

    <decorator name="velocity" page="velocity.vm">
        <pattern>/velocity.html</pattern>
    </decorator>

    <decorator name="freemarker" page="freemarker.ftl">
        <pattern>/freemarker.html</pattern>
    </decorator>

    <decorator name="test" page="test.jsp">
        <pattern>/agent.jsp</pattern>
    </decorator>
</decorators>



web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" id="fckeditor-java" xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
>
<display-name>FCKeditor.Java Sample Web Application</display-name>
<description>FCKeditor.Java Sample Web Application</description>
         
       
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>

<welcome-file-list>
<welcome-file>/login.jsp</welcome-file>
</welcome-file-list>

<filter>
<filter-name>CharacterEncodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<filter>
<filter-name>cleanup</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ActionContextCleanUp
</filter-class>
</filter>
<filter-mapping>
<filter-name>cleanup</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<filter>
<filter-name>sitemesh</filter-name>
<filter-class>
com.opensymphony.module.sitemesh.filter.PageFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>sitemesh</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>


<filter>  
            <filter-name>OpenSessionInViewFilter</filter-name>  
                <filter-class>  
                         org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
                </filter-class>  
                <!-- singleSession默认为true,若设为false则等于没用OpenSessionInView -->
                <init-param>  
            <param-name>singleSession</param-name>  
            <param-value>true</param-value>  
       </init-param>  
        </filter>  
        <filter-mapping>  
                <filter-name>OpenSessionInViewFilter</filter-name>  
                <url-pattern>*.do</url-pattern>
        </filter-mapping>
<filter>
<filter-name>struts</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<servlet>
<servlet-name>Connector</servlet-name>
<servlet-class>
net.fckeditor.connector.ConnectorServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>Connector</servlet-name>
<!-- Do not wrap this line otherwise Glassfish will fail to load this file -->
<url-pattern>/fckeditor/editor/filemanager/connectors/*</url-pattern>
</servlet-mapping>

 

</web-app>
我想有两个页面使用单独的装饰页面。其他页面使用另外一个,像上面红色字体那样配置不可以吗?
需要怎么配置,有熟悉sitemesh的兄弟帮忙解答一下。谢谢
2009年4月20日 10:31
目前还没有答案

相关推荐

    sitemesh2 集成velocity 装饰页面乱码

    装饰模板通常包含头部、尾部和侧边栏等通用部分,这些部分可以跨多个页面共享,从而保持网站的统一风格。sitemesh2提供了易于配置的过滤器(Filter)来实现这一功能。 接着,我们要了解velocity。Velocity允许...

    sitemesh

    当一个请求到达服务器,Sitemesh会根据配置找到合适的装饰器,然后使用它来包装请求的页面内容。 在Sitemesh中,`index.html` 可能是一个示例母版页面,包含了网站的标准布局。其他文件如 `badsource.html`、`...

    sitemesh简单教程页面装配器

    它允许开发者定义一个装饰器页面,该页面包含了所有公共的头部、脚部和其他元素,然后通过配置将这个装饰器页面应用于所有的实际内容页面。这样,无论何时需要更新公共元素,只需修改装饰器页面即可,极大地提高了...

    SiteMesh

    一个装饰器通常包含多个区域(例如header, content, footer),开发者可以将页面内容插入到特定的区域中。 2. **布局文件(Layout File)**: 布局文件是HTML模板,用于定义页面的整体结构和样式。它可以包含多个...

    siteMesh demo+文档

    3. **定义装饰模板**:SiteMesh允许你创建一个或多个装饰模板,这些模板定义了页面的结构,如页眉、页脚、侧边栏等。你可以使用HTML或者JSP来编写模板。 4. **应用装饰**:通过在JSP页面中使用特殊的注解(例如`&lt;@...

    sitemesh入门demo

    你可以为不同类型的页面定义多个装饰器,根据URL或特定条件选择使用哪个装饰器。 - 装饰器通过`&lt;@include page="..."/&gt;`指令引入被装饰的页面内容。 4. **页面布局** - 在Sitemesh中,页面布局通过`...

    sitemesh网页组合框架 demo

    Sitemesh的出现解决了这个问题,它允许开发者定义一个或多个装饰模板,然后自动将这些模板应用到所有的Web页面上。 **工作原理**: Sitemesh的工作原理主要是通过拦截HTTP请求,对响应内容进行处理。当用户请求一个...

    sitemesh jar包

    1. **布局模板**:Sitemesh支持自定义布局模板,可以创建多个模板以适应不同类型的页面需求。 2. **局部装饰**:允许开发者指定特定页面的部分区域进行装饰,而不是整个页面。 3. **易集成**:Sitemesh可以轻松地...

    sitemesh3官方下载包

    - **内容区域**:在装饰模板中,可以定义多个内容区域,比如`&lt;s:property value="content" /&gt;`,这样实际的页面内容可以被插入到这些指定的区域中。 - **自定义装饰规则**:开发者可以通过编程或者配置文件定义装饰...

    sitemesh-2.2.1.jar sitemesh-2.2.1.jar

    - **Decorator(装饰器)**:装饰器是Sitemesh的核心,它定义了页面的通用布局,可以包含多个区域,如header、footer、content等。每个区域可以独立定义,以便插入不同的页面内容。 - **Decorator选择器**:允许...

    springMVC与sitemesh的结合

    5. **自定义装饰器**:除了默认的装饰器外,还可以根据需求创建多个装饰器。通过在`&lt;%@ include file="/WEB-INF/decorators/default.jsp" %&gt;`中指定不同的装饰器名称,可以为不同类型的页面应用不同的布局。 6. **...

    sitemesh例子

    1. **自定义装饰器**:除了默认的 `decorator.html`,你还可以创建多个装饰器文件以满足不同页面或模块的需求。 2. **过滤规则**:你可以通过配置 Sitemesh 过滤器,决定哪些 URL 需要应用装饰,哪些不需要。 3. **...

    使用sitemesh替换tiles2,spring mvc+spring web flow+sitemsh

    如果你希望所有页面都使用同一个装饰模板,可以在 `web.xml` 中全局设置。 5. **自定义装饰**:Sitemesh 允许你在特定页面或部分页面上覆盖装饰。你可以使用 `&lt;sitemesh:property&gt;` 标签来访问和修改装饰模板中的...

    sitemesh所需jar包ver2.4.1and 2.4.2

    每个装饰器可以应用于多个页面。 - **Content Pages**:内容页面是实际业务逻辑产生的页面,它们会被装饰器包裹。 - **Decorator Mapping**:通过配置文件或注解,我们可以决定哪个页面应该被哪个装饰器装饰。 5....

    sitemesh教程

    装饰器通常包含一个头部、一个底部以及一个或多个“装饰区”(Decorated Areas),这些区域将被实际的页面内容替换。 - **定义装饰器**: - 在`decorators.xml`文件中定义装饰器: ```xml &lt;head&gt;&lt;![CDATA[ &lt;!...

    SiteMesh简介一(图片不出来。请下附件看)

    它可以被多个页面共享,以保持网站的一致性。 - **过滤器(Filter)**:SiteMesh通过Servlet Filter实现对HTTP请求的拦截,对请求和响应进行处理,然后将内容传递给装饰器进行布局。 **2. SiteMesh工作原理** 当...

    SiteMesh入门示例

    7. **最佳实践**:在实际项目中,推荐为不同类型的页面创建多个 Decorator,比如登录页面、普通页面和错误页面可能需要不同的布局。此外,保持 Decorator 文件的简洁性和可维护性,避免过多的逻辑代码。 通过以上...

    Struts2整合SiteMesh

    SiteMesh则是一个网页布局和装饰框架,它允许开发者定义全局的页面头部、底部和侧边栏,以便在多个页面间共享。将Struts2与SiteMesh整合,可以实现更加统一和规范化的网站外观,并减少重复代码。 整合Struts2和...

    sitemesh简单demo

    除了基础功能,sitemesh 还提供了很多高级特性,如:自定义装饰器选择策略、页面属性传递、支持 Velocity 和 FreeMarker 等模板引擎等。这些特性使得 sitemesh 能够适应更复杂的项目需求。 通过这个“sitemesh简单...

Global site tag (gtag.js) - Google Analytics