[richfaces-issues] [JBoss JIRA] Updated: (RF-7527) h:inputText that has rich:suggestionBox practically cannot be combined with a4j:support event="onBlur" because of 2 annoying problems
Konstantin Spirov (JIRA)
jira-events at lists.jboss.org
Wed Jul 15 10:33:29 EDT 2009
[ https://jira.jboss.org/jira/browse/RF-7527?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Konstantin Spirov updated RF-7527:
----------------------------------
Workaround Description:
Workaround for problem 1 from user's perspective):
Add in rich:suggesstionBox
<a:support event="onselect" reRender="yyy"
ajaxSingle="true">
<f:setPropertyActionListener value="#{result.our_column}"
target="#{backingBean.our_attribute}"/>
</a:support>
The data will flash on the screen, but will be at least recovered in a while. Additional ajax request is made :-( .
Workaround for problem 2 (from user's perspective):
Surround all code (h:inputText & rich:suggestionbox) with <a4j:outputPanel id="yyy">
Change in a4j:support reRender="xxx" to reRender="yyy"
This workaround is not satisfying, because now you get other problem - Scenario 2 for https://jira.jboss.org/jira/browse/RF-7526 which is nasty and not
always repeatable.
was:
Workaround for problem 2 1 from user's perspective):
Add in rich:suggesstionBox
<a:support event="onselect" reRender="yyy"
ajaxSingle="true">
<f:setPropertyActionListener value="#{result.our_column}"
target="#{backingBean.our_attribute}"/>
</a:support>
The data will flash on the screen, but will be at least recovered in a while. Additional ajax request is made :-( .
Workaround for problem 2 (from user's perspective):
Surround all code (h:inputText & rich:suggestionbox) with <a4j:outputPanel id="yyy">
Change in a4j:support reRender="xxx" to reRender="yyy"
This workaround is not satisfying, because now you get other problem - Scenario 2 for https://jira.jboss.org/jira/browse/RF-7526 which is nasty and not
always repeatable.
> h:inputText that has rich:suggestionBox practically cannot be combined with a4j:support event="onBlur" because of 2 annoying problems
> -------------------------------------------------------------------------------------------------------------------------------------
>
> Key: RF-7527
> URL: https://jira.jboss.org/jira/browse/RF-7527
> Project: RichFaces
> Issue Type: Bug
> Components: component-input
> Affects Versions: 3.3.1
> Environment: The scenario is for Firefox 3.5 and Opera 9.1, RichFaces >= 3.1
> Reporter: Konstantin Spirov
> Attachments: test.xhtml
>
>
> There are 2 problems mentioned here, but I am combining them in one report, because the test scenario I will provide is the same. The workarounds I am providing are not satisfying.
> The two these problems are in construction like:
> <h:inputText style="margin:0px;" id="xxx" value="xxx">
> <a4j:support event="onblur" reRender="xxx" bypassUpdates="true" ajaxSingle="true"/>
> </h:inputText>
> <rich:suggestionbox for="xxx">
> The approach is a4j:support rerender=xxx is *very standard* (see seam-gen for examples), and it is practically necessary if we want to modify automatically from the server the field after it is changed.
> Problem 1: Display suggestion list and click on some suggestion (with the mouse). The value will be updated for a while, then *the old content* is recovered (incorrectly ). We have again empty field, which is very annoying. PLEASE notice that if you had used arrows and tab from the keyboard, everything would work correctly - so there is a solution, but it doesn't work when the user clicks with the mouse (our users usually click with the mouse, don't use keyboard :-)
> Problem 2: JavaScript error if you try to display the suggestion again (see your browser console). The suggestionbox stops working until you reload the page.
> Exact steps to reproduce quickly test platform (I am sending an attachment just for refference - it is similar)
> 1) Take from Richfaces showcase RichInput:SuggestionBox:ObjectsUsageExample
> 2) Add value="#{bean.attribute} to <h:inputText (create the "bean" in the most quick and easy for you way, in my platform it is seam component in conversation scope)
> 3) Inside <h:form> wrap with <a4j:queue> (probably not necessary, but let's not risk the repeatability of the scenario)
> 4) From rich:suggestionBox remove:
> usingSuggestObjects=...
> onobjectchange=...
> 5) Add in h:inputText <a4j:support event="onblur" reRender="statesinput" bypassUpdates="true" ajaxSingle="true"/>
> You will see that the last step line makes everything unusable :-(
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the richfaces-issues
mailing list