[richfaces-issues] [JBoss JIRA] Commented: (RF-10275) Provide sourceId in ClientBehaviorContext

Martin Kočí (JIRA) jira-events at lists.jboss.org
Mon Jan 24 14:36:49 EST 2011


    [ https://issues.jboss.org/browse/RF-10275?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12577579#comment-12577579 ] 

Martin Kočí commented on RF-10275:
----------------------------------

Hi, 
problem is not myfaces related, with morarra 2.0.3 and <rich:select id="richSelect">
  <f:ajax execute="@this"/>
</rich:select>

request really contains javax.faces.partial.execute = formId:richSelectInput.


> Actually, all events in the components are expected to happen in the context of root node.

Its very interesting. How RichFaces do that? If f:ajax client behavour is rendered with renderer from RI or Myfaces then renderer (should?) replace @this keyword with sourceId (or not? Andy Schwartz says it should). Then somewhere in html markup "execute: sourceId" must appear. Please notice that at http://javaserverfaces.java.net/nonav/docs/2.0/jsdocs/symbols/jsf.ajax.html is no mention about '@this' as parameter to javascript function jsf.ajax.request, specially it says that:

"If options.execute exists:

If the keyword @none ...
If the keyword @all ...
Otherwise, there are SPECIFIC identifiers that need to be sent. Create the post data argument with the name javax.faces.partial.execute and the value as a space delimited string of client identifiers. "

Please notice "SPECIFIC identifiers".

I'll be grateful  for any explanation - this area is little mystery for me. If we found a correct solution, I can fix it (if necessary) in myfaces.

> Provide sourceId in ClientBehaviorContext
> -----------------------------------------
>
>                 Key: RF-10275
>                 URL: https://issues.jboss.org/browse/RF-10275
>             Project: RichFaces
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: base functionality 
>    Affects Versions: 4.0.0.Milestone5
>         Environment: richfaces trunk svn rev. 21155, mojarra 2.0.3, myfaces trunk
>            Reporter: Martin Kočí
>            Assignee: Pavel Yaschenko
>             Fix For: 4.0.0.CR1
>
>         Attachments: RF-10275.patch
>
>
> Example:
> <rich:select id="richSelect">
>   <f:ajax />
> ...some selectItems
> </rich:select>
> f:ajax execute default value is @this. But http request contains (for this example) javax.faces.partial.execute = formId:richSelectInput (with 'Input' suffix) and thus component is not executed on server! This is a combination of bugs, one of them is in rich faces: RenderKitUtils.getAttributeAndBehaviorsValue does not provide sourceid for ClientBehaviorContext.
> For other informations see:
> http://www.mail-archive.com/dev@myfaces.apache.org/msg50884.html
> https://issues.apache.org/jira/browse/MYFACES-3018

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

       



More information about the richfaces-issues mailing list