2016-02-03 7 views
0

Я работаю над переходом richfaces с 3.3 до 4.2. Я застрял в замене богатого: tagionbox тега с rich: тег автозаполнения.Замените код для rich: предложение с богатым: autocomplete

RichFaces 3,3 код,

<rich:suggestionbox for="officerSrch" minChars="2" nothingLabel="No managers found" 
           suggestionAction="#{batchProcessor.searchOfficers}" fetchValue="" 
           var="o" eventsQueue="officerQueue" 
           height="270" width="480"> 
        <a4j:support event="onselect" action="#{accountLookupAction.add(o)}" reRender="params"/>      
        <h:column> 
         <f:facet name="header"> 
          <h:outputText value="Employee ID"/> 
         </f:facet> 
         <h:outputText value="#{o.employeeId}"/> 
        </h:column> 
        <h:column> 
         <f:facet name="header"> 
          <h:outputText value="First Name"/> 
         </f:facet> 
         <h:outputText value="#{o.firstName}"/> 
        </h:column> 
        <h:column> 
         <f:facet name="header"> 
          <h:outputText value="Last Name"/> 
         </f:facet> 
         <h:outputText value="#{o.lastName}"/> 
        </h:column> 
       </rich:suggestionbox> 

Может кто-нибудь, пожалуйста, руководство меня, чтобы преобразовать код выше в RichFaces 4?

ответ

0

Richfaces 4.2.0 Final version rich: автозаполнение не работает должным образом. В соответствии с предложением разработчика Jboss я обновил версию с 4.2.0.Final до 4.5.13.Final.

Вы можете сослаться на следующую ссылку, https://developer.jboss.org/thread/267610

Я нашел решение этой проблемы. Это поможет решить проблему, стоящую перед тем же вопросом. Здесь решение у,

<rich:autocomplete mode="cachedAjax" minChars="2" autofill="false" selectFirst="false" 
        autocompleteMethod="#{batchProcessor.searchOfficers}" id="officerSrch" layout="table" fetchValue="#{o.employeeId}" 
        value="#{accountLookupAction.empId}" var="o" eventsQueue="officerQueue" height="270" width="480"> 
        <h:column> 
         <f:facet name="header"> 
          <h:outputText value="Employee ID"/> 
         </f:facet>    
         <h:outputText value="#{o.employeeId}"/> 
        </h:column> 
        <h:column> 
         <f:facet name="header"> 
          <h:outputText value="First Name"/> 
         </f:facet> 
         <h:outputText value="#{o.firstName}"/> 
        </h:column> 
        <h:column> 
         <f:facet name="header"> 
          <h:outputText value="Last Name"/> 
         </f:facet> 
         <h:outputText value="#{o.lastName}"/> 
        </h:column> 
        <a4j:ajax event="selectitem" listener="#{accountLookupAction.addOfficer()}" render="params"/> 
       </rich:autocomplete> 
  1. Значение заголовка не поддерживается в богатых: aotocomplete.
  2. атрибут fetchValue не может быть пустым, вы должны назначить значение, которое вы использовали в классе действий.
  3. Вы не можете назначить или передать какой-либо объект через rich: autocomplete. В настоящее время он поддерживает только значение String.