[jbossseam-issues] [JBoss JIRA] Commented: (JBSEAM-1832) Use of <a:support> tag breaks conversation in Seam-gen (and elsewhere)

Charl Fourie (JIRA) jira-events at lists.jboss.org
Wed Aug 29 03:49:18 EDT 2007


    [ http://jira.jboss.com/jira/browse/JBSEAM-1832?page=comments#action_12374368 ] 
            
Charl Fourie commented on JBSEAM-1832:
--------------------------------------

I am getting the same issue on Seam 1.2.1.GA.  It happens regularly during normal operation, but I can simulate it by holding in the tab key for 2-3 seconds (quickly tabbing between fields) and then immediately clicking the submit button.  To try and work around it, I have changed my a:support tags from...

<a:support event="onblur" reRender="learningGradeDecoration"> 

... to ...

<a:support event="onblur" bypassUpdates="true" ignoreDupResponses="true" reRender="learningGradeDecoration">        
  <s:conversationId/> 
</a:support>

This did not work.  In the process I discovered another issue though.  When tabbing through the input fields quite quickly, sometimes the following exception is thown:


09:39:08,203 ERROR [ExceptionFilter] exception root cause
java.lang.IllegalArgumentException: Value binding '#{examPeriodCrud.item.allowedExamMonths}'of UISelectItems with component-path {Component-Path : [Class: org.ajax4jsf.framework.ajax.AjaxViewRoot,ViewId: /restricted/exam_periods/beginAdd.xhtml][Class: org.jboss.seam.ui.UIDecorate,Id: _id84][Class: javax.faces.component.html.HtmlForm,Id: form][Class: org.jboss.seam.ui.UIDecorate,Id: examMonthDecoration][Class: org.jboss.seam.ui.UIValidateAll,Id: _id130][Class: javax.faces.component.html.HtmlSelectOneMenu,Id: examMonth][Class: org.jboss.seam.ui.UISelectItems,Id: _id131]} does not reference an Object of type SelectItem, SelectItem[], Collection or Map but of type : null
	at org.apache.myfaces.shared_impl.util.SelectItemsIterator.hasNext(SelectItemsIterator.java:141)
	at org.apache.myfaces.shared_impl.renderkit.RendererUtils.internalGetSelectItemList(RendererUtils.java:477)
	at org.apache.myfaces.shared_impl.renderkit.RendererUtils.getSelectItemList(RendererUtils.java:453)
	at org.apache.myfaces.shared_impl.renderkit.html.HtmlRendererUtils.internalRenderSelect(HtmlRendererUtils.java:278)
	at org.apache.myfaces.shared_impl.renderkit.html.HtmlRendererUtils.renderMenu(HtmlRendererUtils.java:252)
	at org.apache.myfaces.shared_impl.renderkit.html.HtmlMenuRendererBase.encodeEnd(HtmlMenuRendererBase.java:54)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:536)
	at org.jboss.seam.ui.JSF.renderChild(JSF.java:180)
	at org.jboss.seam.ui.JSF.renderChildren(JSF.java:162)
	at org.jboss.seam.ui.JSF.renderChild(JSF.java:178)
	at org.jboss.seam.ui.JSF.renderChildren(JSF.java:162)
	at org.jboss.seam.ui.UIDecorate.encodeChildren(UIDecorate.java:234)
	at org.ajax4jsf.framework.renderer.RendererBase.renderChild(RendererBase.java:282)
	at org.ajax4jsf.framework.renderer.AjaxChildrenRenderer.encodeAjaxComponent(AjaxChildrenRenderer.java:159)
	at org.ajax4jsf.framework.renderer.AjaxChildrenRenderer.encodeAjaxChildren(AjaxChildrenRenderer.java:97)
	at org.ajax4jsf.framework.renderer.AjaxChildrenRenderer.encodeAjaxComponent(AjaxChildrenRenderer.java:150)
	at org.ajax4jsf.framework.renderer.AjaxChildrenRenderer.encodeAjaxChildren(AjaxChildrenRenderer.java:97)
	at org.ajax4jsf.framework.renderer.AjaxChildrenRenderer.encodeAjaxComponent(AjaxChildrenRenderer.java:150)
	at org.ajax4jsf.framework.renderer.AjaxChildrenRenderer.encodeAjaxChildren(AjaxChildrenRenderer.java:97)
	at org.ajax4jsf.framework.renderer.AjaxChildrenRenderer.encodeAjaxComponent(AjaxChildrenRenderer.java:150)
	at org.ajax4jsf.framework.renderer.AjaxContainerRenderer.encodeAjax(AjaxContainerRenderer.java:125)

Please! does anybody have any workaround for this issue other then not using AJAX validations???  

> Use of <a:support> tag breaks conversation in Seam-gen (and elsewhere)
> ----------------------------------------------------------------------
>
>                 Key: JBSEAM-1832
>                 URL: http://jira.jboss.com/jira/browse/JBSEAM-1832
>             Project: JBoss Seam
>          Issue Type: Bug
>          Components: JSF
>    Affects Versions: 2.0.0.BETA1
>         Environment: Jboss 4.2.0.GA
>            Reporter: Vincent Latombe
>         Assigned To: Pete Muir
>             Fix For: 2.0.0.CR1
>
>
> I've seen the problem from BETA1 to HEAD
> To reproduce the bug, try the following :
> Create some seam-gen based project and generate-entities.
> Go to an edit page, fill some data, and click on the submit button, without clicking elsewhere (the focus must be on an edited field just before submit). Instead of validation error, or adding the new data, you should get the "The conversation ended, timed out or was processing another request" message. It seems that the validation triggered by the onblur event messes up with the validation.
> I have also seen the bug occuring while I was switching from one field to another quite fast (fast enough to have many validation on queue in ajax4jsf). It seems that adding <s:conversationId/> to the a:support solves this part.
> Here is the snippet I currently use
> <a:support event="onblur" bypassUpdates="true" reRender="cityCodeDecoration">
>   <s:conversationId/>
> </a:support>
> I tried to upgrade ajax4jsf + richfaces 3.0.1 to richfaces 3.1.0 rc2, but it didn't change anything.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the seam-issues mailing list