JSF素面和引导面

JSF素面和引导面,jsf,primefaces,bootsfaces,Jsf,Primefaces,Bootsfaces,我有个问题 我正在制作一个带有PrimeFaces布局的网站,当我点击左边的任何菜单项时,它会在中间加载一个页面,但是当我使用BootsFaces的主题时(,页面加载在中心,但它不是另一个加载,当我不使用主题时,一切正常,但面板以纯文本显示,没有样式外观=例如“成功” <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht

我有个问题

我正在制作一个带有PrimeFaces布局的网站,当我点击左边的任何菜单项时,它会在中间加载一个页面,但是当我使用BootsFaces的主题时(
,页面加载在中心,但它不是另一个加载,当我不使用主题时,一切正常,但面板以纯文本显示,没有样式外观=例如“成功”

<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:bnu="http://bootsfaces.net/ui">
    <h:head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <title>My Page</title>
    </h:head>
    <h:body>
        <p:layout fullPage="true">

            <p:layoutUnit position="north" size="100" resizable="false" closable="false" collapsible="false" >
                <h1>PAGE</h1>

            </p:layoutUnit>


            <p:layoutUnit position="west" size="195" header="Panel" resizable="true" closable="false" collapsible="true" >
                <h:form id="form" >

                    <p:menu>
                        <p:menuitem id="abc" value="Inicio" action="#{bean.page0()}" update=":content:pcenter" />
                        <p:submenu label="ABC" >
                            <p:menuitem id="X1" value="CC1" action="#{bean.page1()}" update=":content:pcenter"/>
                            <p:menuitem id="X2" value="CC2" action="#{bean.page2()}" update=":content:pcenter"/>
                            <p:menuitem id="X3" value="CC3" action="#{bean.page3()}" update=":content:pcenter"/>
                        </p:submenu>
                    </p:menu>

                </h:form>
            </p:layoutUnit>

            <p:layoutUnit position="center" header="Welcome user" >
                <h:form id="content">
                    <p:panel id="pcenter">
                        <ui:include src="#{bean.page}.xhtml" />
                    </p:panel>
                 </h:form>
            </p:layoutUnit>

            <p:layoutUnit position="south" size="100" header="Bottom" resizable="false" closable="false" collapsible="false">
                <h:outputText value="South unit content." />
            </p:layoutUnit>

        </p:layout>         
    </h:body>
</html>

我的页面
页
我尝试了这个,但没有显示样式look=“success”,而是显示标题

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://xmlns.jcp.org/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:bnu="http://bootsfaces.net/ui"
      xmlns:f="http://xmlns.jcp.org/jsf/core">

    <bnu:panel id="pdata" title="User data" collapsible="true" look="success">
           <p:outputLabel value="Name" for="txt_name"/>
                <p:inputText id="txt_name" label="Name" required="true">
                </p:inputText>
    </bnu:panel>
</html>

我试试这个,同样的

<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:h="http://java.sun.com/jsf/html"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:p="http://primefaces.org/ui"
    xmlns:ui="http://java.sun.com/jsf/facelets">

    <bnu:panel id="pdata" title="User data" collapsible="true" look="success">
           <p:outputLabel value="Name" for="txt_name"/>
                <p:inputText id="txt_name" label="Name" required="true">
                </p:inputText>
    </bnu:panel>
</ui:composition>

并尝试此操作,但工作后不加载页面中心时,单击左菜单的元素

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://xmlns.jcp.org/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:bnu="http://bootsfaces.net/ui"
      xmlns:f="http://xmlns.jcp.org/jsf/core">

   <head>
   </head>
    <bnu:panel id="pdata" title="User data" collapsible="true" look="success">
           <p:outputLabel value="Name" for="txt_name"/>
                <p:inputText id="txt_name" label="Name" required="true">
                </p:inputText>
    </bnu:panel>
</html>

事实上,这三个版本中的每一个都能正常工作。我已经基于您的XHTML页面创建了一个项目,它运行得非常完美。无论是否使用PrimeFaces引导主题。所以我最好的猜测是您的项目设置有问题

我建议您查看我的示例,并尝试找出与您的项目的区别


“页面加载在中间,但不是另一个加载”嗯?你想说什么?我想应该是“默认页面片段显示在中间,但当我单击其中一个菜单项时,中央面板不会用新页面片段更新".BTW,我在反向生成bean时遇到了一些麻烦。您介意下次添加它吗?再加上web.xml、faces-config.xml和pom.xml?这使得重现您的问题变得更加容易。正如我在回答中所写的,我怀疑错误隐藏在后三个文件中的一个文件中。问题标题很尴尬,它可能适合任何其他问题a关于JSF、PrimeFaces和BootsFaces,所以我想更新它,只说具体的问题,就像其他所有好的问题标题一样,但到目前为止我仍然不理解具体的问题。