JSF Primefaces和Bootsfaces

时间:2015-09-16 04:26:58

标签: jsf primefaces bootsfaces

我有一个问题。

我正在建立一个PrimeFaces布局的网站,当我点击左边的任何菜单项时,它会在中心加载一个页面,但是当我使用BootsFaces的主题(<bnu: panel ....> </bnu: panel>时,页面加载在中心,但它不是另一个负载,当我不使用主题,一切正常,但面板显示为纯文本没有样式look =“成功”例如。

<?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>

1 个答案:

答案 0 :(得分:2)

实际上,这三个版本中的每一个都有效。我已经基于您的XHTML页面创建了一个项目,并且运行完美。有和没有PrimeFaces Bootstrap主题。所以我最好的猜测是您的项目设置存在问题。

我建议您查看https://github.com/stephanrauh/BootsFaces-Examples/tree/master/PrimeFacesLayout中的示例,然后尝试找出项目的不同之处。

enter image description here