2014-12-22 2 views
1

создать составной компонент в PrimeFaces 4.обновления primefaces составного компонента из себя

<composite:interface> 
    <composite:attribute name="title" required="true"/> 
    <composite:attribute name="widgetVar" required="true" /> 
    <composite:attribute name="controller" required="true" type="com.controller.AbstractController" /> 
</composite:interface> 
<composite:implementation> 
    <div id="#{cc.clientId}" style="width: 100%;"> 
     <p:dialog widgetVar="#{cc.attrs.widgetVar}" header="#{msgs[cc.attrs.title]}" width="500"> 
       <p:panelGrid styleClass="borderLessGrid" columns="1" id="mainPanel" style="width:100%;"> 
        <p:panel style="width: 100%; text-align: left; direction: ltr;" id="btnPanel"> 
         <ui:repeat value="#{cc.attrs.controller.commands}" var="command"> 
          <p:commandButton 
            value="#{command.value}" title="#{command.title}" 
            style="width: 50px;" 
            disabled="#{not command.enable}" actionListener="#{command.onClick}" 
            update="@this"/> 
         </ui:repeat> 
        </p:panel> 
        <p:panel style="width: 100%"> 
         <p:scrollPanel mode="native" style="width: 100%; height: 300px; border: none;"> 
          <p:tree value="#{cc.attrs.controller.rootNode}" var="node" id="tree" 
            selectionMode="single" 
            style="vertical-align:top; float:right; width: 95%; border: none;"> 
           <p:ajax event="select" 
             listener="#{cc.attrs.controller.onTreeItemSelect}" 
             update="#{cc.clientId}"/> 
           <p:treeNode id="treeNode" 
              expandedIcon="ui-icon-folder-open" 
              collapsedIcon="ui-icon-folder-collapsed"> 
            <p:outputLabel value="#{node}" id="lblNode"/> 
           </p:treeNode> 
          </p:tree> 
         </p:scrollPanel> 
        </p:panel> 
        <p:panel style="width: 100%"> 
         <p:scrollPanel mode="native" style="width: 100%; height: 100px; border: none;"> 
          <p:outputLabel /> 
         </p:scrollPanel> 
        </p:panel> 
       </p:panelGrid> 
     </p:dialog> 
    </div> 
</composite:implementation> 

Я, когда пользователь нажимает на элементе дерева он обновит все части моего компонента. Но когда я вхожу URL страницы в проводнике он дает мне следующую ошибку:

Не удается найти компонент с выражением «conditionCreator» ссылка от «conditionCreator: дерево»

У вас есть какое-либо решение для него.
Спасибо.

обновление: 2014-24-12
Я прочитал this link, но он не работает. Я не знаю, где проблема, но когда я использую это решение, он обновляет всю мою страницу.

ответ

0

Ops. Он был разрешен с помощью API-интерфейсов jQuery. Для получения дополнительной информации см. Следующую ссылку:
jQuery Selector API meets JSF

 Смежные вопросы

  • Нет связанных вопросов^_^