我有一个h:selectOneMenu
和一个a4j:commandButton
,后者重新包含一个名为content的组件,如下所示:
<rich:panel id="content">
<a4j:include viewId="#{MyBacking.viewId}" />
</rich:panel>
当呈现响应并且组件加载新JSP页面的内容时,该页面中包含的选项卡使用的皮肤与应用程序的其余部分不同(我认为默认为蓝色)。
我注意到在加载包含的代码之后,如果我点击刷新,虽然这会导致bean重新发布页面内容,但皮肤已正确分配。
我的网页xml说:
<context-param>
<param-name>org.richfaces.SKIN</param-name>
<param-value>glassX</param-value>
</context-param>
<context-param>
<param-name>org.richfaces.CONTROL_SKINNING</param-name>
<param-value>enable</param-value>
</context-param>
<context-param>
<param-name>org.richfaces.CONTROL_SKINNING_CLASSES</param-name>
<param-value>enable</param-value>
</context-param>
这是效果,因为此时RichFaces在某种程度上无法控制标签的呈现吗?
如何确保标签符合皮肤?所有的文件都与覆盖皮肤有关,我宁愿不必覆盖它应该已有的皮肤和皮肤。
由于
答案 0 :(得分:1)
我不确定它是否能解决您的问题,但您可以尝试通过设置特定的web.xml参数来强制Richfaces避免使用默认外观:
<context-param>
<param-name>org.richfaces.LoadStyleStrategy</param-name>
<param-value>ALL</param-value>
</context-param>
您可以找到有关此媒体资源的更多详情here。
已修改,以设置正确的 param-value
,如评论中所述。
答案 1 :(得分:0)
我刚刚注意到我已经包含了一个styleClass参数 - 因为现在包含的jsp无法访问css facet引用。