Deployment 静态xhtml文件的热重新发布/部署问题

Deployment 静态xhtml文件的热重新发布/部署问题,deployment,tomcat5.5,jsf-1.2,Deployment,Tomcat5.5,Jsf 1.2,我注意到在以下环境中操作JSF页面的“热部署”有很多问题: Eclipse Indigo(最新版本) Tomcat 5.5 JSF1.2 Facelets视图处理程序 我注意到,如果我修改一个已经呈现的xhtml页面(例如元素的CSS样式),然后重新发布(通过Eclipse或在Tomcat中手动复制xhtml文件)这个页面(维护servlet容器),它不会显示当前的更改 我还在web应用程序上设置以下配置也是徒劳的: <Context docBase="mywebapp"

我注意到在以下环境中操作JSF页面的“热部署”有很多问题:

  • Eclipse Indigo(最新版本)
  • Tomcat 5.5
  • JSF1.2
  • Facelets视图处理程序
  • 我注意到,如果我修改一个已经呈现的xhtml页面(例如元素的CSS样式),然后重新发布(通过Eclipse或在Tomcat中手动复制xhtml文件)这个页面(维护servlet容器),它不会显示当前的更改

    我还在web应用程序上设置以下配置也是徒劳的:

    <Context 
        docBase="mywebapp" 
        path="/mywebapp" 
        reloadable="true" 
        cachingAllowed="false">
    
    
    
    我的最后一个想法是,典型JSF页面处理的恢复视图阶段不会检查客户机视图(当然是xhtml页面)是否与上次加载到FacesContext中时发生了更改

    如果是这样,如何强制为每个提交的请求构建新的UIViewRoot对象

    对于jsf页面中的每一个更改,我都会重新启动tomcat服务器,这让我非常沮丧


    非常感谢您的支持。

    尝试将以下内容添加到web.xml配置文件中:

      <context-param>
          <param-name>facelets.DEVELOPMENT</param-name>
          <param-value>true</param-value>
      </context-param>
      <context-param>
          <param-name>facelets.REFRESH_PERIOD</param-name>
          <param-value>1</param-value>
      </context-param>
    
    
    facelets.DEVELOPMENT
    真的
    facelets.REFRESH\u周期
    1.
    
    它告诉JSF重新呈现Facelet。看我怎么写“1”。在Prod环境中,您将始终放置“-1”以禁用此功能,因为在Prod环境中facelets不应更改

    您还需要确保可以热部署类和JSP资源。您可以在此处找到如何执行此操作:


    非常好,谢谢-有没有想过如何有条件地设置它,而不是将其硬编码为web.xml?(即,如果服务器是本地主机)???