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

Sitemesh 的路径问题

阅读更多

Sitemesh的问题让人非常头痛,搞了一天。现把心得整理一下

 

首先是decorator.xml里面的配置问题

 

 <decorator name="admin" page="admin.jsp">
        <pattern>/index/login.jsp</pattern>
        <pattern>/index/index.jsp</pattern>
        <pattern>/common/journal/journalHome.jsp</pattern>
    </decorator>

 定义了amin这个装饰器装修的页面,均采用绝对路径

 

其次是装饰器页面里的路径,分为两部分,

<link  rel="stylesheet" type="text/css" href="<%=application.getContextPath()%>/decorators/main.css">

 

这些HTML标签里的 href可以用="<%=application.getContextPath()%>/获得应用环境的路径,没问题

 

但是

<page:applyDecorator page="<%=application.getContextPath()%>/decorators/nav.jsp" name="panel"  encoding="UTF-8" />

 就有问题了,总是编译不过,是否写错了,还是不能这样用,还在研究中

 

不过有一点还是明白的,那就sitemesh过滤器对当前的请求地址进行处理,截取最后一个/前的地址,再加到<page:applyDecorator>标签中的page属性上,如当前请求

http://localhost:8080/macaulites/common/journal/journalHome.jsp

 

<page:applyDecorator page="/decorators/nav.jsp" name="panel"  encoding="UTF-8" />

 

最后得到的地址是

 

http://localhost:8080/macaulites/common/journal/decorators/nav.jsp

 

所以经常出现找不到页面的问题,我们在装饰器标签的page属性用绝对地址"/macaulites"有问题,但用另一种绝对地址形式则无问题如

http://localhost:8080/macaulites/decorators/nav.jsp

 

 

 

现在项目的sitemesh路径的解决方法是:href src 等用 /macaulites/...... 这种形式的绝对路径

                                                       page 属性用  http://localhost:8080/macaulites/ 这种绝对路径

 

 但是上面还是有问题,page属性采用上面那种绝对路径会产生页面乱码,最终用${application.contextPath}解决了所有问题

试一下${pageContext.request.contextPath}

分享到:
评论

相关推荐

    SiteMesh教程及SiteMesh官方文档翻译

    web布局框架 SiteMesh教程及SiteMesh官方文档翻译

    sitemesh

    sitemesh 装饰 母版

    siteMesh demo+文档

    siteMesh demo siteMesh使用文档

    sitemesh.jar包

    sitemesh.jar包 sitemesh.jar 包sitemesh.jar 包sitemesh.jar包

    Struts2整合SiteMesh技巧

    概述 Struts 2.0提供一个Sitemesh插件... 缺省情况下,sitemesh假定装饰器文件保存在应用上下文根路径下的decorators目录下,如果采用如上配置,装饰器文件应该是ftl格式,如果需要使用其他格式,需要更改过滤器配置。

    sitemesh-3.0.1-javadoc

    SiteMesh是一个网页布局和装饰框架以及Web应用程序集成框架,可帮助创建由页面组成的网站,这些页面需要一致的外观,导航和布局方案。 SiteMesh会拦截对通过Web服务器请求的任何静态或动态生成的HTML页面的请求,...

    sitemesh框架学习

    相信大家用过frame页面框架、iframe页面框架、include导入的方式都可以实现框架布局。但是这些方法out了,学习了sitemesh...所以sitemesh是你最好的选择,把源代码共享给大家并含有注释及路径地址;希望能帮助到大家。

    sitemesh-3.0.1.jar

    sitemesh 装饰页面技术.

    sitemesh-2.2.1.jar sitemesh-2.2.1.jar

    sitemesh-2.2.1.jar

    MiddleGen+Sitemesh.zip

    MiddleGen-Hibernate: 本书使用版本:2.1 ... modtime=1096973436&big_mirror=0 下载文件:middlegen-2.1.zip MiddleGenIDE插件: 本书使用版本:1.2.0 ...(7)Sitemesh: ...下载文件:sitemesh-2.3.zip

    sitemesh框架简单例子

    很简单的sitemesh入门教程,希望对大家有所帮助

    sitemesh jar包

    sitemesh jar包sitemesh jar包sitemesh jar包sitemesh jar包sitemesh jar包sitemesh jar包sitemesh jar包

    sitemesh-2.4.1.jar

    sitemesh-2.4.1.jar sitemesh-2.4.1.jar sitemesh-2.4.1.jar sitemesh-2.4.1.jar sitemesh-2.4.1.jar sitemesh-2.4.1.jar

    springMVC与sitemesh的结合

    springMVC与sitemesh的结合,

    SiteMesh教程.pdf

    SiteMesh教程.pdf

    JSP布局框架SiteMesh.zip

    SiteMesh 是一个网页布局和修饰的框架,利用它可以将网页的内容和页面结构分离,以达到页面结构共享的目的。Sitemesh是由一个基于Web页面布局、装饰以及与现存Web应用整合的框架。它能帮助我们在由大 量页面构成的...

    sitemesh入门demo

    sitemesh入门demo。博客 Sitemesh入门和使用笔记 对应源码

    spring-boot-sitemesh源码整合

    spring-boot-sitemesh 源码整合

    页面装饰器(sitemesh)实例源代码

    用sitemesh页面装饰器,将大名鼎鼎的开源即时通讯服务器openfire中运用的,布局页面抽取出来。MyEclipse中可以直接部署的代码。

    sitemesh 完美合集 4个资料和jar文件

    Sitemesh简介: SiteMesh是一个Web页面布局修饰框架, 用于构建包含大量页面, 需要一致的外观样式(look/fell), 导航和布局机制的大型网站. sitemesh应用Decorator模式,用filter截取request和response,把页面组件...

Global site tag (gtag.js) - Google Analytics