【问题标题】:Issue re-rendering a <ui:include /> in Richfaces 4.0在 Richfaces 4.0 中重新渲染 <ui:include /> 的问题
【发布时间】:2011-10-08 10:12:33
【问题描述】:

我使用的是 Richfaces 4.0 final。我有一个页面,其中包含另一个使用

的 facelet
<ui:include src="#{bean.selectedPage}" />

String selectedPage 是在单击按钮时设置的。单击按钮时,页面将更改,并且使用“render”属性重新渲染围绕上述代码的面板。 facelet 有一个数据表。例如:

<rich:dataTable>
    <f:facet name="header">
        <rich:columnGroup>
            <rich:column>
                <h:outputText value="hello" />
            </rich:column>
        </rich:columnGroup>
    </f:facet>
</rich:dataTable>

不包括此数据表的 css。有人可以帮我解决这个问题吗?我已经添加了所有必需的罐子。以下是我的 web.xml 的 sn-p

<context-param>
    <param-name>org.richfaces.enableControlSkinning</param-name>
    <param-value>true</param-value>
</context-param>
<context-param>
    <param-name>org.richfaces.enableControlSkinningClasses</param-name>
    <param-value>false</param-value>
</context-param>
<context-param>
    <param-name>org.richfaces.skin</param-name>
    <param-value>blueSky</param-value>
</context-param>
<servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>*.html</url-pattern>
</servlet-mapping>

奇怪的部分是皮肤是为 等其他组件加载的。问题仅出现在数据表中。

【问题讨论】:

  • 所有流行的网络浏览器都会出现这种情况吗? (Firefox、Chrome、IE、Safari 等?)
  • 是的。我挖得更深,我发现了这个。如果我在单击按钮时更改页面,即如果我在 中更改 selectedPage,那么它会出现问题。如果我将 selectedPage 初始化为所需页面或对页面进行硬编码,例如 它可以工作。但是,如果我更改页面,它将无法正常工作。如何解决这个问题?

标签: datatable jsf-2 richfaces


【解决方案1】:

我以前遇到过这种情况。 AFAIK,richfaces 按需加载组件的 CSS。由于您的页面是动态加载的,Richfaces 永远不会加载 css,因为它永远不会知道。 (提到硬编码的页面名称,框架已经知道要渲染哪个组件的css,正如您在评论中提到的那样,它确实如此)。 我能找到的唯一解决方案是在您的父页面中包含rich:dataTable(即,您在其中包含带有&lt;ui:include&gt; 的这个facelet 的页面)并将其样式设置为display:none。这样框架就预先包含了rich:dataTable css。 我知道这不是一个完美的解决方案,但我找不到更好的解决方案!

【讨论】:

  • 我做过这样的事情。我把 放在 里面。这是一种解决方法,但它有效。
猜你喜欢
  • 2011-08-24
  • 2011-11-26
  • 2011-03-12
  • 1970-01-01
  • 2011-07-12
  • 2023-04-09
  • 2011-07-27
  • 2012-02-03
  • 1970-01-01
相关资源
最近更新 更多