2015-03-29 5 views
-1

У меня есть страница с четырьмя частями (заголовок, меню, содержание и нижний колонтитул); Для этого я использовал ui:include. В части содержимого есть inputText и commandButton (submit). Когда я нажимаю кнопку отправки, введенное значение inputText не передается компоненту. Я не могу выполнить свою функцию с нулевым значением (входным текстовым значением).Компонент Facelet ui: состав не передается значение управляемому компоненту

Главная страница:

<h:body > 

    <p:poll interval="1" /> 
    <div 
     style="background-color: #E6E6FA;border-width: 1px; border-color: blue; border-style: solid;"> 
     <ui:insert name="header"> 
      <ui:include src="header.xhtml" /> 
     </ui:insert> 
    </div> 
    <br /> 
    <div 
     style="background-color: #E6E6FA; border-width: 1px; border-color: blue; border-style: solid;"> 
     <ui:insert name="menubar"> 
      <ui:include src="menubar.xhtml" /> 
     </ui:insert> 
    </div> 
    <br /> 
    <div 
     style="background-color: #E6E6FA;border-width: 1px; border-color: blue; border-style: solid; border-width: 1px; min-height: 700px;"> 

     <ui:insert name="content" id="mainpage"> 

      <ui:include src="#{menuBarBean.menuBarDTO.page}.xhtml" ajax="true"/> 
     </ui:insert> 
    </div> 
    <br /> 
    <div 
     style="background-color: #E6E6FA;border-width: 1px; border-color: blue; border-style: solid;"> 
     <ui:insert name="footer"> 
      <ui:include src="footer.xhtml" /> 
     </ui:insert> 
    </div> 

</h:body> 
</html> 

Содержимое страницы:

<body bgcolor="E6E6FA"> 
<ui:composition>    
     <h:panelGrid id="panel" columns="2" border="1" cellpadding="10" 
      cellspacing="1"> 
      <f:facet name="header"> 
       <h:outputText value="Adding Project" /> 
      </f:facet> 
      <h:outputLabel value="ProjectName" /> 
      <p:inputText id="emailId" 
       value="#{addProjectBean.addProjectDTO.projectName}" required="true" 
       validatorMessage="input needed"> 
      </p:inputText> 
      <h:commandButton action="#{addProjectBean.addNewProject}" 
       value="Submit" ajax="false" /> 
      <h:commandButton value="#{msg['prometheus_reset']}" 
       style="margin-right:20px;"> 
       <p:ajax update="panel" resetValues="true" /> 
      </h:commandButton> 
     </h:panelGrid> 
     <h:outputLabel name="loginCheck" 
      value="#{loginBean.loginDTO.message}" style="color:red">  
     </h:outputLabel> 
    </ui:composition> 
    </body> 
+0

Я предлагаю сделать шаг назад и изучить базовый HTML прежде, чем погрузиться в JSF. – BalusC

ответ

-1

Вместо Аякса = "истина" Использование Ajax = "ложь" в Ui: состав.

<ui:include src="#{menuBarBean.menuBarDTO.page}.xhtml" ajax="true"/> 

Обновлено

<ui:include src="#{menuBarBean.menuBarDTO.page}.xhtml" ajax="false"/> 

значение переходит к управляемому компоненту и все работает отлично.