No components have been processed as "ajaxSingle"

A strange problem has been detected, possibly an error.

I have 2 identical web pages with Richfaces: suggestionbox.

On my first sentence, Box works well, everything works fine, but on the other I have some problems. SuggestionBox does not show my offers. In the logs, I have something like this:

WARNING: No component found to process as 'ajaxSingle' for clientId remains-form:konta-suggest 2010.1.9 12:02:29 org.ajax4jsf.component.AjaxViewRoot processPhase 

Any conclusions?

UPD:

  <h:inputText value="#{repobean.kont}" id="kont" label="Payer" style="width:230px;"/> <rich:suggestionbox onobjectchange="printObjectsSelected(#{rich:element('konta-id')}, #{rich:component('konta-suggest')}, 'id');" usingSuggestObjects="true" width="230" var="result" fetchValue="#{result.kont}" suggestionAction="#{kontabean.suggest}" id="konta-suggest" for="kont"> <h:column> <h:outputText value="#{result.kont}"/> </h:column> <h:column> <h:outputText value="#{result.kontName}"/> </h:column> </rich:suggestionbox> <h:inputHidden id="konta-id" value="#{repobean.kontId}" /> 

Javascript inside onobjectchange is a function that prints id to konta-id.

The jsp code on the second page is copied from the first page.

+7
java jsf richfaces
source share
4 answers

I know the question is 5 years old, but we had the same error (with different components)

In our case, we changed the external ui:repeat to a4j:repeat . After that, our components worked as expected.

+2
source share

What you can do when faced with Ajax issues is to add the <a4j:log> component:

 <a4j:log popup="false"/> 

This will create a window on your page with all the Ajax logs from Richfaces. In the end, you can set popup="true" and then display the popup on Ctrl + Shift + L

There are a lot of logs in this panel, but usually WARN or ERROR messages are important things.

Another concern about your error message: this is about some ajaxSingle handling. In JSF code, you don't have ajaxSingle attribute. When does this error occur? When will you start typing some characters into your inputText component?

+1
source share

Are there conditional rendering ( rendered="#{some expression}" ) around these input and sentence components? Or iteration?

Is the .suggest() action .suggest() place before this error?

Situations such as those described above occur when the component associated with the action (the caller) is in a conditional render (or iteration) that prevents the component from being created at the RestoreView stage. Then the action is not called at all, and the component identifier is not found in the component tree.

Example: if you have something like this:

 <h:panelGroup rendered="#{not empty myBean.valueSetInActionHandler}"> <h:commandLink id="action1" action="#{myBean.callOtherAction" value="appears after action"/> </h:panelGroup> <h:commandLink id="action2" action="#{myBean.setValueInActionHandler}" value="display button above"/> 

The first render - only one, the second button is displayed. If setValueInActionHandler sets a value and displays the same page, the first button ("appears after the action") will also be displayed. But when you click on it, callOtherAction will not work - because on the second request during RestorePhase, the value of InActionHandler is again empty, so action1 will not be available ...

Hope I managed to clear up :)

+1
source share

I think a4j taglib is missing from the page.

-2
source share

All Articles