[ https://issues.apache.org/jira/browse/ADFFACES-262?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Matthias Weßendorf updated ADFFACES-262: ---------------------------------------- Fix Version/s: 1.0.0-incubating-core Affects Version/s: 1.0.0-incubating-core > Active input text box not populated on dialog return > ---------------------------------------------------- > > Key: ADFFACES-262 > URL: https://issues.apache.org/jira/browse/ADFFACES-262 > Project: MyFaces ADF-Faces > Issue Type: Improvement > Affects Versions: 1.0.0-incubating-core > Environment: N/A > Reporter: Olivier Lafontaine > Priority: Minor > Fix For: 1.0.0-incubating-core > > Attachments: UIXCommandTemplate.patch > > > Objective is to populate an input text from a value entered/picked in a > dialog. There's two way to accomplish this, either by binding the input text > component in your bean (1) or by using having the input text value binded to > a bean property (2). Both works if the input text is disabled, however only > (1) can work if the input text is active. > To make (1) work with an active input text, you have to clear the submitted > value from the input text when the return listener is invoked. This technique > is documented on Oracle website > (http://www.oracle.com/technology/products/jdev/htdocs/partners/addins/exchange/jsf/doc/devguide/dialogs.html). > Since a value submitted by a disabled input text is ignored, technique (2) > works only for disabled inputs. > The reason behind the submitted value thing is because return events are > processed at the end of the "Apply Request Values" phase and > FacesContext#renderResponse() is called afterward, see > UIXCommand#broadcast(FacesEvent). > From my understanding of the framework, I believe it is incorrect to process > return events at the end of the "Apply Request Values" phase. When a dialog > is closed, the calling page is submitted to execute an action, the return > action. The return action is no different than a normal action so why process > it sooner? In fact, the return action should substitute to any other declared > actions for the command, aka normal actions should not be processed (this is > already implemented in the framework see > CommandLinkRenderer#decode(FacesContext, UIComponent)). > I have attached a patch to allow technique (2) to work even if input text is > not disabled. The patch modifies the UIXCommandTemplate file to handle a > return event the same way as an action event in the queueEvent(FacesEvent) > method. > Note that if the command is marked as immediate (="true") to bypass > validation (of required fields for example), then you either have to mark the > input text as immediate too or use technique (1). -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.